19.11.2008, 12:48
общий
это ответ
Здравствуйте, Нуруллина Светлана Азатовна!
Решение в приложении.
Используется рекурсивный вызов функции fun
Приложение:
int sumnum(int iNum) //считаем сумму чисел
{
int sum = 0;
while (iNum)
{
sum += iNum % 10; //очередные цифры, как остатки от деления на 10
iNum /= 10; //убираем учтенную цифру
}
return sum;
}
void fun(int iNum, int * pRes)
{
iNum -= sumnum(iNum); //отнимем сумму цифр
(*pRes)++; //инкремент операций
if (iNum>0) //если не 0,
fun(iNum, pRes); //то повторим
}
int main()
{
int iRes = 0; //Здесь будет посчитанное число действий
fun(123456, &iRes); //123456 - примерное число, вторым параметром - адрес переменной, где получим число операций
return 0;
}
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен