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

функция факториала - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Удаление элемента массива http://www.cyberforum.ru/cpp-beginners/thread178711.html
Люди добрые, помогите написать две программы в C++. Текст: 1) Даны две прямые, одна из которых проходит через начало координат и точку (X1 ,Y1 ), а вторая - через точки ( X2 ,Y21 ) и (X3, Y3)....
C++ Матрица Задача стандартная, но что-то решение её я найти не могу. В файле дана матрица целых чисел (можно и вещественных, не суть). Нужно перейти из левого верхнего в правый нижний углы так, чтобы сумма... http://www.cyberforum.ru/cpp-beginners/thread178707.html
C++ Динамический массив
Писал программу #include <iostream> #include <stdlib.h> #include <math.h> using namespace std; class matrix { protected: int size;
Project raised exception class EConvertError C++
Вот такая ошибка: Project Project1.exe raised exception class EConvertError with message "2.1" is not a valid integer value. Process stopped. Use Step or Run to continue. 2.1 это число, вводимое с...
C++ Исследование алгоритмов линейного и двоичного поиска на С. http://www.cyberforum.ru/cpp-beginners/thread178697.html
1. Написать программы работы алгоритмов оптимального и неоптимального, последовательного поиска для неупорядоченного массива с оценкой временных характеристик 2. Написать программы работы...
C++ Что за перегруженный оператор char* ()? Вот синтаксис: operator char*(){ return ptr; Пример взят из книги Брайана Овереленда и к этому примру, в частности, никаких пояснений Я порылся в инете, но везде ведётся... подробнее

Показать сообщение отдельно
vovelo
Сообщений: n/a

функция факториала - C++

19.10.2010, 21:43. Просмотров 1364. Ответов 1
Метки (Все метки)

Задание:
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на интервале от хнач до хкон с шагом dx с точностью e. Таблицу снабдить заголовком и шапкой. Каждая строка должна содержать значение аргумента, значение функции и количество просуммирорванных членов ряда.
В моем варианте присутствует факториал в знаменателе дроби - (2n+1)!
Я в С++ не силен, до этого работал только в Паскале, но нам дают задания, которые надо делать исключительно на си.

Вот что у меня получилось:

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
#include <iostream>
#include <cmath>
#include <clocale>
#include <stdio.h>
using namespace std;
unsigned long fact(unsigned int n)
{
if(n<=1)
return 1;
return n* fact(n-1);
}
 
int main ()
{
    setlocale(LC_ALL, "russian");
float sum=0,arg=0,x=0,xnach=0, xkonech=0, shag=0, toch=0;
    int n;
    
        cout<<"\nВведите x начальное:"; cin>>xnach;
        cout<<"Введите шаг:"; cin>>shag;
        cout<<"Введите х конечное:"; cin>>xkonech;
        cout<<"Введите точность:"; cin>>toch;
 
    cout<<"\nx\tn\tsum\tsin"; 
    
    for(float x=xnach; x<=xkonech; x+=shag)
    {
        n=0;
        arg=(pow((float)(-1), n)*(pow(x,2*n)))/(fact(2*n+1));
        while(abs(arg)>toch)
        {
            sum+=arg;       
            n++;
            arg=(pow((float)(-1), n)*(pow(x,2*n)))/(fact(2*n+1));
        }
        cout.precision(4);
        cout<<"\n"<<x<<"\t"<<n<<"\t"<<sum<<"\t"<<(sin((double)x)/x);
 
    }
    cout<<endl;
    return 0;
}
Препод сказал заменить рекурсивную функцию факториала на "расширенный вид", ибо у меня выскакивает ошибка после подсчета по формуле вот на этом моменте на скрине.
Подскажите приблизительно, как написать правильно эту самую функцию...
Миниатюры
функция факториала  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru