Как писать формулы в Free Pascal???

Форум для изучающих FPC и их учителей.

Модератор: Модераторы

Как писать формулы в Free Pascal???

Сообщение Анна Бак » 30.10.2014 17:16:27

Всем доброго времени суток.
В книге Алексеев Е. Р., Чеснокова О. В., Кучер Т. В. - Free Pascal и Lazarus(2010), есть пример такой программы:

Код: Выделить всё
var a, b, c, d, r, s, t, p, q, ro, fi, x1, x2, x3, u, v, h, g: real;
begin
//Ввод коэффициентов кубического уравнения.
write(‘a=’); readln(a);
write(‘b=’); readln(b);
write(‘c=’); readln(c);
write(‘d=’); readln(d);
//Расчёт коэффициентов канонического уравнения по x*x*x+r*x*x+s*x+t=0.
r:=b/a; s:=c/a; t:=d/a;
//Вычисление коэффициентов приведённого уравнения y*y*y+p*y+q=0.
p:=(3*s-r*r)/3;
q:=2*r*r*r/27-r*s/3+t
//Вычисление дискриминанта кубического уравнения.
d:=(p/3)*sqr(p/3)+sqr(q/2);
//Проверка знака дискриминанта,
//ветка then реализует формулы 3.5,
//ветка else – формулы 3.4
if d<0 then
begin
ro:=sqrt(-p*p*p/27);
//Следующие два оператора реализуют расчёт угла fi,
//сначала вычисляется величина косинуса угла,
//затем вычисляется его арккосинус через арктангенс.
fi:=-q/(2*ro);
fi:= pi/2-arctan(fi/sqrt(1-fi*fi));
//Вычисление действительных корней уравнения x1, x2 и x3.
x1:=2*exp(1/3*ln(ro))*cos(fi/3)-r/3;
x2:=2*exp(1/3*ln(ro))*cos(fi//3+2*pi/3)-r/3;
x3:=2*exp(1/3*ln(ro))*cos(fi//3+4*pi/3)-r/3;
writeln(‘x1=’,x1:1:3,’_x2=’,x2:1:3, ’_x3=’,x3:1:3);
end
else
begin
//Вычисление u и v с проверкой знака
//подкоренного выражения.
if –q/2+sqrt(d)>0 then
u:=exp(1/3*ln(-q/2+sqrt(d)))
else
if –q/2+sqrt(d)<0 then
u:=-exp(1/3*ln(abs(-q/2+sqrt(d))))
else
u:=0;
if –q/2-sqrt(d)>0 then
v:=exp(1/3*ln(-q/2-sqrt(d)))
else
if –q/2-sqrt(d)<0 then
v:=-exp(1/3*ln(abs(-q/2-sqrt(d))))
else
v:=0;
// Вычисление действительного корня кубического уравнения.
x1:=u+v-r/3;
// Вычисление действительной и
//мнимой части комплексных корней.
h:=-(u+v)/2-r/3;
g:=(u+v)/2*sqrt(3);
writeln(‘x1=’,x1:1:3,’_x2=’,h:1:3,’+i*’,g:1:3,
‘_x3=’,h:1:3,’-i*’,g:1:3);
end
end.


Вместо цифр 3.4 и 3.5 нужно написать формулы.
А как это сделать я не знаю.
Кто знает ПОДСКАЖИТЕ!!!
P.S. Формулы представлены ниже.
Вложения
Формула 3.5.jpg
Формула 3.5.jpg (9.88 КБ) Просмотров: 7466
Формула 3.4.jpg
Формула 3.4.jpg (7.13 КБ) Просмотров: 7466
Анна Бак
новенький
 
Сообщения: 13
Зарегистрирован: 11.02.2014 13:23:09

Re: Как писать формулы в Free Pascal???

Сообщение Sharfik » 30.10.2014 17:30:01

Тебе модуль math в uses надо добавить. Открой его (ctrl удерживая по нему можно кликнуть) и там будут функции корней, косинусов и т.п.
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 763
Зарегистрирован: 20.07.2013 01:04:30

Re: Как писать формулы в Free Pascal???

Сообщение Анна Бак » 31.10.2014 21:00:51

Sharfik писал(а):Тебе модуль math в uses надо добавить. Открой его (ctrl удерживая по нему можно кликнуть) и там будут функции корней, косинусов и т.п.


СПАСИБО БОЛЬШОЕ!!! :D :D :D
Анна Бак
новенький
 
Сообщения: 13
Зарегистрирован: 11.02.2014 13:23:09


Вернуться в Обучение Free Pascal

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17

Рейтинг@Mail.ru