fork download
  1. #include <iostream>
  2. #include <cmath>
  3.  
  4. using namespace std;
  5.  
  6. void rozwiaz(float a, float b, float c) {
  7. float delta;
  8. float pierwiastek_delta;
  9. float x1, x2;
  10.  
  11. cout << "\na = " << a << ", b = " << b << ", c = " << c << endl;
  12.  
  13. delta = b * b - 4 * a * c;
  14. cout << "Delta = " << delta << endl;
  15.  
  16. if (delta > 0) {
  17. pierwiastek_delta = sqrt(delta);
  18.  
  19. // algorytm z deltÄ…
  20. x1 = (-b - pierwiastek_delta) / (2 * a);
  21. x2 = (-b + pierwiastek_delta) / (2 * a);
  22.  
  23. cout << "Pierwiastki (delta):" << endl;
  24. cout << "x1 = " << x1 << endl;
  25. cout << "x2 = " << x2 << endl;
  26.  
  27. // sprawdzenie wzorami Viety
  28. cout << "Sprawdzenie Viety:" << endl;
  29. cout << "x1 + x2 = " << x1 + x2
  30. << " (powinno byc " << -b / a << ")" << endl;
  31. cout << "x1 * x2 = " << x1 * x2
  32. << " (powinno byc " << c / a << ")" << endl;
  33. }
  34. else if (delta == 0) {
  35. x1 = -b / (2 * a);
  36. cout << "Jedno rozwiazanie: x = " << x1 << endl;
  37. }
  38. else {
  39. cout << "Brak rozwiazan rzeczywistych" << endl;
  40. }
  41. }
  42.  
  43. int main() {
  44. // test 1
  45. rozwiaz(3, 4, 1);
  46.  
  47. // test 2
  48. rozwiaz(1, 10000, 1);
  49.  
  50. return 0;
  51. }
  52.  
Success #stdin #stdout 0.01s 5328KB
stdin
Standard input is empty
stdout
a = 3, b = 4, c = 1
Delta = 4
Pierwiastki (delta):
x1 = -1
x2 = -0.333333
Sprawdzenie Viety:
x1 + x2 = -1.33333 (powinno byc -1.33333)
x1 * x2 = 0.333333 (powinno byc 0.333333)

a = 1, b = 10000, c = 1
Delta = 1e+08
Pierwiastki (delta):
x1 = -10000
x2 = 0
Sprawdzenie Viety:
x1 + x2 = -10000 (powinno byc -10000)
x1 * x2 = -0 (powinno byc 1)