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

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

Войти
Регистрация
Восстановить пароль
 
Vlad_
7 / 7 / 0
Регистрация: 07.09.2012
Сообщений: 178
#1

Вычислить произведение ряда - C++

16.09.2012, 15:25. Просмотров 519. Ответов 7
Метки нет (Все метки)

Доброго дня всем.
Написал код для задачи,но после всех просчётов программа выдает очень маленькое значение, которое является ложным, не могу сообразить что не так, что добавить или переделать нужно?

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
#include <iostream>
#include <Windows.h>
 
using namespace std;
 
int x[50] ;
int A[50] ;
int n, i ;
double sum;
 
int main() {
    
        SetConsoleCP(1251);
        SetConsoleOutputCP(1251);
 
        do 
        {
            cout <<"Введите n \n" ;
            cin >> n;
            for(int i=1; i<=n; i++)
            {
                cout << "Введите Х" << i <<endl;
                cin >> x[i];
            }
                for(i=3; i<=n; i++)
                {
                    A[i]=x[i-2]+2*x[i-1]+x[i];
                }
                for(i=3; i<n; i++)
                {
                    sum=1;
                    sum=sum+A[i];
                }
                cout <<"Результатом умножения будет " << sum;
                cin.get();
                cin.get();
        } while(true);
        return 0;
}
и ешё отдельный вопрос какой модификатор позволяет вычислить значение переменной с точностью до 10 в -6 степени
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.09.2012, 15:25     Вычислить произведение ряда
Посмотрите здесь:

Вычислить произведение ряда - C++
1*3*5*....*101

Вычислить произведение ряда - C++
Дано натуральне число n. Обчислити P=(1+1/1)(1+1/2)^2 ...(1+1/n)^n , не використовуючи бібліотечних функцій. Дано натуральное число n....

Вычислить произведение ряда - C++
#include&lt;iostream.h&gt; int main() { int n, i; float z,p; cout&lt;&lt;&quot;vvedite n&quot;; cin&gt;&gt;n; for(i=2; i&gt;n;...

Вычислить произведение ряда - C++
х ввести с клавиатуры,k определить из условия ak=b, где a и b относится к целым четным числам (a&lt;b) и вводится с...

Вычислить произведение ряда - C++
Господа,нужна помощь. Кому не лень,не трудно,помогите чем могите. Собственно вот: Блок А 1. В области 12 районов. Известны количество...

Вычислить произведение ряда - C++
Вычислить произведение ряда \prod_{i=1}^{infinity} (x-2*i), где x - некоторое заданное вещественное число больше нуля. Вычисления закончить...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт С++
6551 / 3971 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
16.09.2012, 15:29     Вычислить произведение ряда #2
Цитата Сообщение от Vlad_ Посмотреть сообщение
for(i=3; i<=n; i++)
элементы массива нумеруются с нуля
Vlad_
7 / 7 / 0
Регистрация: 07.09.2012
Сообщений: 178
16.09.2012, 16:06  [ТС]     Вычислить произведение ряда #3
даже если пронумеровать с нуля или просто обнулить разници не будет+ в условии сказанно что n=3 минимум
IrineK
Заблокирован
16.09.2012, 16:26     Вычислить произведение ряда #4
Присоединяюсь к замечанию Jupiter.

Кроме того: почему вы находите сумму, когда в условии задачи - произведение?
Или это тоже "без разници"?
matepuhko
20 / 20 / 6
Регистрация: 05.06.2011
Сообщений: 119
16.09.2012, 16:29     Вычислить произведение ряда #5
C++
1
2
3
4
5
 for(i=3; i<n; i++)
                {
                    sum=1;
                    sum=sum+A[i];
                }
Первое - при каждом входе переменная sum = 1 ;
тоисть ответ будет последние A[i] + 1 ;
Второе sum может бить int, ну если чтоб на верняк то long int ;
Третье если :
C++
1
2
3
4
 for(i=3; i<=n; i++)
                {
                    A[i]=x[i-2]+2*x[i-1]+x[i];
                }
написать как
C++
1
2
3
4
5
 int sum = 0 ;
 for(i=3; i<=n; i++)
                {
                    sum *= x[i-2] + 2*x[i-1] + x[i];    //вместо сумы произведение поправил
                }
то должно работать как надо



Извените за кривой русский
Vlad_
7 / 7 / 0
Регистрация: 07.09.2012
Сообщений: 178
16.09.2012, 16:38  [ТС]     Вычислить произведение ряда #6
записать как
C++
1
2
3
4
5
 int sum = 0 ;
 for(i=3; i<=n; i++)
                {
                    sum +=x [i-2] + 2*x[i-1] + x[i];
                }
Вот это действительно так ,спасибо большое!

Добавлено через 1 минуту
ну ещё остался вопрос какой модификатор позволяет вычислить значение переменной с точностью до 10 в -6 степени ?
matepuhko
20 / 20 / 6
Регистрация: 05.06.2011
Сообщений: 119
16.09.2012, 16:48     Вычислить произведение ряда #7
ток провтыкал исправить
int sum = 1 ;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.09.2012, 16:50     Вычислить произведение ряда
Еще ссылки по теме:

Вычислить произведение ряда - C++
Квадратики это умножение (*) Пользуйтесь редактором формул внизу страницы P=\prod_{k=1}^{K}\frac{{(-1)}^{k}({k}^{2}+k+1)}{k!}

Вычислить произведение ряда - C++
Вычислить сумму S = R+R+...+R . R=1.01; R=o.75; R=0.25i + 2sinR - 0.35cosR . i=3,...,100. Массивом не пользоваться.

Вычислить произведение ряда - C++
вычислить и вывести на экран, x и k ввести с клавиатуры p=\prod_{i=1}^{k}\frac{sin(ix)}{2i-1}

Вычислить произведение ряда - C++
Дано натуральное число n. Вычислить (1+1/1^2)*(1+1/2^2)…(1+1/n^2) #include &lt;iostream&gt; using namespace std; int main(int...


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

Или воспользуйтесь поиском по форуму:
Vlad_
7 / 7 / 0
Регистрация: 07.09.2012
Сообщений: 178
16.09.2012, 16:50  [ТС]     Вычислить произведение ряда #8
matepuhko, я поправил и так это не проблема, а то результатом был 0)
Yandex
Объявления
16.09.2012, 16:50     Вычислить произведение ряда
Ответ Создать тему
Опции темы

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