Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 22.06.2016
Сообщений: 4
1

Вычислить сумму ряда

28.10.2016, 10:04. Показов 1813. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Help помогите написать программу.Вычислить сумму ряда (1+n!)/(2+n!) с позиции N до позиции M. Функцию вычисления суммы реализовать рекурсивно. на си
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.10.2016, 10:04
Ответы с готовыми решениями:

Вычислить сумму ряда
С точностью до esp и x>1/2

Вычислить сумму ряда
Цикл с предусловием Вычислите частичную сумму ряда Вычисления прекратите, когда модуль...

Вычислить сумму ряда
Необходимо разработать программу согласно варианту задания. При написании программы реализовать...

Вычислить сумму ряда
Вычислить сумму ряда. Вычисления заканчивать при достижении заданной степени точности Е:...

5
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
30.10.2016, 03:54 2
dominator1,
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
#define _CRT_SECURE_NO_WARNINGS
 
#include <stdio.h>
#include <conio.h>
 
 
long factorial(int N);
double sum(int N, int M);
 
int main()
{
    int N = 0;
    int M = 0;
    printf("Vvedite N: ");
    scanf("%d", &N);
    printf("Vvedite M: ");
    scanf("%d", &M);
    printf("Summa = %f", sum(N, M));
    _getch();
    return 0;
}
 
 
long factorial(int N)
{
    if (N < 0)
        return 0;
    if (N == 0)
        return 1;
    else
        return N*factorial(N - 1);
}
double sum(int N, int M)
{
 
    if (M == N)
        return (1.0 + M) / (2.0 + M);
    else
        return (1.0 + factorial(M)) / (2.0 + factorial(M)) + sum(N, M - 1);
}
0
Модератор
Эксперт функциональных языков программированияЭксперт Python
37303 / 20737 / 4272
Регистрация: 12.02.2012
Сообщений: 34,133
Записей в блоге: 14
30.10.2016, 20:38 3
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

_SayHelli, нерационально... Вот так лучше:

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 <stdio.h>
#include <stdlib.h>
 
double sum(int k,int m, double f, double s)
{
       double ff;
       if (k > m) return s;
       ff=f*(double)(k);
       return sum(k+1,m,ff,s+(1.0+ff)/(2.0+ff));
}       
 
int main(int argc, char *argv[])
{
  int i,n,m;
  double r,f;
  printf("n="); scanf("%d",&n);
  printf("m="); scanf("%d",&m);
  f=1.0;
  for (i=1; i<n; i++) f*=(double)i;
  r=sum(n,m,f,0.0);
  printf("s=%lf\n",r);
  system("PAUSE");  
  return 0;
}
1
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
30.10.2016, 22:18 4
Catstail, я просто подумал, что полностью без циклов нужно задание, заодно сам потренеровался в рекурсии)
0
Модератор
Эксперт функциональных языков программированияЭксперт Python
37303 / 20737 / 4272
Регистрация: 12.02.2012
Сообщений: 34,133
Записей в блоге: 14
31.10.2016, 08:20 5
_SayHelli, да Ваше решение тоже годное, нет вопросов. Только факториал перевычисляется. Наши решения можно объединить: (n+1)! один раз вычислить предварительно Вашей программой (убив у меня цикл), а сумму - уже моей.
1
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
31.10.2016, 09:54 6
Catstail, а, я понял, у меня 2 раза вычисляется один и тот же факториал, я понял, спасибо
1
31.10.2016, 09:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.10.2016, 09:54
Помогаю со студенческими работами здесь

Вычислить сумму ряда
Ребят проверьте плиз эти 2 задачки на СИ.отпишитесь правильные они или нет.если есть какие то...

Вычислить сумму ряда
Дано натуральное число n. Вычислить S=1/3^2 + 1/5^2 + 1/7^2 +...+ 1/(2n+1)^2

Вычислить сумму ряда
#include&lt;stdio.h&gt; #include&lt;conio.h&gt; #include&lt;math.h&gt; main() { clrscr(); int a,b; float c;...

Вычислить сумму ряда
10. Вычислить сумму ряда \frac{{n-1}^{2}}{n!} с позиции N до позиции M. Функцию вычисления суммы...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru