ok, skonczylem z tym zadaniem.
Rozwiazalem go tak:
/*
Wczytać współczynniki rzeczywiste a, b, c równania ax2+bx+c=0. Wydrukować wszystkie rozwiązania tego równania,
przy założeniu, że a nie jest równe zeru (nie trzeba tego sprawdzać).
*/
#include <iostream>
#include <cmath>
using namespace std;
float wczytywanie(float&, float&, float&);
float rownanie_delta(float, float, float);
void wynik(float, float, float, float);
int main()
{
float a, b, c, delta;
wczytywanie(a, b, c);
delta = rownanie_delta(a, b, c);
wynik(delta,a,b,c);
system("pause");
return 0;
}
float wczytywanie(float& a, float& b, float& c)
{
cout << "Podaj wspolczynniki rownania, a = ";
cin >> a;
cout << "b = ";
cin >> b;
cout << "c = ";
cin >> c;
return a, b, c;
}
float rownanie_delta(float a, float b, float c)
{
float wynik;
wynik = b * b - 4 * a * c;
return wynik;
}
void wynik(float delta, float a, float b, float c)
{
if (delta <0)
{
cout << "Delta = " << delta << endl;
cout << "Rownanie nie ma rozwiazan" << endl;
}
else if (delta == 0)
{
float x;
x = -b / (2 * a);
cout << "Delta = " << delta << endl;
cout << "rownanie ma jedno rozwiazanie czyli x = " << x << endl;
}
else
{
float x1, x2;
x1 = (-b - sqrt(delta)) / (2 * a);
x2 = (-b + sqrt(delta)) / (2 * a);
cout << "Delta = " << delta << endl;
cout << "Rownianie ma dwa rozwiazania, x1 = " << x1 << " i x2 =" << x2 << endl;
}
}
Jestem swiadom ze mozna by to wszystko zapisac w funkcji main() oszczedzajac kilkanacie linijek kodu, ale to dla cwiczenia.
Chetnie jednak p[oslucham rad od Was co mozna by poprawic
pozdrawiam