Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
BaysNoize
1 / 1 / 0
Регистрация: 15.04.2013
Сообщений: 54
#1

Возведения в степень - C++

27.01.2014, 19:46. Просмотров 1425. Ответов 11
Метки нет (Все метки)

Народ нужна помощь так как только, сегодня утром начал учить С++ сразу же возникли вопросы
Например у меня есть последовательность чисел типа S=2+4+16+32... и так далее до определённого числа n.
Каждое последующее число мы возводим в степень, как это будет выглядить??
Всё что я пока написал выглядит всего лишь так
C
1
2
3
4
5
6
7
8
9
10
11
12
13
intclude <iostream>
intclude <cmath> // если не ошибаюсь библиотека для возведения в степень
int main ()
{
using namespace std;
set locale (LS_ALL, "Russian");
int n,s=0;
cin >> n ;
for (int i=1, i<=n, i++);
{double x;
cin >> x;
double y;
y=sqrt (x);
ну собственно тут я и застяр
Подскажите кто может что и как, если бы сразу кодом с пояснениями вообще было бы супер
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.01.2014, 19:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Возведения в степень (C++):

программа возведения в степень - C++
Друзья, я &quot;начинающий&quot; в СИ и поэтому столкнулся с такой проблемой: мой компилятор &quot;Miracle C&quot; Неправильно выполняет код, взятый из...

Функция возведения в степень. - C++
написал библиотеку для вычисления степени чисел.некорректно работает при возвращении переменной из step.h в main.cpp и переводе в другую. ...

Функция возведения в степень - C++
Добрый день. Ребята, помогите решить проблему. Написал функцию для вычисления действительных корней кубического уравнения. возникает...

Класс возведения в степень - C++
Добрый день всем. Тут зашел в тупик. Класс с функцией-членом возведения числа в степень путем перемножения друг на друга (я хочу добавить и...

Перегрузить функцию возведения в степень - C++
Перегрузить функцию stepen(), в которой число x будет возводиться в степень у: а) x – целое, у – дробное; б) x – целое, у – целое; в)...

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

11
Kill100
406 / 272 / 37
Регистрация: 11.12.2010
Сообщений: 1,157
Завершенные тесты: 1
27.01.2014, 19:51 #2
C++
1
2
3
4
5
6
7
int s = 0, n, p=2;
cin >> n;
for(int i = 0; i <= n; i++)
{
   s+=p;
   p*=p;
}
Я верно понял?
1
BaysNoize
1 / 1 / 0
Регистрация: 15.04.2013
Сообщений: 54
27.01.2014, 20:25  [ТС] #3
Ну вроде да, то есть мне выходит что не нужно
C
1
2
3
4
5
intclude <cmath>
{double x;
cin >> x;
double y;
y=sqrt (x)
Ну так как ты мне помог это банально умножения числа самого на себя, мне нужно что бы именно возведения было в степень, а не банальное умножения , ну спасибо и та этом
0
Kill100
406 / 272 / 37
Регистрация: 11.12.2010
Сообщений: 1,157
Завершенные тесты: 1
27.01.2014, 20:28 #4
Цитата Сообщение от BaysNoize Посмотреть сообщение
мне нужно что бы именно возведения было в степень, а не банальное умножения
А зачем если ряд у тебя 2+4+16+32?
0
MrGluck
Модератор
Эксперт CЭксперт С++
7491 / 4606 / 692
Регистрация: 29.11.2010
Сообщений: 12,596
27.01.2014, 20:44 #5
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Возведение в двойку - это обычный побайтовый сдвиг влево.
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
 
int main()
{
    int n, sum = 0;
    std::cin >> n;
    for (int i=1; i <= n; i++)
        sum += 1 << i;
    std::cout << sum << std::endl;
}
Если по простому. А на деле - можно все представить как строку, состоящую из n единиц и 0 на конце, потом перевести в десятичный формат и вывести на экран.
1
BaysNoize
1 / 1 / 0
Регистрация: 15.04.2013
Сообщений: 54
27.01.2014, 21:29  [ТС] #6
Ну а если будет S=2+8+512+... то есть в 3ю степень, мне просто интересна сама работа с степенью

Добавлено через 55 секунд
Я уже шарился по форому, но нахожу что то непонятное типо
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
double pow(
   double x,
   double y 
);
double pow(
   double x,
   int y
);  // C++ only
float pow(
   float x,
   float y 
);  // C++ only
float pow(
   float x,
   int y
);  // C++ only
long double pow(
   long double x,
   long double y
);  // C++ only
long double pow(
   long double x,
   int y
);  // C++ only
float powf(
   float x,
   float y 
);
Что это вообще без понятия
0
Ibra-san
0 / 0 / 0
Регистрация: 27.01.2014
Сообщений: 8
27.01.2014, 21:45 #7
Pow(x,y) функция из библиотеки <cmath>.
Возводит x в степень y.
Sqrt(x) наоборот корень квадратный извлекает.
Powf и Powl тоже, вроде как, в степень возводят, но с другой точностью вычисления
К примеру (присвоение иксу (2 в 4 степени)):
C++
1
x = pow(2, 4);
0
Kill100
406 / 272 / 37
Регистрация: 11.12.2010
Сообщений: 1,157
Завершенные тесты: 1
27.01.2014, 21:50 #8
C#
1
2
3
4
5
6
7
8
9
10
11
12
#include <math>
    int main()
    {
    int n, s=0;
    printf("Input n\r\n");
    scanf_s("%i", &n);//cin>>n //если будет ошибка
    for (int i = 2; i <= n; i++)
        s += pow(i, 3); //i в 3 степени
    printf("S = %in\r\n", s);
    system("Pause");
    return 0;
}
1
BaysNoize
1 / 1 / 0
Регистрация: 15.04.2013
Сообщений: 54
27.01.2014, 21:55  [ТС] #9
Цитата Сообщение от Ibra-san Посмотреть сообщение
Pow(x,y) функция из библиотеки <cmath>.
Возводит x в степень y.
Sqrt(x) наоборот корень квадратный извлекает.
Powf и Powl тоже, вроде как, в степень возводят, но с другой точностью вычисления
К примеру (присвоение иксу (2 в 4 степени)):
C++
1
x = pow(2, 4);
вооо понял, блогадарочка
0
Ibra-san
0 / 0 / 0
Регистрация: 27.01.2014
Сообщений: 8
27.01.2014, 22:06 #10
http://cppstudio.com/cat/309/319/
Почитайте про библиотеку <cmath>, там много полезных функций.
0
BaysNoize
1 / 1 / 0
Регистрация: 15.04.2013
Сообщений: 54
27.01.2014, 22:13  [ТС] #11
Цитата Сообщение от Ibra-san Посмотреть сообщение
http://cppstudio.com/cat/309/319/
Почитайте про библиотеку <cmath>, там много полезных функций.
Спасибо, полезный сайт, много интересного для начинающих программистов Пожалуй добавлю в закладки
0
gromo
371 / 270 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
27.01.2014, 22:20 #12
Ну и я вставлю 5 копеек. Возводим числа 2,4,16,32 в квадрат.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
template<int... Values>
void square()
{
    for(auto& i : {( Values * Values )...} )
        std::cout << i << " ";
        std::cout << std::endl;
}
int main()
{
    square<2,4,16,32>();
    return 0;
}
1
27.01.2014, 22:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.01.2014, 22:20
Привет! Вот еще темы с ответами:

Рекурсивная функция возведения в степень - C++
Мое задание: Вычислить y = x^n(икс в степени n) по следующему правилу: y = ( x^n/2 )^2, если n четное и y = x * y^(n–1), если n...

Рекурсивная функция возведения в степень - C++
Ребята, написал функцию для возведения в степень из учебника, но она почему-то не хочет работать. Вот код: int pow(int base, unsigned...

Написать функцию возведения в степень - C++
Написать программу, которая выводит на печать значения 1^1, 2^2, 3^3, 4^4, 5^5 Степени чисел должны вычисляться в отдельной функции....

Программные реализации быстрого возведения в степень - C++
реализовать быстрое возведение в степень числа минимальным количеством умножения


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

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