Задача 7 Урок 22
Primary tabs
Задача 7 Урок 22 Дано натуральное число N. Вычислите сумму его цифр.
(При решении этой задачи нельзя использовать строки, списки, массивы (ну и циклы, разумеется). Разрешена только рекурсия и целочисленная арифметика. Используйте операцию получения остатка от деления, и операцию целочисленного деления).
var N,L, sum :integer; function output(N :integer;var sum :integer) :integer; var i, a :integer; begin if N > 0 then // если число больще нуля begin a := N mod 10; // отделяем последнюю цифру с помощью mod sum := sum + a; // прибавляем sum и отделённое число и пишем её в sum output(N div 10, sum); // рекурсивно идём в функцию без последней цифры с помощью div end; output := sum; end; begin writeln('enter the number'); readln(L); write(output(L, sum)); // в функцию readln(); end.
Вывод консоли:
enter the number 55 10
- Log in to post comments
- 850 reads