| Код | uses crt; function sum(n:integer):integer; var s:integer; begin s:=0; while n>0 do begin s:=s+n mod 10; n:=n div 10 end; sum:=s end; var n,k:integer; begin write('n='); read(n); k:=0; while n>0 do begin n:=n-sum(n); k:=k+1 end; write('k=',k); end.
|
Нашел код на паскале этой задаче. Перевел на c#, но зацикливание происходит
| Код | namespace ConsoleApplication2 { class Program { static int zero(int otv) {
int s = 0; int n=0; while (n > 0) { s = s + n % 10; n=n/10; } otv = s; return otv; } static void Main(string[] args) { int n, k; k = 0; Console.WriteLine("Введите число"); n= Convert.ToInt32(Console.ReadLine()); zero(n); while (n > 0) { n = n - zero(n); k = k + 1; } Console.WriteLine("Через {0} операции будет 0",zero(k)); Console.ReadLine(); } } }
|
|