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

Вычислить значение многочлена, воспользовавшись схемой Горнера - C++

Восстановить пароль Регистрация
 
Декабрист
0 / 0 / 0
Регистрация: 28.12.2015
Сообщений: 2
28.12.2015, 20:50     Вычислить значение многочлена, воспользовавшись схемой Горнера #1
Недавно взялась изучать С++ и споткнулась на этой задачке.

Дан многочлен P(x)=anxn+ an-1xn-1+ … + a1x + a0 и число x. Вычислите значение этого многочлена, воспользовавшись схемой Горнера. На ввод подается целое неотрицательное число n, действительное x и n+1 вещественное — коэффициенты многочлена.

ВАЖНО: задача должна быть решена без применения массивов и цикла for.

Знающие люди, прошу вашей помощи. Самостоятельно без косяков написать не смогла. :с
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.12.2015, 20:50     Вычислить значение многочлена, воспользовавшись схемой Горнера
Посмотрите здесь:

C++ Рассчитать значение переменной по схеме Горнера
C++ Вычисление значений многочлена по схеме Горнера методом сдваивания
Нахождение целых корней многочлена методом Горнера C++
Найти значение многочлена при заданном аргументе, производной от многочлена C++
C++ Найти значение многочлена
Вычислить выражение по схеме Горнера, без массивов C++
C++ Написание рекурсивной функции вычисления многочлена по схеме Горнера
Вычислить значение многочлена для заданного n C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DocC
336 / 65 / 26
Регистрация: 22.12.2010
Сообщений: 138
28.12.2015, 22:01     Вычислить значение многочлена, воспользовавшись схемой Горнера #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
#include <iostream>
#include <locale>
 
using std::cout;
using std::cin;
using std::endl;
 
 
double horner(const double&x, const int& n, const double& nn) {
    if (n < 0)
        return nn;
     else {
        double m;
        cin>>m;
        return horner(x, n-1, nn*x+m);
     }
}
int main() {
    setlocale(LC_ALL, "Russian");
    int n;
    double x;
    cout << "Введите x = ";
    cin >> x;
    cout << "Введите n (n > 0) = ";
    cin >> n;
    cout << "Введите (n+1) коэффициенты перед x (начиная со старшей степени):" << endl;
    cout << "Ответ = " << horner(x, n, 0);
    return 0;
}
Декабрист
0 / 0 / 0
Регистрация: 28.12.2015
Сообщений: 2
30.12.2015, 02:08  [ТС]     Вычислить значение многочлена, воспользовавшись схемой Горнера #3
Благодарю, очень помогли! Нашла свою ошибку, переписала программу, прошла тест.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main() {
    int n, i;
    cin >> n;
    double x, a, an, s = 0;
    cin >> x;
    if (n == 0) { s = a; cout << setprecision(6)<< fixed << s; } else
    {
    s = an*x + a;
    i = n - 1;
    while (i > 0) {
        s = s * x + a;
        i = i - 1;
        cin >> a >> s;
    }
        cout << setprecision(6)<< fixed << s; }
    return 0;
}
Yandex
Объявления
30.12.2015, 02:08     Вычислить значение многочлена, воспользовавшись схемой Горнера
Ответ Создать тему
Опции темы

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