Если число является степенью числа 3, то вывести True - C (СИ)
Формулировка задачи:
Помогите исправить программу,она не работает
int main()
{
int n;
scanf("%d",&n);
while(n%3) n\=3;
printf("true");
else
printf("false");
getch();
return 0;
}Решение задачи: «Если число является степенью числа 3, то вывести True»
textual
Листинг программы
int pws = 1; while (pws < n) pws *= 3; if(pws == n) /*степень тройки*/
Объяснение кода листинга программы
В данном коде происходит следующее:
- Объявляется переменная
pwsи инициализируется значением 1. - Запускается цикл
while, который будет выполняться до тех пор, пока значение переменнойpwsменьше заданного числаn. - Внутри цикла переменная
pwsумножается на 3. - После завершения цикла проверяется условие: если значение переменной
pwsравно заданному числуn, то это означает, что числоnявляется степенью числа 3, и в этом случае выводится значениеTrue.