Нужен код решения квадратного уравнения по теореме Виета - Turbo Pascal
Формулировка задачи:
Пожалуйста дайте код решения квадратного уравнения по теореме Виета.
Turbo Pascal.
Спасибо заранее.
Решение задачи: «Нужен код решения квадратного уравнения по теореме Виета»
textual
Листинг программы
uses crt; var a,b,c,x1,x2,d:real; begin clrscr; writeln('Введите коэффициенты a,b,c уравнения, a<>0:'); repeat write('a=');readln(a); until a<>0; write('b=');readln(b); write('c=');readln(c); b:=-b/a; c:=c/a; {проведем вне программы преобразования x1+x2=-b; x1*x2=c; x1*(-x1-b)=c; x1^2+b*x1+c=0} d:=b*b-4*c; if d<0 then begin writeln('Уравнение не имеет решений!'); readln; exit; end; x1:=(-b+sqrt(d))/2; x2:=x1+b; write('x1=',x1:0:2,' x2=',x2:0:2); readln end.
Объяснение кода листинга программы
- Создается переменная
a
и присваивается ей значение, введенное пользователем. - Создается переменная
b
и присваивается ей значение, введенное пользователем. - Создается переменная
c
и присваивается ей значение, введенное пользователем. - Вычисляется значение переменной
b
по формулеb = -b/a
. - Вычисляется значение переменной
c
по формулеc = c/a
. - Вычисляется значение переменной
x1
по формулеx1 = (-b + sqrt(d))/2
. - Вычисляется значение переменной
x2
по формулеx2 = x1 + b
. - Выводится на экран значение переменной
x1
. - Выводится на экран значение переменной
x2
. - Запрашивается у пользователя ввод значений коэффициентов
a
,b
иc
. - Проверяется условие
a <> 0
. Если оно выполняется, то цикл повторяется, иначе программа переходит к следующему шагу. - Вычисляется значение переменной
d
по формулеd = b*b - 4*c
. - Проверяется условие
d < 0
. Если оно выполняется, то выводится сообщение об отсутствии решений, программа завершается и пользователь выходит из программы. - Если условие
d < 0
не выполняется, то выводится на экран значение переменнойd
. - Выводится на экран сообщение о том, что уравнение имеет решения.
- Выводится на экран значение переменной
x1
. - Выводится на экран значение переменной
x2
. - Программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д