Решение квадратного уравнения с использованием функций - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Задачка:

найти решение квадратного уравнения, используя 3 функции: 1-ая печатает уравнение, 2-ая считает дискриминант, 3-я выводит корни уравнения.

Я в принципе всё написала, но компилятор жалуется на 49-50 строки из-за корня, кажется и с типами всё нормально, но что-то не идёт. Помогииите пожааалуйста
Листинг программы
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <locale.h>
  4. #include <math.h>
  5. void ur(float,float,float);
  6. float disc(float,float,float);
  7. void korni(float,float,float);
  8. int main ()
  9. {
  10. float a,b,c,d;
  11. setlocale(LC_ALL,"russian");
  12. printf("Введите коэффициент a \n");
  13. scanf_s("%f",&a);
  14. printf("Введите коэффициент b \n");
  15. scanf_s("%f",&b);
  16. printf("Введите коэффициент c \n");
  17. scanf_s("%f",&c);
  18. ur(a,b,c);
  19. d=disc(a,b,c);
  20. printf("%.2f\n",d);
  21. korni(a,b,c);
  22. _getch();
  23. return 0;
  24. }
  25. void ur(float a,float b,float c)
  26. {
  27. printf("y=(%.2f)x^2+(%.2f)x+(%.2f)\n",a,b,c);
  28. }
  29. float disc (float a,float b,float c)
  30. {
  31. float disc;
  32. disc=b*b-4*a*c;
  33. return disc;
  34. }
  35. void korni(float a,float b,float c)
  36. {
  37. float x1,x2;
  38. if (disc==0)
  39. {
  40. x1=-b/2*a;
  41. printf("x1=%.2f\n",x1);
  42. }
  43. if (disc>0)
  44. {
  45. x1=(-b+sqrt(disc))/2*a;
  46. x2=(-b-sqrt(disc))/2*a;
  47. printf("x1=%.2f, x2=%.2f",x1,x2);
  48. }
  49. else
  50. printf("Корней нет!");
  51. }

Решение задачи: «Решение квадратного уравнения с использованием функций»

textual
Листинг программы
  1. void korni(float a,float b,float c)
  2. {
  3.     float d = disc(a, b, c);
  4.     float x1,x2;
  5.     if (d==0)
  6.     {
  7.         x1=-b/2*a;
  8.         printf("x1=%.2f\n",x1);
  9.     }
  10.     if (d>0)
  11.     {
  12.         x1=(-b+sqrt(d))/2*a;
  13.         x2=(-b-sqrt(d))/2*a;
  14.         printf("x1=%.2f, x2=%.2f",x1,x2);
  15.     }
  16.     else
  17.         printf("Корней нет!");
  18. }

Объяснение кода листинга программы

  1. В функции korni передаются три аргумента типа float: a, b и c. Эти переменные используются для представления коэффициентов квадратного уравнения вида ax^2 + bx + c = 0.
  2. Внутри функции определяется переменная d с помощью функции disc(a, b, c). Эта переменная представляет собой дискриминант квадратного уравнения.
  3. Если d равно нулю, то уравнение имеет один корень, и этот корень вычисляется и присваивается переменной x1. Затем значение x1 выводится на экран с помощью функции printf.
  4. Если d больше нуля, то уравнение имеет два корня. Они вычисляются с помощью формулы x1 = (-b + sqrt(d))/2*a и x2 = (-b - sqrt(d))/2*a. Затем значения x1 и x2 выводятся на экран с помощью функции printf.
  5. Если d меньше или равно нулю, то выводится сообщение Корней нет! с помощью функции printf.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.778 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы