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

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

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

Найти сумму 10 членов ряда - C++

21.01.2014, 00:17. Просмотров 900. Ответов 25
Метки нет (Все метки)

Найти сумму 10 членов ряда, в котором http://www.cyberforum.ru/cgi-bin/latex.cgi?an=n!/n^sqrt(n)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 09:35     Найти сумму 10 членов ряда #2
nikita7991,
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
#include <iostream>
#include <math.h>
using namespace std;
 
double  fact(double  n)
{
    return n==1 ? 1 : fact(n-1)*n;
}
 
double  func( double  n)
{
 
    return ((double)fact(n))/pow((double)n,pow((double)n,0.5));
}
 
void main()
{
    double  s=0;
 
    for (double i = 1; i<11;i++)
    {
        s+=func(i);
        cout<<"s["<<i<<"]="<<s<<endl;
    }
    system("pause");
}
Tulosba
:)
Эксперт С++
4387 / 3230 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
21.01.2014, 11:00     Найти сумму 10 членов ряда #3
Цитата Сообщение от Enotniy Посмотреть сообщение
double fact(double n)
Т.е. можно уже для вещественных чисел факториал считать?
Ilot
21.01.2014, 11:02
  #4

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
Т.е. можно уже для вещественных чисел факториал считать?
Ну как бы да. Гамма функцию никто не отменял. Вот только знает ли об это автор?
...судя по коду нет....

Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 11:11     Найти сумму 10 членов ряда #5
Tulosba, Ilot, программа считает только для натуральных. а double, потому что общей int на double поменял. ПО моему ответ от этого не страдает
Ilot
Модератор
Эксперт С++
1784 / 1159 / 224
Регистрация: 16.05.2013
Сообщений: 3,048
Записей в блоге: 5
Завершенные тесты: 1
21.01.2014, 11:16     Найти сумму 10 членов ряда #6
А вот это зря. Не говоря уже о том, что вы преобразуете double к double. Спрашивается зачем? Скажем так не лучшее решение...
ValeryS
Модератор
6479 / 4945 / 455
Регистрация: 14.02.2011
Сообщений: 16,389
21.01.2014, 11:19     Найти сумму 10 членов ряда #7
Цитата Сообщение от Enotniy Посмотреть сообщение
ПО моему ответ от этого не страдает
а как насчет
Цитата Сообщение от Enotniy Посмотреть сообщение
n==1
а как насчет потери точности?
а чему равен факториал 0?
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
21.01.2014, 11:24     Найти сумму 10 членов ряда #8
Цитата Сообщение от Ilot Посмотреть сообщение
Скажем так не лучшее решение...
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 <math.h>
using namespace std;
 
long int  fact(int  n)
{
    return n==1 ? 1 : fact(n-1)*n;
}
 
double func( int  n)
{
    return (fact(n))/pow(n,pow(n,0.5));
}
 
void main()
{
    double  s=0;
    for (int i = 1; i<11;i++)
    {
        s+=func(i);
        cout<<"s["<<i<<"]="<<s<<endl;
    }
    system("pause");
}
работает так же

Добавлено через 3 минуты
ValeryS, в задаче не оговаривается, а исходя из того, что http://www.cyberforum.ru/cgi-bin/latex.cgi?{0}^{0} не имеет смысла, считаем что и рассматривать надо с n=1. Не надо придиратьсяValeryS, .
ValeryS
Модератор
6479 / 4945 / 455
Регистрация: 14.02.2011
Сообщений: 16,389
21.01.2014, 11:31     Найти сумму 10 членов ряда #9
Цитата Сообщение от Enotniy Посмотреть сообщение
ValeryS, в задаче не оговаривается,
в задаче не оговаривается
но всегда (если это не ведет к дополнительным расходам) лучше включать "защиту от дурака"
здесь не ведет
C++
1
2
3
4
long int  fact(unsigned int  n)
{
  return n<2? 1 : fact(n-1)*n;
}
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
21.01.2014, 11:55     Найти сумму 10 членов ряда #10
Цитата Сообщение от ValeryS Посмотреть сообщение
а чему равен факториал 0?
Единице.
Tulosba
21.01.2014, 12:03
  #11

Не по теме:

Цитата Сообщение от taras atavin Посмотреть сообщение
Единице.
спасибо, кэп. Но речь шла о коде из поста #2.

taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
22.01.2014, 09:35     Найти сумму 10 членов ряда #12
Тогда переполнению стека.
Ev_Hyper
Заблокирован
22.01.2014, 10:01     Найти сумму 10 членов ряда #13
Цитата Сообщение от ValeryS Посмотреть сообщение
а чему равен факториал 0?
тогда можно и другой вопрос задать: а чему равно деление на 0?
Tulosba
22.01.2014, 10:34
  #14

Не по теме:

Цитата Сообщение от Ev_Hyper Посмотреть сообщение
тогда можно и другой вопрос задать: а чему равно деление на 0?
деление на 0 равно бесконечности, если в числителе не ноль, иначе - неопределенность.
А вот факториал нуля по определению равен единице.

Ev_Hyper
Заблокирован
22.01.2014, 11:50     Найти сумму 10 членов ряда #15
Это я знаю, я к тому, что зачем рассматривать вариант с 0!, если в этом ряду будет деление на 0.
Хотя ...
0 в степени 0 - 0 или неопреденность?
S_el
2075 / 1582 / 303
Регистрация: 15.12.2013
Сообщений: 6,286
22.01.2014, 11:52     Найти сумму 10 членов ряда #16
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
0 в степени 0 - 0 или неопреденность?
Неопределенность,но считается,что можно брать 1.
http://math.stackexchange.com/questi...-power-is-00-1
ValeryS
Модератор
6479 / 4945 / 455
Регистрация: 14.02.2011
Сообщений: 16,389
22.01.2014, 12:14     Найти сумму 10 членов ряда #17
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
то я знаю, я к тому, что зачем рассматривать вариант с 0!, если в этом ряду будет деление на 0.
затем что по возможности нужно писать универсальные функции
завтра изменят условия
и что? искать по всей программе допущения?
Ev_Hyper
Заблокирован
22.01.2014, 12:20     Найти сумму 10 членов ряда #18
Цитата Сообщение от ValeryS Посмотреть сообщение
затем что по возможности нужно писать универсальные функции
завтра изменят условия
и что? искать по всей программе допущения?
всего все равно не предусмотришь
Enotniy
96 / 95 / 14
Регистрация: 15.01.2014
Сообщений: 283
22.01.2014, 12:23     Найти сумму 10 членов ряда #19
S_el, мы на матане из разных задач с пределами из 0 в степени 0 получали и 1, и e - потому и неопределенно. Препод говорит что при желании можно получить любое число
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2014, 12:26     Найти сумму 10 членов ряда
Еще ссылки по теме:

Найти сумму 15 членов ряда C++
C++ Найти сумму N членов ряда 1/i
C++ Найти сумму первых n членов ряда

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

Или воспользуйтесь поиском по форуму:
S_el
2075 / 1582 / 303
Регистрация: 15.12.2013
Сообщений: 6,286
22.01.2014, 12:26     Найти сумму 10 членов ряда #20
Цитата Сообщение от Enotniy Посмотреть сообщение
S_el, мы на матане из разных задач с пределами из 0 в степени 0 получали и 1, и e - потому и неопределенно.
А я по-вашему что сказал?
Yandex
Объявления
22.01.2014, 12:26     Найти сумму 10 членов ряда
Ответ Создать тему
Опции темы

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