Równanie kwadratowe z niewiadomą y

0

**Treść zadania:
**
Jeżeli równanie kwadratowe z niewiadomą y ma jeden dwukrotny pierwiastek rzeczywisty (^ = 0), to równanie dwukwadratowe (z niewiadomą x) może mieć dwa dwukrotne pierwiastki rzeczywiste, jeden czterokrotny pierwiastek rzeczywisty (x = 0) lub też może nie mieć pierwiastków rzeczywistych.

Studiuje matematykę, dostaliśmy takie zadanie i nie bardzo wiem jak się za nie zabrać. Jakieś wskazówki co do jego wykonania?

0

Jak to kwadratowe ma się do tamtego dwukwadratowego?
Bo tak jak podałeś to brzmi jako: - Jeżeli Jasio ma rower to jakiego koloru majtki Joasi?

0

To zadanie pochodzi z książki Od matematyki do programowania. Treść jego rozwiązania masz poniżej, ale możesz pobrać sobie też FTP ze strony Helion jeżeli będziesz miał inne zadania matematyczne w C++ możliwe, że pochodzić będą właśnie z tej książki więc rozważ zakup, bo same przykłady dostępne na FTP nie są opisane co do treści danego zadania.

#include <iostream>
#include <math.h>
using namespace std;

int main(){
    system("chcp 1250");
    cout << "Rozwiązywanie równania dwukwadratowego ax^4+bx^2+c = 0\n";
    cout << "Podaj współczynniki równania oddzielone odstępami: ";
    double a, b, c;
    cin >> a >> b >> c;
    if (a != 0) {
        double delta = b*b-4*a*c;
        cout << "Pierwiastki równania:\n";
        if (delta > 0) {
            double y1 = (-b-sqrt(delta))/(2*a);
            double y2 = (-b+sqrt(delta))/(2*a);
            if (y1 > 0) {
                cout << "x = " << -sqrt(y1) << endl;
                cout << "x = " <<  sqrt(y1) << endl;
            }
            if (y2 > 0) {
                cout << "x = " << -sqrt(y2) << endl;
                cout << "x = " <<  sqrt(y2) << endl;
            }
            if ((y1 == 0) || (y2 == 0))
                cout << "x = 0 - pierwiastek dwukrotny\n";
            if ((y1 < 0) && (y2 < 0))
                cout << "Równanie nie ma pierwiastków rzeczywistych.\n";
        } else if (delta == 0) { // pierwiastek dwukrotny
            double y = -b/(2*a);
            if (y > 0) {
                cout << "x = " << -sqrt(y) << " - pierwiastek dwukrotny\n";
                cout << "x = " <<  sqrt(y) << " - pierwiastek dwukrotny\n";
            }
            if (y == 0) cout << "x = 0 - pierwiastek czterokrotny\n";
            if (y < 0)
                cout << "Równanie nie ma pierwiastków rzeczywistych.\n";
            } else // delta ujemna
                cout << "Równanie nie ma pierwiastków rzeczywistych.\n";
    } else
        cout << "a = 0, równanie nie jest równaniem dwukwadratowym.\n";
    system("pause");
    return 0;
}

Wywal jedynie math.h i zamień na cmath. Pozmieniaj sobie treść z logicznej przyczyny...

0

Dragon taka właśnie była treść zadania nic nie zmieniałem...
Poza samym wykonaniem miałem problem z prawidłowym zrozumieniem, a bez tego ani rusz to prawidłowego rozwiązania.

Dzięki Przemol i za zadanie i wskazanie książki.

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