Algorytm Newtona-Raphsa wyznacz przybliżoną wartość pierwiastka

Odpowiedz Nowy wątek
2020-03-26 20:27

Rejestracja: 1 tydzień temu

Ostatnio: 2 dni temu

0

Mam do wykonania zadanie 2.58. Napisałem kod, lecz nie wszystko chyba działa. Mógłby ktoś spojrzeć i podpowiedzieć?
Zadanie w załączniku


#include<cmath>
#include <functional>
using namespace std;

double oblicz(double p, double E, double L)
{
    int a = p;
    int i = 0;
    if (abs(a - p / a) > E && i < L)
    {
        a = (a + p / a) / 2;
        i++;
    }
    else 
    {
        return a;
    }

}

int main()
{
    double p, E, L;

    cout << "Podaj liczbe, z ktorej chcesz wyznaczyc pierwiastek: ";
    cin >> p;
    cout << "dokladnosc obliczen: ";
    cin >> E;
    cout << "maksymalna liczba iteracji: ";
    cin >> L;
    cout << "a wynosi: " << oblicz(p, E, L) << endl;
}```

Pozostało 580 znaków

2020-03-26 21:16

Rejestracja: 6 lat temu

Ostatnio: 3 minuty temu

Lokalizacja: Kraków

Nie wiem dokładnie co tutaj się wyprawia ale nawet dostajesz warning, że oblicz która powinna zwracać double nie zwraca zawsze. Wszystkie znaki na niebie i ziemi wskazują na to, że zamiast ifa powinna być jakaś pętla while, zamiast else po prostu return a; zwracane po wyjściu z pętli.

Faktycznie powinien być while, teraz działa. Jestem ciemny c++ dzięki za pomoc - Kabom 2020-03-26 21:31
luzik arbuzik - szweszwe 2020-03-26 21:32

Pozostało 580 znaków

Odpowiedz

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