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

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

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

Ребята кто шарит подведения в степень не использовать - C++

25.05.2012, 19:14. Просмотров 271. Ответов 7
Метки нет (Все метки)

Найти сумму a^2+a^3+a^4+...a^n.
Операцию подведения в степень не использовать.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mortemia
2 / 2 / 1
Регистрация: 24.05.2012
Сообщений: 23
25.05.2012, 19:26     Ребята кто шарит подведения в степень не использовать #2
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
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main()
{
    int n=5;
    double a=2;
 
    double sum=0;
    double temp=a;
    for(int i=1; i<n; i++){
        temp*=a;
        sum+=temp;
    }
 
    cout<<"a="<<a<<endl;
    cout<<"n="<<n<<endl;
    cout<<"a^2+a^3+...+a^n="<<sum<<endl;
 
    getch();
    return 0;
}
Tomalex
0 / 0 / 0
Регистрация: 25.05.2012
Сообщений: 34
25.05.2012, 19:47  [ТС]     Ребята кто шарит подведения в степень не использовать #3
Операцию подведения в степень не использовать.
MrGluck
Ворчун
Эксперт CЭксперт С++
 Аватар для MrGluck
6221 / 3466 / 424
Регистрация: 29.11.2010
Сообщений: 9,177
25.05.2012, 19:53     Ребята кто шарит подведения в степень не использовать #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
 
int main()
{
    int x, n;
    std::cin>> x>> n;
    int t = x;
    for (int i=1; i < n; i++)
        t *= x;
    std::cout<< t;
    return 0;
}
Tomalex
0 / 0 / 0
Регистрация: 25.05.2012
Сообщений: 34
25.05.2012, 20:12  [ТС]     Ребята кто шарит подведения в степень не использовать #5
Большое спасибо)
zss
Модератор
Эксперт С++
 Аватар для zss
6112 / 5715 / 1849
Регистрация: 18.12.2011
Сообщений: 14,600
Завершенные тесты: 1
25.05.2012, 20:18     Ребята кто шарит подведения в степень не использовать #6
Однако, код, предложенный Mortemia, правильный,
а MrGluck - нет(он вычисляет только одно слагаемое a^n).
MrGluck
Ворчун
Эксперт CЭксперт С++
 Аватар для MrGluck
6221 / 3466 / 424
Регистрация: 29.11.2010
Сообщений: 9,177
25.05.2012, 20:31     Ребята кто шарит подведения в степень не использовать #7
Цитата Сообщение от zss Посмотреть сообщение
Однако, код, предложенный Mortemia, правильный,
а MrGluck - нет(он вычисляет только одно слагаемое a^n).
Я дал ему пищу для рассуждений ;-)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.05.2012, 20:54     Ребята кто шарит подведения в степень не использовать
Еще ссылки по теме:

C++ тем кто шарит в сортировках массивах
C++ Ребята обьясните ошибку(
C++ Если кто шарит в шаблонных классах, посмотрите пожалуйста
Тонкости терминологии: что такое оператор, операция, инструкция и кто из них operator, а кто statement? C++

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

Или воспользуйтесь поиском по форуму:
alkagolik
 Аватар для alkagolik
1510 / 616 / 79
Регистрация: 15.07.2011
Сообщений: 3,552
25.05.2012, 20:54     Ребята кто шарит подведения в степень не использовать #8
http://www.cyberforum.ru/cgi-bin/latex.cgi?a_{1}^{2} + a_{2}^{3}+...+a_{k}^{n}
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <iostream>
 
using namespace std;
typedef unsigned int uint32;
 
class poly {
 
public:
 
    poly( uint32 __base ) : power( 2 ), base( __base ) {}
    
    ~poly(){}
    
    uint32 get_sum( uint32 n ) {
 
        uint32 pow = power;
        uint32 sum = 0, tmp;
 
        for ( uint32 i = 0; i <= n - power; ++i ) {
 
            tmp = 1;
 
            for ( uint32 j = 0; j < pow; ++j )
                tmp *= base;
            sum += tmp;
            ++pow;
        }
 
        return sum;
    }
 
private:
    const uint32    power;
    uint32          base;
};
 
int main() {
 
    poly obj( 2 );
 
    cout << obj.get_sum( 3 ) << endl;
 
    return 0;
}
Yandex
Объявления
25.05.2012, 20:54     Ребята кто шарит подведения в степень не использовать
Ответ Создать тему
Опции темы

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