Другие языки программирования и технологии
Программа на языке C++
Напишите, пожалуйста, программу по задаче. ***Пусть дано натуральное число n. Выяснить, является ли оно степенью числа 3.*** Не получается решить. Желательно, способом деления, но можно и другими. Заранее спасибо.
var n:integer; t:real; begin readln(n); t:=ln(n)/ln(3); writeln(frac(t)=0); end.
А, на С++..
#include "iostream"
#include "cmath"
using namespace std;
int main(){int n; double t; cin>>n; t=log(n)/log(3); cout<<boolalpha<<!modf(t,&t)<<endl;}
А, на С++..
#include "iostream"
#include "cmath"
using namespace std;
int main(){int n; double t; cin>>n; t=log(n)/log(3); cout<<boolalpha<<!modf(t,&t)<<endl;}
Владислав Юрасов
С++ ;)
Что не получилось? Код в студию.
P.S: Можно делением, можно умножением (если речь идет о целых числах).. можно кубический корень с проверкой на целое и желательно с учетом погрешности (функция pow)
P.S: Можно делением, можно умножением (если речь идет о целых числах).. можно кубический корень с проверкой на целое и желательно с учетом погрешности (функция pow)
D D
Сорян =) Умудрился перепутать. Нужна степень тройки, а не является ли число кубом...
#include
#include
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int n,n1,n2;
cin >> n;
n1 = 1;
double w = log(n) / log(3);
int a = floor(w);
for (int i = 1; i <= a; i++)
n1 = n1 * 3;
n2 = n1 * 3;
if (n == n1)
cout << n << " is value of 3 in power " << a << endl;
else if(n == n2)
cout << n << " is value of 3 in power " << a+1 << endl;
else
{
cout << n << " is not value of 3" << endl;
}
return 0;
}
#include
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int n,n1,n2;
cin >> n;
n1 = 1;
double w = log(n) / log(3);
int a = floor(w);
for (int i = 1; i <= a; i++)
n1 = n1 * 3;
n2 = n1 * 3;
if (n == n1)
cout << n << " is value of 3 in power " << a << endl;
else if(n == n2)
cout << n << " is value of 3 in power " << a+1 << endl;
else
{
cout << n << " is not value of 3" << endl;
}
return 0;
}
Вот способом деления:
#include
using namespace std;
int main() {
setlocale(LC_ALL, "");
cout << "Введите число n: ";
int n;
cin >> n;
while (n % 3 == 0)
n /= 3;
cout << "Это число ";
if (n != 1)
cout << "не ";
cout << "является степенью числа 3";
return 0;
}
#include
using namespace std;
int main() {
setlocale(LC_ALL, "");
cout << "Введите число n: ";
int n;
cin >> n;
while (n % 3 == 0)
n /= 3;
cout << "Это число ";
if (n != 1)
cout << "не ";
cout << "является степенью числа 3";
return 0;
}
Похожие вопросы
- Как создать программу на языке c++
- Как можно написать программу на языке C, которая будет выводить числа от 1 до 1000 без if, switch, do, while, for, goto?
- Как создать неконсольную программу на языке c++
- Нужно очень срочно создать программу. На языке c ++
- Написать программу на языке C, чтобы в нее вводили число, а она говорила простое оно или нет
- помогите переделать программу на язык C#.
- Программа на языке C++, помогите описать :|
- На какой программе писать на языке C++?
- назовите все плюсы языка C++ и c# , а также их минусы, и какие типы программ можно писать на с++ и c#
- Вопрос для тех кто знает точный ответ, язык C про функции все подробности вопроса внутри...