Решить биквадратное уравнение - Pascal (7450)
Формулировка задачи:
1)Даны действительные числа а,в,с (а>0).Полностью исследовать биквадратное уравнение ах4+вх2+с=0,т.е. если действительных корней нет,то должно быть выдано сообщение об этом,иначе найти 2 пары равных корней,2 различных корня или 4 различных корняю
2)По координатам вершин четырёхугольника определить,выпуклый он или нет.
3)дано четырёхзначное число.Выснить:
а)является ли сумма его цифр двухзначным числом;
б)больше ли произведение его цифр заданного числа А.
Решение задачи: «Решить биквадратное уравнение»
textual
Листинг программы
uses crt; var a,b,c,x1,x2,x3,x4,t,t1,t2,d:real; begin clrscr; repeat write('a=');readln(a); until a>0; write('b=');readln(b); write('c=');readln(c); d:=(b*b-4*a*c); if d<0 then begin writeln('net resheniy'); readln; exit; end else if d=0 then begin t:=-b/(2*a); if t<0 then begin writeln('net resheniy'); readln; exit; end else if t=0 then begin writeln('resh ur x1=x2=x3=x4=0'); readln; exit; end else if t>0 then begin writeln('x1=x2=',sqrt(t):5:2,' x3=x4=',-sqrt(t):5:2); readln; exit; end; end else if d>0 then begin t1:=(-b+sqrt(d))/(2*a); t2:=(-b-sqrt(d))/(2*a); if (t1>0)and(t2<0)then begin writeln('x1=',sqrt(t1):5:2,' x2=',-sqrt(t1):5:2); readln; exit; end else if (t1<0)and(t2>0)then begin writeln('x1=',sqrt(t2):5:2,' x2=',-sqrt(t2)); readln; exit; end else if (t2>0)and(t1>0) then begin writeln('x1=',sqrt(t1):5:2,' x2=',-sqrt(t1):5:2,' x3=',sqrt(t2):5:2,' x4=',-sqrt(t2):5:2); readln; exit; end; end; end.
Объяснение кода листинга программы
- Используется библиотека crt для работы с консолью.
- Переменные a, b, c, x1, x2, x3, x4, t, t1, t2, d объявлены как real.
- В цикле повторяется чтение значений переменных a, b, c с помощью функции readln().
- Вычисляется значение переменной d как (bb-4a*c).
- Проверяется условие для d: если оно меньше нуля, выводится сообщение
net resheniy
и цикл прерывается. Если d равно нулю, выводятся значения x1, x2, x3, x4 равные 0. Если d больше нуля, выполняются дополнительные проверки. - Если d<0, выводится сообщение
net resheniy
и цикл прерывается. - Если d=0, выводятся значения x1, x2, x3, x4 равные 0.
- Если d>0, вычисляются значения t1 и t2 как (-b+sqrt(d))/(2a) и (-b-sqrt(d))/(2a) соответственно.
- Проверяется условие для t1 и t2: если t1>0 и t2<0, выводится сообщение
x1=x2=
, значения x1 и x2, а также значение t1. Если t1<0 и t2>0, выводится сообщениеx1=x2=
и значения x1 и x2. Если t2>0 и t1>0, выводится сообщениеx1=x2=x3=x4=
, значения x1, x2, x3 и x4. - Если t2>0 и t1<0, выводится сообщение
x1=x2=
и значения x1 и x2. Если t1>0 и t2<0, выводится сообщениеx1=x2=
, значения x1 и x2. Если t1<0 и t2>0, выводится сообщениеx1=x2=x3=x4=
, значения x1, x2, x3 и x4. - Если t2>0 и t1>0, выводится сообщение
x1=x2=x3=x4=
, значения x1, x2, x3 и x4. - Конец программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д