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

Вычислить сумму ряда, состоящего из N слагаемых - C++

Восстановить пароль Регистрация
 
Jancec
0 / 0 / 0
Регистрация: 29.12.2013
Сообщений: 3
02.03.2014, 21:49     Вычислить сумму ряда, состоящего из N слагаемых #1
Пожалуйста, помогите написать программу на с++. Вот задание:
Разработать программу на языке программирования С++.
Вычислить сумму ряда, состоящего из N слагаемых, и вывести результат с M знаками после запятой.
Миниатюры
Вычислить сумму ряда, состоящего из N слагаемых  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2014, 21:49     Вычислить сумму ряда, состоящего из N слагаемых
Посмотрите здесь:

C++ Вычислить сумму бесконечного сходящегося ряда. Суммирование прекратить при появлении в сумме слагаемых, имеющих абсолютную величину, меньшую заданной
C++ С++ Вычислить сумму из N слагаемых
C++ Вычислить сумму ряда, состоящего из N слагаемых, и вывести результат с M знаками после запятой
C++ Вычислить сумму ряда, состоящего из N слагаемых, и вывести результат с M знаками после запятой
Вычислить сумму ряда, состоящего из N слагаемых, и вывести результат с M знаками после запятой C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kiborgdelto
70 / 72 / 27
Регистрация: 23.03.2011
Сообщений: 141
02.03.2014, 23:57     Вычислить сумму ряда, состоящего из N слагаемых #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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
 
int factorial(int x) { 
    return !x ? 1 : x * factorial(x - 1);
}
 
 
int main() 
{
    int n;
    double x;
    double a=4;
 
    setlocale(0, "rus");
    srand((unsigned)time(NULL));
    cout << "Введите точку в которой будем вычислять значение  суммы ряда: \n";
    cin >> x;
 
    cout << "Введите количество элементов ряда: \n";
    cin >> n;
 
   double y=1;   
    for(int i = 1; i <=n; i++) 
        y+=pow(x*log(a),i)/factorial(i);
 
    int k;
    cout << "Введите количество знаков после запятой: \n";
    cin >> k;
    cout.flags(std::ios::fixed);
    cout<<setprecision(k)<<"Полученная сумма с точностью до "<<k<<" знака\n"<<y;
    
    
    cout<<endl;
    system("PAUSE");
    return 0;
}
 
 
double del(double *arr, int s, int n)
{
double buf;
buf=arr[s];
for(int i=s;i<n;i++) 
    arr[i]=arr[i+1];
return buf;
}
Добавлено через 28 минут
и такой момент 18 строка лишняя в данной, программе, я просто переделывал код и её оставил
и всё что после функции мэйн начиная с 40 строки тоже лишнее, функция del также осталась от другой программы
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
03.03.2014, 00:33     Вычислить сумму ряда, состоящего из N слагаемых #3
Cчитать факториал через рекурсию глупо и нерационально. К тому же, уже где-то на девятом факториале у тебя всё к чёрту переполнится! Зачем эти твои вредные советы?

Добавлено через 18 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int main(){
  const int N=50;
  double x, a;
  double delta=1, s=0;
  cin>>x>>a;
  a=x*ln(a);
  for(int i=1; i<=N; i++){
     s+=delta;
     delta*=a/i;
   }
  int k;
  cin>>k;
  cout.flags(ios::fixed);
  cout<<setprecision(k)<<s;
}
kiborgdelto
70 / 72 / 27
Регистрация: 23.03.2011
Сообщений: 141
03.03.2014, 00:36     Вычислить сумму ряда, состоящего из N слагаемых #4
я привёл один из способов решения проблемы, тот который сразу пришёл в голову, о переполнении в тот момент просто забыл
Yandex
Объявления
03.03.2014, 00:36     Вычислить сумму ряда, состоящего из N слагаемых
Ответ Создать тему
Опции темы

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