В паскале часто встречаются программы, где необходимо выделить цифры из n-значного числа. Эти задачи являются составными частями более сложных, например, посчитать сумму цифр n-значного числа.
Программа для выделения цифр из числа
var sum: integer; number: longint; begin sum := 0; write('Введите число: '); readln(number); while number <> 0 do begin sum := 0; {Делим число на 10 и получаем остаток от деления т.е. крайнюю правую цифру числа} sum := sum + (number mod 10); writeln(sum); {Делим число на 10 и получаем целую часть числа т.е. отбрасываем крайнюю правую цифру от числа} number := (number div 10); end; readln; end.
Еще пример программы, которая определяет число и сумму цифр для любого натурального числа, также выводит запись числа в обратном порядке.
var k,s,n:integer; a:longint; begin writeln('введите целое число'); readln( n ); k:=0; s:=0; a:=0; repeat k:=k+1; s:=s+n mod 10; a:=a*10+n mod 10; n:= n div 10; until n=0; writeln( 'Запись числа в обратном порядке n= ', a ); writeln( 'Число цифр ', k ); writeln( 'Сумма цифр ', s ); end.