uses
SysUtils;
var
num: String;
sum, mult, i: Integer;
begin
sum := 0;
mult := 1;
ReadLn(num);
for i := 1 to Length(num) do
sum := sum + StrToInt(num[i]);
mult := mult * StrToInt(num[i]);
end;
WriteLn('Сумма - ', sum);
WriteLn('Произведение - ', mult)
end.
Решение, который дал другой пользователь, слишком сложное. Я могу предложить альтернативный вариант, который будет гораздо проще в понимании.
Var a,s,s1:integer;
Begin
write('Введите число -> ');
readln(a);
s1:=1;
while a>0 do
s:=s+(a mod 10);
s1:=s1*(a mod 10);
a:=a div 10;
writeln('Сумма цифр числа равна -> ',s);
writeln('Произведение цифр числа равно -> ',s1);
End.
uses
SysUtils;
var
num: String;
sum, mult, i: Integer;
begin
sum := 0;
mult := 1;
ReadLn(num);
for i := 1 to Length(num) do
begin
sum := sum + StrToInt(num[i]);
mult := mult * StrToInt(num[i]);
end;
WriteLn('Сумма - ', sum);
WriteLn('Произведение - ', mult)
end.
Решение, который дал другой пользователь, слишком сложное. Я могу предложить альтернативный вариант, который будет гораздо проще в понимании.
Var a,s,s1:integer;
Begin
write('Введите число -> ');
readln(a);
s1:=1;
while a>0 do
begin
s:=s+(a mod 10);
s1:=s1*(a mod 10);
a:=a div 10;
end;
writeln('Сумма цифр числа равна -> ',s);
writeln('Произведение цифр числа равно -> ',s1);
End.