Пример 6. Составим функцию, которая вычисляет сумму цифр числа. Будем рассуждать так: сумма цифр числа n равна значению последней цифры плюс сумма цифр числа div(n, 10). Сумма цифр однозначного числа равна самому этому числу, это условие окончания рекурсии. Получаем следующую функцию:
function sumDig(n:integer):integer;
var sum: integer;
begin
sum:=n mod 10;
if n>=10 then
sum:=sum+sumDig (n div 10);
sumDig:= sum
end;
Нужно максимально понятно обьяснить, как так получилось. 10 класс, Паскаль
Answers & Comments
n- число, сумму цыфор которого нужно вычислить
Переменной sum присваеваем значение последней цыфры числа n
Потом если n>10( прибавляем к sum значение последний цыфры числа n, предварительно отбросив от него последнюю цыфру)
Таким образом мы находиму сумму цыфр числа