Задача 7 Урок 21

Урок 21

Дано натуральное число N. Вычислите сумму его цифр.
(При решении этой задачи нельзя использовать строки, списки, массивы
(ну и циклы, разумеется). Разрешена только рекурсия и целочисленная арифметика.
Используйте операцию получения остатка от деления,
и операцию целочисленного деления).

var natureInt, remains, sum: integer;

 function path( natureInt, remains: integer; var sum: integer): integer;

 begin
   if natureInt > 0 then
   begin
      remains := natureInt mod 10;
      natureInt := natureInt div 10;
      sum := sum + remains;
      natureInt := path(natureInt, remains, sum);
   end;
  path := sum;
 end;

 begin
   natureInt := 1025389;
   remains := 0;
   sum := 0;
   WriteLn('Сумма цифр числа ', natureInt);
   write('равна = ', path(natureInt, remains, sum));
   readln();
 end.

КОНСОЛЬ

Сумма цифр числа 1025389
равна = 28