program funkcja kwadratowa obiektowo... problem z dziwnym przedrostkiem do wyników nan
Ostatnio zmodyfikowano 2013-12-11 12:02
lewozmywak Temat założony przez niniejszego użytkownika |
program funkcja kwadratowa obiektowo... problem z dziwnym przedrostkiem do wyników nan » 2013-12-10 23:41:03 #include <iostream> #include <cmath>
using namespace std;
class rownaniekwad { private: int a; int b; int c; int delta; float x1, x2, x0; public: rownaniekwad() { a = 0; b = 0; c = 0; x1 = 0; x2 = 0; delta = 0; } rownaniekwad( int a, int b, int c ) { rownaniekwad::a = a; rownaniekwad::b = b; rownaniekwad::c = c; } double odelta() { return delta = pow( b, 2 ) -( 4 * a * c ); } float miejscez() { if( delta > 0 ) { x1 =( - b - sqrt( delta ) ) /( 2 * a ); x2 =( - b + sqrt( delta ) ) /( 2 * a ); } } float obliczm() { if( delta == 0 ) cout << "delta jest 0"; else if( delta > 0 ) { miejscez(); cout << x1 << " " << x2; } else cout << "delta jest minusowa"; } };
int main() { rownaniekwad p( 1, - 6, - 7 ); cout << p.odelta() << endl; cout << p.obliczm(); return 0; }
Program jako tako dziala prawdilowo,wynik mam prawidlowy dla zestawu a=1, b=-6, c=-7 to jest x1=-1 x2=7 tylko ze przy 7 mam dziwny dopisek nan ... co to znaczy? czyli wynik kompilacji tak wyglada: moze mi ktoś rozjaśnić co to jest? |
|
docentpp |
» 2013-12-11 00:32:14 |
|
Adik80 |
» 2013-12-11 12:02:59 moze dlatego bo nie zwracasz wartosci w obliczm |
|
| « 1 » |