Из заданного числа вычли сумму его его цифр. Из результата вновь вычли сумму его цифр и т.д. Сколько таких действий надо произвести, чтобы получился нуль — Pascal(Паскаль)

Function Sumc(A : Word): Word; {складываем все цифры в числе}
Var R : Word;
Begin
  R := 0;
  While A<>0 do {пока ещё есть что складывать}
  Begin
    R := R + (A mod 10); {к результату прибавляем последнюю цифру}
    A := A div 10; {а из числа вычитаем эту последнюю цифру}
  End;
  Sumc := R; {результат}
End;
 
Var W, C : Word;
Begin
  Write('Введите число: ');
  ReadLn(W);
  C := 0; {обнуляем количество действий}
  While W<>0 do {пока ещё есть что вычитать}
  Begin
    C := C + 1; {увеличиваем количество действий}
    W := W - Sumc(W); {вычитаем из числа сумму цифр}
  End;
  WriteLn('Было произведено ',C,' действий');
End.

Leave a Comment

99 − = 93