Algorytm Neviile'a problem z implementacją

0

Cześć skierowano mnie na to forum mam nadzieję, że znajdzie się tu pomocna dłoń w tym temacie.

Muszę zaimplementować algorytm Neville'a. Nie programuje zbyt długo, więc moja wiedza jest raczej słaba.
Jak dotąd mam taki kod

#include <iostream>
#include <vector>

using namespace std;

class Al_Nev {
public:
    void wektor()
    {
        int x, y;
        vector<int> tabx;
        tabx.push_back(-2);
        tabx.push_back(-1);
        tabx.push_back(1);
        tabx.push_back(3);
        vector<int> taby;
        taby.push_back(-13);
        taby.push_back(3);
        taby.push_back(5);
        taby.push_back(7);

        Neville(tabx, taby);
    }

    double Neville(vector<int> tabx, vector<int> taby)
    {
        cout << "Podaj argument T, dla ktorego chcesz obliczyc wartosc. p(T)" << endl;
        int T;
        cin >> T;
        cout << "Wybrales p(" << T << ")" << endl;
        int i = 0;
        tabx.begin();
        do {
            cout << tabx[i] << "|";
            i++;
        } while (i < tabx.size());
        cout << " " << endl;
        int j = 0;
        taby.begin();
        do {
            cout << taby[i] << "|";
            j++;
        } while (j < taby.size());
        cout << " " << endl;

        double wynik;
        for (int k = 0; k < 4; k++) {
            tabx[i] = taby[i];
            for (int h = k - 1; h < 4; h++) {
                wynik = ((T - (tabx[k])) * (taby[k + 1]) - (T - (tabx[k + 1]) * (taby[k]))) / ((tabx[k + 1]) - (tabx[k]));
                cout << wynik << endl;
            }
        }

        return wynik;
    }
};
int main()
{

    Al_Nev dzialanie;
    dzialanie.wektor();

    return 0;
}

Poprawnie wyświetla zawartość tabx niestety taby to już inna historia wyrzuca jakieś śmieci.
Same obliczenia też niestety nie idą jak powinny.

Sam algorytm Neville'a wygląda tak

Moim pomysłem było (jak dotąd teoretycznym) zapisywać wyniki do nowej tablicy tylko wtedy nie za bardzo mam pomysł jak zapisać warunek na odwoływanie się do niej w samym głównym obliczeniu. Oczywiście obecna forma obliczeń też nie daje właściwych wyników niestety.

Proszę o pomoc.

0

Nie będe przepisywał, Przeanalizuj sobie to: https://stackoverflow.com/questions/14206013/nevilles-algorithm-in-c

1 użytkowników online, w tym zalogowanych: 0, gości: 1