[c++] równanie kwadratowe na liczbach ujemnych - jednostka urojona
Ostatnio zmodyfikowano 2017-12-08 20:56
walo Temat założony przez niniejszego użytkownika |
[c++] równanie kwadratowe na liczbach ujemnych - jednostka urojona » 2017-12-07 23:05:57 #include <iostream> #include <math.h>
using namespace std; int main( int argc, char ** argv ) { float a, b, c, delta, x1, x2; cout << "Podaj trzy liczby Twojej funkcji kwadratowej"; cin >> a; cin >> b; cin >> c; if( a == 0 ) cout << "Parametr a nie moze byc rowny 0!" << endl; else delta =( b * b ) - 4 * a * c; if( delta < 0 ) { x1 =( - b - sqrt( delta ) ) /( 2 * a ); x2 =( - b + sqrt( delta ) ) /( 2 * a ); cout << x1 << " " << "i" << endl; cout << x2 << " " << "i" << endl; } else { cout << "Delta nie jest mniejsza od 0."; } return 0; }
Mam problem z tym kodem, mianowicie obojętnie jakie wpisze liczby wyskakuje nan i. Proszę o pomoc! I z góry dziękuje :). |
|
pekfos |
» 2017-12-07 23:19:24 Liczysz pierwiastek z liczby ujemnej. |
|
walo Temat założony przez niniejszego użytkownika |
» 2017-12-07 23:27:52 Czyli z delty dodatniej muszę to obliczyć, tak? Mógłbyś pokazać jak to mniej więcej powinno wyglądać? |
|
pekfos |
» 2017-12-07 23:37:11 Ma wyglądać zgodnie z matematyką. Pierwiastki równania kwadratowego dla ujemnej delty nie składają się z samej części urojonej. |
|
walo Temat założony przez niniejszego użytkownika |
» 2017-12-07 23:49:16 Nie jestem pewien czy dobrze jest teraz, w każdym razie wyniki jakieś tam mi wychodzą. Rzucisz wzrokiem? #include <iostream> #include <math.h>
using namespace std; int main( int argc, char ** argv ) { float a, b, c, delta, x1, x2; cout << "Podaj trzy liczby Twojej funkcji kwadratowej"; cin >> a; cin >> b; cin >> c; if( a == 0 ) cout << "Parametr a nie moze byc rowny 0!" << endl; else delta =( b * b ) - 4 * a * c; if( delta < 0 ) { x1 =( - b - sqrt( - delta ) ) /( 2 * a ); x2 =( - b + sqrt( - delta ) ) /( 2 * a ); cout << x1 << " " << "i" << endl; cout << x2 << " " << "i" << endl; } else { cout << "Delta nie jest mniejsza od 0."; } return 0; }
|
|
pekfos |
» 2017-12-07 23:52:04 Pierwiastki równania kwadratowego dla ujemnej delty nie składają się z samej części urojonej. |
|
|
walo Temat założony przez niniejszego użytkownika |
» 2017-12-08 00:15:50 Nic mi to nie mówi zważając na to, że liczb urojonych jeszcze nie przerabiałem w szkole. Jakby ktoś był tak dobry i wysłał tu poprawnie napisany ten program byłbym niezmiernie wdzięczny. Nie chciałem iść na łatwiznę, ale siedząc bezczynnie do niczego nie dojdę, a szkoła na 7;). |
|
mateczek |
» 2017-12-08 00:21:40 Nic mi to nie mówi zważając na to, że liczb urojonych jeszcze nie przerabiałem w szkole. |
liczb zespolonych. Składowa urojona jest częścią liczby zespolonej z=(2i,4) z liczba zespolona 2i część urojona 4 część rzeczywista kompilator nie wbudowanej arytmetyki dla liczb zespolonych z buta!!! nie policzy Ci wyniku zespolonego jak dasz pierwiastek ujemny. :P Liczyłeś na cud, że to magicznie zadziała?? czy co ?? Skoro nie umiesz liczb zespolonych to nie ma sensu pisać programu. Najpierw musisz się nauczyć o zagadnieniu które chcesz oprogramować. inaczej nie da rady. co do obliczeń na liczbach zespolonych to masz dwie opcje Albo sam zaimplementuj taką możliwość, albo skorzystaj z klasy std::complex. |
|
« 1 » 2 |