Я Красавчег
Мыслитель
(8897)
3 года назад
У вас зациклится на этом условии при вводе 01
while (a0 != 0)
Потому что в конце идет сравнение и если b равно a0 то вывод информации на экран и опять по кругу. В else даже не попадём, где находится выход программы.
может, реализация не лучшая, но помогите скорректировать :с
код:
#include < iostream >
using namespace std;
int main()
{
int a0;
cin >> a0;
while (a0 != 0)
{
int a1, a2, sum, b, i = 0;
a1 = a0 / 10;
a2 = a0 % 10;
sum = a1 + a2;
b = a2 * 10 + sum % 10;
i++;
if (b == a0)
cout << i << endl;
else while (sum != a0)
{
a1 = a2;
a2 = sum % 10;
sum = a1 + a2;
b = a2 * 10 + sum % 10;
i++;
if (b == a0)
{
cout << i << endl;
return 0;
}
}
}
}
задание: