Witam, czy mógłby mi ktoś poprawić ten kod? Bo nie do końca działa tak jak powinno a się pogubiłem :(
// Wczytanie bibliotek
#include <iostream>
#include <math.h>
using namespace std;
int main(int argc, char* argv[])
{
// zainicjowanie potrzebnych zmiennych
int a, b, c;
int delta;
cout<<"Wprowadz liczbe a: \n";
cin>>a;
cout<<"Wprowadz liczbe b: \n";
cin>>b;
cout<<"Wprowadz liczbe c: \n";
cin>>c;
delta = ((b*b)-(4*a*c));
if(a != 0) // jeśli a nie jest równe 0
{
if(delta > 0) // jeśli delta jest większa 0
{
cout<<"\nx1: "<<((-b-sqrt(delta))/(2*a));
cout<<"\nx2: "<<((-b+sqrt(delta))/(2*a))<<endl; //endl to manipulator strumienia: wstawia znak nowej linii i wymusza zapisanie danych z bufora
}
else if(delta == 0) // w przeciwnym przypadku gdy delta jest równa 0
{
cout<<"x0: "<<(-b)/(2*a)<<endl;
}
else if(delta < 0) // w przeciwnym przypadku gdy delta jest mniejsza od 0
{
cout<<"Brak miejsc zerowych"<<endl;
}
}
else // w przeciwnym przypadku (gdy a nie jest równe 0)
{
cout<<"To nie jest funkcja kwadratowa"<<endl;
}
return 0;
}
Program mi cały czas liczy dwa miejsca zerowe mimo, że podstawiam specjalnie liczy żeby delta wyszła np równa 0