Pierwiastki równania - program nic nie wyświetla

0

Mam takie zadanie:

zad3.png

Napisałem taki program:

#include <stdio.h>
#include <math.h>

void zad3(int a, int k)
{
    int x=0;
    while(x < k)
    {
        float wynik = pow(x,6) - abs(a) * pow(x,4) + 3 * pow(x, 2) - 7;
        if(wynik == 0)
            printf("%f\n", wynik);
        x ++;
    }
}

int main()
{
    zad3(1, 100);

    return 0;
}

Jednak on mi nic nie wyświela :( Zadanie chyba nie może być ttrudne, bo to podstawy programowania. Co jest tu źle? Siedzę już kilka godzin i nie potrafię znaleźć błędu.

0

To dlatego, że podane równanie nie ma całkowitych rozwiązań w danym przedziale: http://www.wolframalpha.com/input/?i=x^6-x^4%2B3x^2-7

0

Zdajesz sobie sprawę, że dla a=1 to równanie nie ma rozwiązań w postaci liczb całkowitych?

Zresztą takie a nie istnieje. http://www.wolframalpha.com/input/?i=x%5E6-Abs%28a%29x%5E4%2B3x%5E2-7%3D0%2C+x+is+integer

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