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

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

Войти
Регистрация
Восстановить пароль
 
niikiita
3 / 3 / 0
Регистрация: 29.05.2013
Сообщений: 226
#1

Программа, для вычисления многочлена Лагерра - C++

19.01.2014, 22:09. Просмотров 301. Ответов 0
Метки нет (Все метки)

Добрый вечер! Написал программу, но программа работает не корректно при n >= 1. Кто может подсказать в чём ошибка? Вот ссылка на формулу. (Рекуррентная) http://ru.wikipedia.org/wiki/%D0%9C%...80%D1%80%D0%B0

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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include "MyCrt.cpp"
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "Russian");//Русификатор
    do
    {
        ClrScr();//Очистка экрана
        cout << "Программа для вычисления значения многочленна Лагерра\n(для продолжения нажмите любую клавишу)";
            cin.get();
        double x, Ln, L1;
        int n, L0 = 1; 
        cout << "\t\nВведите n: ";
            cin >> n;
        cout << "Введите x: ";
            cin >> x;
        while (x <= 0)
            {
                cout << "х должен быть положительным! Введите заного!" << endl;
                    cin >> x;
            }
        if (n == -1)
            cout << "\nОтвет: 1\n" << "Для выхода из программы нажмите ESC. Для продолжения enter" << endl;
        if (n == 0)
            cout << "Ответ: \n" << (-x + 1) << endl << "Для выхода из программы нажмите ESC. Для продолжения enter" << endl;
        if (n >= 1)
        {
            L0 = 1;
            L1 = -x + 1;
            for (int i = 0; i < n - 1; i++)
            {
                Ln = (1/(n + 1))*((2*n + 1 - x)*L0 - n*L1);
                L0 = L1;
                L1 = Ln;    
            }
            cout << "Ответ: \n" << Ln << endl << "Для выхода из программы нажмите ESC. Для продолжения enter" << endl;
        }
    }
    while (_getch() != 27);
    
    
}
Добавлено через 21 минуту
Цитата Сообщение от niikiita Посмотреть сообщение
Добрый вечер! Написал программу, но программа работает не корректно при n >= 1. Кто может подсказать в чём ошибка? Вот ссылка на формулу. (Рекуррентная) http://ru.wikipedia.org/wiki/%D0%9C%...80%D1%80%D0%B0

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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include "MyCrt.cpp"
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "Russian");//Русификатор
    do
    {
        ClrScr();//Очистка экрана
        cout << "Программа для вычисления значения многочленна Лагерра\n(для продолжения нажмите любую клавишу)";
            cin.get();
        double x, Ln, L1;
        int n, L0 = 1; 
        cout << "\t\nВведите n: ";
            cin >> n;
        cout << "Введите x: ";
            cin >> x;
        while (x <= 0)
            {
                cout << "х должен быть положительным! Введите заного!" << endl;
                    cin >> x;
            }
        if (n == -1)
            cout << "\nОтвет: 1\n" << "Для выхода из программы нажмите ESC. Для продолжения enter" << endl;
        if (n == 0)
            cout << "Ответ: \n" << (-x + 1) << endl << "Для выхода из программы нажмите ESC. Для продолжения enter" << endl;
        if (n >= 1)
        {
            L0 = 1;
            L1 = -x + 1;
            for (int i = 0; i < n - 1; i++)
            {
                Ln = (1/(n + 1))*((2*n + 1 - x)*L0 - n*L1);
                L0 = L1;
                L1 = Ln;    
            }
            cout << "Ответ: \n" << Ln << endl << "Для выхода из программы нажмите ESC. Для продолжения enter" << endl;
        }
    }
    while (_getch() != 27);
    
    
}
Ребят ну подскажите пожалуйста, завтра сдавать
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.01.2014, 22:09     Программа, для вычисления многочлена Лагерра
Посмотрите здесь:

Функция для приближённого вычисления Log x по основанию 2 с помощью многочлена наилучшего приближения - C++
Привет всем, помогите написать программы),или если возможно дайте пожалуйста ссылки на похожие задачи!!!!!! 1)Написать и...

Написание рекурсивной функции вычисления многочлена по схеме Горнера - C++
не понимаю что требуется, по этому задание прикрепляю чтобы не ошибиться

Программа для вычисления выражения y=2 lg (x)+5 - C++
Помогите пожалуйста написать программу для вычисления выражения y=2 lg (x)+5.x и y - вещественные числа.

Программа для вычисления факториала - C++
Зравствуйте, помогите, пожалуйста, написать программу, которая вычисляет факториал введенного с клавиатуры положительного числа. Программа...

Программа для вычисления выражений - C++
A= min(sin x, min (y,x)) Max(x^y,y) (не использовать макрокоманд Max и Min)

Программа для вычисления Зарплаты - C++
Всем доброго времени суток. Помогите доработать программу до более менее сносного вида. Суть такова. Программа должна посчитать ЗП,...

Программа для вычисления функции - C++
Состивить программу для вычисления функции y\begin{cases}a{x}^{2}+b\sqrt{x}+c &amp; \text{ if } x=&gt; 5 \\ \pi \arcsin x &amp; \text{ if }...

Программа для вычисления формулы: - C++
Помогите написать программу по следующей формуле: Где h,g,d - константы h = 0,8 g = 9,8 d = 0,34

Программа для вычисления суммы - C++
S=1+3+5+7+ ., всего n слагаемых; n вводится с клавиатуры. Вычислить суму.

Программа для вычисления значения - C++
Здравствуйте, помогите решить задачу. Напишите программу, которая вычисляет значение y = 1+x+x^2+x^3+...x^n при любом x. Вычисления...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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