Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
SATMAN
52 / 52 / 1
Регистрация: 09.10.2009
Сообщений: 984
#1

Степень - C++

17.10.2010, 01:13. Просмотров 710. Ответов 13
Метки нет (Все метки)

Хочу реализовать 2 в 3 степени .. но не могу докумекать как это сделать ..
Каким циклом сделать лучше ?
2*2*2=8

ВНИМАНИЕ НЕ КИДАЙТЕ ГОТОВОЕ РЕШЕНИЕ ХОЧУ САМ ДОПЕТРИТЬ (ДЛЯ СЕБЯ РЕШАЮ , СОБАЧИЙ ИНТЕРЕС)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.10.2010, 01:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Степень (C++):

Вычислить 10-ю степень двойки сложением, умножением и просто возведением в степень. - C++
Написать код на С++ или С# или на Java Вычислить 10-ю степень двойки 1 - сложением, умножением и просто возведением в степень.

Написать программу с функцией, вычисляющей целую степень дробного числа. Учесть,что степень может быть положительной, отрицательной, нулевой - C++
Написать программу с функцией, вычисляющей целую степень дробного числа. Учесть,что степень может быть положительной, отрицательной,...

Как возвести дробное число в целую степень? К примеру 2,7 возвести в степень 2 на C++. - C++
Как возвести дробное число в целую степень? К примеру 2,7 возвести в степень 2 на C++.

степень - C++
создать класс для вычисления числа n в степени k, перегрузить оператор * умножения. помогите перегрузить оператор, желательно с...

Возведения в степень - C++
Народ нужна помощь так как только, сегодня утром начал учить С++ сразу же возникли вопросы Например у меня есть последовательность чисел...

Возведение в степень! - C++
Возник вопрос - Возможно пока не понятна в чем мысль! Попробую на примере объяснить! Возведение числа 2 в 1000 - ую степень будет...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MILAN
885 / 779 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
17.10.2010, 01:14 #2
Я выбрал бы for, хотя можно любой!!!
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
17.10.2010, 01:17 #3
А я бы выбрал pow из cmath

pow(число, степень). Один из параметров должен быть double.
asics
Freelance
Эксперт С++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
17.10.2010, 01:27 #4
Цитата Сообщение от Lavroff Посмотреть сообщение
Один из параметров должен быть double.
Всмысле так не поканает ?
C++
1
pow(2, 2);
TheMachinist
242 / 174 / 15
Регистрация: 14.06.2010
Сообщений: 422
17.10.2010, 01:28 #5
Включаем :
#include <cmath>
потом std:: из меню выбираем pow() (степень) ....
в скобках параметры - какую степень из чего....
и получаем резалт
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
17.10.2010, 01:30 #6
NikolaWhite, Ну допустим std совершенно не обязательно.

pow(2, 2) - не-а. Так не проканает. Один из параметров должен быть double/float.
Т.е. pow(2.0, 2) - вполне
SATMAN
52 / 52 / 1
Регистрация: 09.10.2009
Сообщений: 984
17.10.2010, 01:30  [ТС] #7
Ок спасибо ! завтра поковыряю и порешаю задачку .
asics
Freelance
Эксперт С++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
17.10.2010, 01:32 #8
Lavroff,
C++
1
2
3
4
5
6
7
8
#include <iostream>
#include <cmath>
 
int main()
{
    std::cout << pow(2, 2);
    system("pause >> void");
}
И всё работает.
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
17.10.2010, 01:35 #9
Asics^, Ну видимо 2 неявно приводится к double. А на неявное приведение лучше не ровняться.
У функции pow есть 5 перегрузок. И ни в одной не фигурирует тип int.

Вот так не сработает.

C++
1
2
3
4
5
6
7
8
9
#include <iostream>
#include <cmath>
 
int main()
{
    int a=2, b=2;
    std::cout<<pow(a,b)<<'\n';
    return 0;
}
C++
1
2
3
4
5
6
7
8
#include <iostream>
#include <cmath>
 
int main()
{
    std::cout<<pow(2,2)<<'\n';
    return 0;
}
И такой код не компилируется в MSVS 2005.
asics
Freelance
Эксперт С++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
17.10.2010, 01:40 #10
Lavroff, в DevC++
Миниатюры
Степень  
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
17.10.2010, 01:41 #11
Asics^, Вывод. DevC++ использует неявное приведение из int в double. Что по сути некорректно. Хотя нет. Скорее всего корректно. Это из double в int некорректно из-за возможности потери данных. А при переводе из 4 байт в 8 байт (double) вроде как катастрофического ничего не случится. Но все же, небезопасное приведение. Если так хочется лучше писать
C++
1
pow(static_cast<double>(a), b);
pow
iApple
2 / 2 / 0
Регистрация: 23.09.2010
Сообщений: 11
17.10.2010, 04:20 #12
SATMAN,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream.h>
#include <conio.h>
#include <math.h>
main(){
int i,q,d,a,g;
cout<<"Число воздвигаемое в степень:";
cin>>q;
a=q;
cout<<"в какую степень будем воздвигать: ";
cin>>i;
while(d<i) do{
g=q;
cout<<q<<"*"<<a,"="<<g<<endl; //каждый цикл показывает число в i степени, при желании можно исключить
q=q*a;
d++;
}
}

писал напрямую сюда, по моему так эта фигня должна 100%.

Добавлено через 2 минуты
Lavroff, респект за аву))) на днях встретил в лицо такую проблему))) тока мне надо было F1 жать.. (
Kastaneda
Форумчанин
Эксперт С++
4652 / 2860 / 228
Регистрация: 12.12.2009
Сообщений: 7,268
Записей в блоге: 2
Завершенные тесты: 1
17.10.2010, 09:36 #13
C++
1
pow(2,2)
некоторые компиляторы это проглотят, а вот так:
C++
1
pow(2,(1/3));//находим корень 3-ей степени
даже если скомпилится, то правильного ответа 100% не будет, как-то сам так попался))
asics
Freelance
Эксперт С++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
17.10.2010, 12:11 #14
Kastaneda, Ну да,написал
C++
1
std::cout << pow(32, 1/5);
резалт: 1(неверно)
C++
1
std::cout << pow(32, 1/5.0);
резалт: 2(что вроде тру)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.10.2010, 12:11
Привет! Вот еще темы с ответами:

возведение в степень! - C++
Кто помнит функцию возведения в степень.?? &quot;трам-пам-пам&quot; (a,b) ???? Добавлено через 3 минуты И еще желательно...

Возведение в степень. C++ - C++
можно ли написать программу для возведения в вводимую степень вводимого числа с помощью рекурсивной функции

Возведение в степень! - C++
Определить {\chi }^{15} без использования функций и не более чем 5-ю арифметическими операциями.

Возведение в степень - C++
Вам конечно это покажется тупой проблемой, но всё же. Напишите пожалуйста как возводить в степень на си и пример. В инете что ищу всё на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.10.2010, 12:11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru