В паскале часто встречаются программы, где необходимо выделить цифры из 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.