fork download
  1. #include <iostream>
  2. #include <cmath>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7. double a, b, c;
  8. double delta, pdelta;
  9. double x1, x2;
  10.  
  11. // ===== PRZYKŁAD 1 =====
  12. a = 3;
  13. b = 4;
  14. c = 5;
  15.  
  16. cout << "Przyklad 1: 3x^2 + 4x + 5 = 0" << endl;
  17.  
  18. delta = b*b - 4*a*c;
  19.  
  20. if (delta >= 0) {
  21. pdelta = sqrt(delta);
  22.  
  23. // Pierwiastek x1 – stabilna postać
  24. if (b >= 0)
  25. x1 = (-b - pdelta) / (2*a);
  26. else
  27. x1 = (-b + pdelta) / (2*a);
  28.  
  29. // Drugi pierwiastek z iloczynu pierwiastków
  30. x2 = c / (a * x1);
  31.  
  32. cout << "x1 = " << x1 << endl;
  33. cout << "x2 = " << x2 << endl;
  34. } else {
  35. cout << "Brak pierwiastkow rzeczywistych" << endl;
  36. }
  37.  
  38. cout << endl;
  39.  
  40. // ===== PRZYKŁAD 2 =====
  41. a = 1;
  42. b = 10000;
  43. c = 1;
  44.  
  45. cout << "Przyklad 2: x^2 + 10000x + 1 = 0" << endl;
  46.  
  47. delta = b*b - 4*a*c;
  48.  
  49. if (delta >= 0) {
  50. pdelta = sqrt(delta);
  51.  
  52. // Pierwszy pierwiastek – stabilna postać
  53. if (b >= 0)
  54. x1 = (-b - pdelta) / (2*a);
  55. else
  56. x1 = (-b + pdelta) / (2*a);
  57.  
  58. // Drugi pierwiastek obliczony ze wzoru c / (a*x1)
  59. x2 = c / (a * x1);
  60.  
  61. cout << "x1 = " << x1 << endl;
  62. cout << "x2 = " << x2 << endl; // SAMO dojdzie do 0
  63. } else {
  64. cout << "Brak pierwiastkow rzeczywistych" << endl;
  65. }
  66.  
  67. return 0;
  68. }
  69.  
Success #stdin #stdout 0.01s 5268KB
stdin
Standard input is empty
stdout
Przyklad 1: 3x^2 + 4x + 5 = 0
Brak pierwiastkow rzeczywistych

Przyklad 2: x^2 + 10000x + 1 = 0
x1 = -10000
x2 = -0.0001