Kvad.Mod 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. MODULE Kvad;
  2. IMPORT In, Out, Math;
  3. PROCEDURE Do;
  4. VAR a, b, c, D: REAL;
  5. BEGIN
  6. Out.String('Решаем уравнение ax^2 + bx + c = 0'); Out.Ln;
  7. Out.String('Введите a: '); In.Real(a);
  8. Out.String(' Введите b: '); In.Real(b);
  9. Out.String(' Введите c: '); In.Real(c);
  10. IF a # 0.0 THEN
  11. D := b * b - 4.0 * a * c;
  12. IF D < 0.0 THEN
  13. Out.String('Нет решений')
  14. ELSIF D > 0.0 THEN
  15. D := Math.sqrt(D);
  16. Out.String('Два решения: ');
  17. Out.RealFix((- b - D) / (2.0 * a), 0, 6); Out.Ln;
  18. Out.String(' ');
  19. Out.RealFix((- b + D) / (2.0 * a), 0, 6); Out.Ln
  20. ELSE
  21. Out.String('Единственное решение: ');
  22. Out.RealFix(-0.5 * b / a, 0, 6)
  23. END
  24. ELSE (* a = 0 *)
  25. IF b # 0.0 THEN
  26. Out.String('Единственное решение: ');
  27. Out.RealFix(-c / b, 0, 6)
  28. ELSE (* a = b = 0 *)
  29. IF c # 0.0 THEN
  30. Out.String('Нет решений');
  31. ELSE
  32. Out.String('x - любое число')
  33. END
  34. END
  35. END;
  36. Out.Ln
  37. END Do;
  38. BEGIN
  39. Do
  40. END Kvad.