Cześć wszystkim!
Tak jak ten dział wskazuje, jestem newbie jeśli chodzi o programowanie. Wziąłem się za język C++ i takowym właśnie jest napisany prosty program, który zaraz wam przedstawię. Problem polega na tym, że z jakiegoś powodu ten program zawsze licząc deltę wyrzuca mi wartość ujemną i tu pytanie do Was - dlaczego?
I jeszcze jedna uwaga. Robiąc to na uczelnianym komputerze było wszystko w porządku, liczyło jak trzeba. Uruchamiłem to na swoim prywatnym komputerze (Visual Studio) i wtedy zaczęło liczyć źle. Nie wiem w czym problem.
Kod:
#include<iostream>
using namespace std;
int main(){
double a, b, c, delta;
cout << "Podaj a ";
cin >> a;
cout << "Podaj b ";
cin >> b;
cout << "Podaj c ";
cin >> c;
delta = b*b - 4 * a*c;
cout << "delta = " << delta << endl;
double x, x1, x2;
if (delta > 0){
x1 = (b*(-1) - sqrt(delta)) / (2 * a);
cout << "x1 = " << x1 << endl;
x2 = (b*(-1) + sqrt(delta)) / (2 * a);
cout << "x2 = " << x2 << endl;
}
else if (delta < 0){
cout << "Gdy delta wychodzi ujemna nie ma rozwišzań w liczbach rzeczywistych" << endl;
}
else {
x = (b*(-1) - sqrt(delta)) / 2 * a;
cout << "x1 = " << x << endl;
}
system("pause");
}