Напишите функцию, которая находит цифровой корень числа - Pascal
Формулировка задачи:
Доброго времени суток, столкнулся с проблемой при написании программы ддля задачи: Напишите функцию, которая находит цифровой корень числа. (т.е. для числа 78956 = 7+8+9+5+6)
Изначально предполагалось решить задачу путем цикла где число будет постоянно делится на 10 и остаток от деления будет складываться. но для этого нужно определить длину данного числа. рационально ли будет сначало узнавать его длину, а потом уже делать цикл. Лио имеются другие варианты.
Заранее благодарен
Решение задачи: «Напишите функцию, которая находит цифровой корень числа»
textual
Листинг программы
Program Croot; uses crt; var ch,s:integer; Function sred(a,r:integer):integer; begin repeat r:=s+a mod 10; a:= a div 10; If (s div 10 <> 0) and (a=0) Then begin a:=r; s:=0; end; until a=0; end; begin clrscr; write ('vvedite neobhodimoe chislo'); readln (ch); S:=0; s:=sred(ch,s); writeln(s); end.
Объяснение кода листинга программы
- Программа
Croot
написана на языке Pascal. - Она использует модуль
crt
для ввода-вывода данных. - В программе объявлены две переменные:
ch
иs
. - Переменная
ch
используется для хранения введенного числа. - Переменная
s
используется для хранения результата вычисления цифрового корня. - Функция
sred
вычисляет цифровой корень числа. - Она принимает два аргумента:
a
- остаток от деления числа на 10 иr
- результат предыдущего вычисления. - В функции используется цикл
repeat-until
, который выполняется до тех пор, пока числоa
не станет равным нулю. - Внутри цикла выполняется следующая последовательность действий:
r
присваивается суммаa
и остатка от деленияa
на 10.a
делится на 10.- Если остаток от деления
s
на 10 не равен нулю иa
равно нулю, тоa
присваиваетсяr
, аs
устанавливается равным нулю.
- После выполнения всех итераций цикла, функция возвращает результат в переменную
s
. - В основной части программы выполняется очистка экрана и вывод сообщения с просьбой ввести необходимое число.
- Введенное число сохраняется в переменной
ch
. - Затем вызывается функция
sred
с аргументамиch
иs
. - Результат вычисления функции
sred
сохраняется в переменнойs
. - Выводится значение переменной
s
. - Программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д