Описать процедуру SumDigit(N,S), находящую сумму цифр S целого числа N (99>=N>=10) (N — входной, S — выходной параметр). Используя эту процедуру, найти суммы цифр пяти данных чисел

code: #pascal
uses Crt; 
var NUM:integer; 
     Recieve:Char; 
 
function SumDigit(N:integer):integer; 
var Sum:integer; 
begin 
  Sum:=0; 
  while N > 0 do 
   begin 
    Sum:=Sum+(N mod 10); 
    N:=N div 10; 
   end; 
  Sum:=Sum+N; 
  SumDigit:=Sum; 
end; 
 
begin 
  repeat 
   repeat 
    ClrScr; 
    Write('Vvedite chislo: '); 
    ReadLn(NUM); 
    if not (NUM in [10..99]) then 
     begin 
      WriteLn('Chislo NE vhodit v zadannyi diapazon [10..99]!'); 
      ReadKey; 
     end; 
   until NUM in [10..99]; 
   WriteLn('Summa cifr chisla ',NUM,': ',SumDigit(NUM)); 
   WriteLn; 
   Write('Zavershit programmu? [y/n] '); 
   Recieve:=UpCase(ReadKey); 
  until Recieve='Y'; 
end. 

автор: delpas

Поделиться:

Похожие статьи: