Необходимо реализовать процедуру Sum(K,C,S), находящую количество C цифр целого положительного числа K, а также их сумму S. С помощью этой процедуры найти количество и сумму цифр для каждого из пяти данных целых чисел.
Формат входных данных
С клавиатуры вводятся через пробел 5 целых чисел Ki, 0≤Ki≤109.
Формат выходных данных
Необходимо вывести в отдельной строка для каждого из чисел 2 числа через пробел — количество и сумму цифр.
Примеры
входные данные выходные данные
31 1 294 0 1241
2 4
1 1
3 15
1 0
4 8
Ответы на вопрос
Ответил DexelGamer
0
Алгоритм решения
Для каждого из пяти чисел:
Пока число больше нуля, увеличиваем счётчик количества цифр на 1 и прибавляем последнюю цифру к счётчику суммы.
Необходимо учесть, что для K=0 количество цифр C=1.
Код (Pascal)
var
x, i, anc, ans: integer;
procedure Sum(k: integer; var c, s: integer);
begin
c := 0;
if k = 0 then c := 1;
s := 0;
while (k > 0) do
begin
c := c + 1;
s := s + (k mod 10);
k := k div 10;
end
end;
begin
for i := 1 to 5 do
begin
read(x);
Sum(x, anc, ans);
writeln(anc, ' ', ans);
end;
end.
-------------------------------------------------
Файл решения прикреплён.
Приложения:
Новые вопросы