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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.90
programe
0 / 0 / 0
Регистрация: 20.11.2012
Сообщений: 10
#1

Необходимо вычислить значение 2 в степени n. - C++

21.11.2012, 18:46. Просмотров 2763. Ответов 25
Метки нет (Все метки)

"Необходимо вычислить значение 2 в степени n."
как это сделать,помогите пожалуйста? я сделала,но на большие числа не хватает
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2012, 18:46     Необходимо вычислить значение 2 в степени n.
Посмотрите здесь:
C++ Вычислить значение многочлена n-ой степени
Написать программу, которая делит числа в 5 степени на число в 14 степени и выводит ответ в 5 степени. Найти ошибку C++
Вычисление степени, в которую необходимо возвести 2 для получения числа, которое <= заданному числу C++
Необходимо создать массив на 1 елемент, и записать туда значение. Пользователь может добавить значение или удалить. И выйти C++
C++ Вычислить 1+2+4+8+...+2 в степени 10
Вычислить А в степени n C++
Вычислить 7 в 123 степени C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
21.11.2012, 18:48     Необходимо вычислить значение 2 в степени n. #2
А как сделали покажите?
programe
0 / 0 / 0
Регистрация: 20.11.2012
Сообщений: 10
21.11.2012, 18:50  [ТС]     Необходимо вычислить значение 2 в степени n. #3
сделали нашару, но как ни странно, работает:
#include <fstream>
using namespace std;

ifstream fin ("input.txt"); ofstream fout ("output.txt");

int main()
{
long long int n,i,s,k;
s=2;
fin>>n;
for (i=2; i<=n; i++)
{
s*=2;
}
fout <<s;
}

Добавлено через 20 секунд
я новичок
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
21.11.2012, 18:52     Необходимо вычислить значение 2 в степени n. #4
ifstream fin ("input.txt"); ofstream fout ("output.txt"); это здесь не к чему надо писать #include <iostream>
и использовать cout для вывода, cin для ввода.
programe
0 / 0 / 0
Регистрация: 20.11.2012
Сообщений: 10
21.11.2012, 18:54  [ТС]     Необходимо вычислить значение 2 в степени n. #5
хотите сказать,что если я изменю на это,то все заработает?
Croessmah
Модератор
Эксперт CЭксперт С++
13052 / 7315 / 814
Регистрация: 27.09.2012
Сообщений: 18,052
Записей в блоге: 3
Завершенные тесты: 1
21.11.2012, 18:59     Необходимо вычислить значение 2 в степени n. #6
programe, для больших чисел, нужно больше памяти
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
21.11.2012, 18:59     Необходимо вычислить значение 2 в степени n. #7
Цитата Сообщение от programe Посмотреть сообщение
хотите сказать,что если я изменю на это,то все заработает?
конечно заработает, так как вы пишите неправильно.По сути задания надо использовать библиотечную функцию pow.
programe
0 / 0 / 0
Регистрация: 20.11.2012
Сообщений: 10
21.11.2012, 19:00  [ТС]     Необходимо вычислить значение 2 в степени n. #8
да ладно?! спасибо,Америку открыли!
NEW_NAME
1 / 1 / 0
Регистрация: 04.10.2012
Сообщений: 45
21.11.2012, 19:04     Необходимо вычислить значение 2 в степени n. #9
Цитата Сообщение от programe Посмотреть сообщение
сделали нашару, но как ни странно, работает:
#include <fstream>
using namespace std;

ifstream fin ("input.txt"); ofstream fout ("output.txt");

int main()
{
long long int n,i,s,k;
s=2;
fin>>n;
for (i=2; i<=n; i++)
{
s*=2;
}
fout <<s;
}

Добавлено через 20 секунд
я новичок
А что не работает? В папке с экзешником лежит input.txt в котором верно записано число?
programe
0 / 0 / 0
Регистрация: 20.11.2012
Сообщений: 10
21.11.2012, 19:06  [ТС]     Необходимо вычислить значение 2 в степени n. #10
да.да все работает,но не с большими числами нет,например 4722366482869645213696(2 в степени 72)
NEW_NAME
1 / 1 / 0
Регистрация: 04.10.2012
Сообщений: 45
21.11.2012, 19:09     Необходимо вычислить значение 2 в степени n. #11
Что если просто long long написать вместо long long int?
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
21.11.2012, 19:10     Необходимо вычислить значение 2 в степени n. #12
Цитата Сообщение от David Sylva Посмотреть сообщение
По сути задания надо использовать библиотечную функцию pow.
Зачем? Здесь один только битик в единицу выставить
NEW_NAME
1 / 1 / 0
Регистрация: 04.10.2012
Сообщений: 45
21.11.2012, 19:13     Необходимо вычислить значение 2 в степени n. #13
ааа. На long 4 байта. Long long видимо 8. 8*8=64 бита. А тут еще знак есть. То есть 2^72 тупо не влезает в long long. Long long long(если так можно) должен помочь.
Jupiter
Каратель
Эксперт С++
6553 / 3973 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
21.11.2012, 19:16     Необходимо вычислить значение 2 в степени n. #14
Цитата Сообщение от David Sylva Посмотреть сообщение
По сути задания надо использовать библиотечную функцию pow.
сдвиги же
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2012, 19:20     Необходимо вычислить значение 2 в степени n.
Еще ссылки по теме:
C++ Вычислить выражение Y в степени X /Z
Функция, которая вычисляет значение aв степени b C++
Вычислить е в степени х разложением в ряд. C++
C++ Рекурсия: приближенное значение корня k-й степени из числа
Как возможно вычислить рекурсивно x^x (x в степени x)? C++

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

Или воспользуйтесь поиском по форуму:
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
21.11.2012, 19:20     Необходимо вычислить значение 2 в степени n. #15
Как-то так.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
 
/*
 * 2 ^ n =
 * Для натуральныч n.
 */
unsigned long pow2(int exp)
{
    return 1 << exp;
}
 
int main()
{
    for (int i = 0; i < 10; ++i)
        std::cout << "2 ^ " << i << " = " << pow2(i) << std::endl;
}
http://ideone.com/32vkSf#view_edit_box
Кликните здесь для просмотра всего текста
Код
2 ^ 0 = 1
2 ^ 1 = 2
2 ^ 2 = 4
2 ^ 3 = 8
2 ^ 4 = 16
2 ^ 5 = 32
2 ^ 6 = 64
2 ^ 7 = 128
2 ^ 8 = 256
2 ^ 9 = 512
Yandex
Объявления
21.11.2012, 19:20     Необходимо вычислить значение 2 в степени n.
Ответ Создать тему
Опции темы

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