fork(1) download
  1. #include <iostream>
  2. #include <math.h>
  3. using namespace std;
  4. //Задача А48:
  5. //Даны действительные числа a, b, c (a≠0). Выяснить, имеет ли уравнение ax² + bx + c = 0 действительные корни.
  6. //Если корни имеются, то найти их. В противном случае ответом должно служить сообщение, что корней нет.
  7. int main() {
  8. double a, b, c, D, d, x0, x1, x2; //Параметры, дискриминант и его корень, возможные корни уравнения
  9. printf("ax^2+bx+c=0 \n");
  10. printf("введите параметр 'a': \n");
  11. scanf("%lf", &a);
  12. if(a == 0)
  13. {
  14. printf("неверный ввод \n");
  15. }
  16. else
  17. {
  18. printf("введите параметр 'b': \n");
  19. scanf("%lf", &b);
  20. printf("введите параметр 'c': \n");
  21. scanf("%lf", &c);
  22. D=(b*b)-4*(a*c);
  23. if(D<0)
  24. {
  25. printf("уравнение не имеет действительных корней");
  26. }
  27. else if(D==0)
  28. {
  29. printf("уравнение имеет один действительный корень:' \n");
  30. x0 = -b/(2*a);
  31. printf("x=%5.2lf \n", x0);
  32. }
  33. else
  34. {
  35. printf("уравнение имеет два действительных корня: \n");
  36. d=sqrt(D);
  37. x1= (-b + d )/2;
  38. x2= (-b - d)/2;
  39. printf("x1=%5.2lf \n",x1);
  40. printf("x2=%5.2lf \n",x2);
  41. }
  42. }
  43. return 0;
  44. }
Success #stdin #stdout 0s 3344KB
stdin
Standard input is empty
stdout
ax+bx+c=0 
vvedite parametr 'a' ne ravnuy nulyu: 
vvedite parametr: 'b': 
vvedite parametr 'c': 
uravnenenie ne imeet deystvitelnuh korney