Wątek przeniesiony 2014-09-14 23:57 z Delphi i Pascal przez furious programming.

Program zliczający sumę cyfr w Pascalu

0

Napisz (w języku Pascal ) kompletną funkcję SC o wyniku typu byte, dla która dla jednego argumentu WE typu word - przekazywanego przez wartość - wyznaczy sumę cyfr jego reprezentacji dziesiętnej.

Nie wiem za bardzo jak sie za to zabrać,
Kod:

program egzam;
uses crt;

procedure SC(WE:word):byte;
begin
     var n:integer;
     n:=n+WE;
     write(n);
end.

Napisałem coś takiego ale chyba nie o to chodzi. Proszę o pomoc

dodanie znacznika <code class="pascal"> - furious programming

1

Poczytaj o MODULO, FUNKCJACH (procedura nic nie zwraca a wyraźnie masz napisane "wynik typu byte") i w ogóle jakieś podstawy łyknij.

program simple1;
uses crt;

var
	wej : word;

function SC(we : word) : byte;
var
	sum : byte;
BEGIN
	sum := 0;
	while (we div 10) <> 0 do
	BEGIN
		sum := sum + (we mod 10);
		we := we div 10;
	END;
	sum := sum + we;
	SC := sum;
END;

BEGIN
	clrscr;
	writeln('Suma cyfr liczby 4564 wynosi: ', SC(4564));
	readln;
END.
0

pomożesz mi jeszcze z pytaniami ? zdjęcie w załączniku

Wydaje mi sie ze
1 nie nie wiem dlaczego
2 nie bo wynosi 1
3 tak bo nie da sie tak wypisać tablicy
4 nie, tutaj trzeba chyba zmienić na dwojkowy i dopiero dodać i zmienić z powrotem na dziesiętny i wychodz wtedy 19
5 nie wiem

0
  1. Tak.
  2. Masz rację.
  3. masz rację.

Na resztę odpowiedz używając tego linku: http://lmgtfy.com/?q=pascal+kurs

A tak przy okazji zły dział...

3

Proponuje też zapoznanie się z wersją minimalistyczną:

{$mode objfpc}
 
function SC(we:Word):Byte;
var dv:Word;
begin
  Result:=0;
  while we>0 do
  begin
    dv:=we div 10;
    Inc(Result,we-10*dv);
    we:=dv;
  end;
end;
 
begin
  writeln('Suma cyfr liczby 12345 wynosi: ',SC(12345));
end.

http://ideone.com/fork/nAlPzF

0

Za dużo alko poszło na zlocie TheCompany i teraz czekając na pociąg wpadłem na forum zobaczyć czy byliście grzeczni. I widzę, że niektórzy do tej pory jak autor wątku nie zainstalowali TBrain. Owszem można zrobić jak Dragon rzecze. Ale zamiast smarować wątek na forum, wystarczyło wygooglować sobie przykładowe kody w Pascalu na rekurencyjnie liczenie silni. I podmienić mnożenie na sumę. Czasem najprostsze metody uzyskania wyniku jeśli sami nie wiemy jak to zrobić, są najlepsze.

1 użytkowników online, w tym zalogowanych: 0, gości: 1