Меня попросили написать функцию void в c (no loops), которая получает четное число (скажем, 80) и печатает его следующим образом: 2 * 2 * 5 * 2 * 2 Как видите, результат равен 80 лол. Между двумя номерами вам нужно напечатать «*», а нечетное число (для моего примера, 5) вам нужно распечатать его посередине или если в номере есть нечетные числа «2», скажем 96 вам нужно напечатать его так: 2 * 2 * 2 * 3 * 2 * 2 Если заданное число нечетное, верните номер. Я бы хотел получить не только ответ, но и то, как вы «думаете», прежде чем начинать код. Вот что я получил до сих порФактор в C-рекурсии
if(n%4==0)
{
printf("2*");
PrintTwos(n/4);
return;
}
if(n%2==0)
{
printf("*2");
PrintTwos(n/2);
return;
}
printf("%d",n);
Как вы это сделаете (с ручкой и бумагой)? Что вы пытаетесь закодировать до сих пор? – purplepsycho
Показать код! – vz0
Прежде всего, подумая о состоянии стоп. Позволяет сказать, если число нечетное. Но моя главная проблема заключается в том, чтобы понять, как я могу напечатать свой номер таким образом, чтобы мой странный фактор (5, извините, если это не правильное слово для него) появится посередине, а не в end – user6788452