Напишите программу,которая считает сумму цифр введенного числа (паскаль) programи fr; var a, sum: integer; begin writeln ('введите число'); readln (a); while a< > 0 do begin sum: =sum+(a mod 10); a: =a div 10; end; writeln ('сумма цифр ',sum); end. почему используется вот такая запись ( что это значит ) - sum: =sum+(a mod 10) можно ли написать эту программу как то через другой цикл? ( если да,то напишите его) заранее
можно по другому : сделать а типа string и, проходя по строке, прибавлять к сумме каждый символ строки (переведенный в цифру)
var a,s:integer;
begin
write ('Введите число: ');
readln(a);
repeat
s:=s+a mod 10;
a:=a div 10
until a=0;
write ('Сумма цифр: ',s);
end.
a mod 10 - эта операция определяет последнюю цифру числа (остаток от деления на 10)
первоначально sum равно 0
sum:=sum+(a mod 10) - накапливаем сумму всех цифр поочерёдно