Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.04.2009, 22:08   #1
Sergey1993s
Новичок
Джуниор
 
Регистрация: 03.04.2009
Сообщений: 1
По умолчанию Помогите решить задачу.

Помогите написать программу для решения кубических уравнений по формуле Кардано.
Вот мой вариант прогрммы, но программа не работает-после ввода коэффициентов уравнения выдаёт ошибку.
Program s;
Var x1,x2,x3,y1,y2,y3,z1,z2,q,p,a,b,c,d :real;
Begin
WriteLn('введите a,b,c');
ReadLn(a);
ReadLn(b);
ReadLn(c);
readln(d);
p:=-b*b/3*a*a + c/a;
q:=2*b/27*a*a*a-b*c/3*a*a+d/a;
z1:=-q/2+sqrt(q*q/4+p*p*p/27);
z2:=-q/2-sqrt(q*q/4+p*p*p/27);
y1:=exp(ln(z1)/3)+exp(ln(z1)/3);
y2:=exp(ln(z1)/3)+exp(ln(z2)/3);
y3:=exp(ln(z2)/3)+exp(ln(z2)/3);
x1:=y1-b/3*a;
x2:=y2-b/3*a;
x3:=y3-b/3*a;
WriteLn(x1:9:3);
WriteLn(x2:9:3);
WriteLn(x3:9:3);
end.
Sergey1993s вне форума Ответить с цитированием
Старый 03.04.2009, 22:44   #2
__STDC__
Участник клуба
 
Аватар для __STDC__
 
Регистрация: 16.03.2009
Сообщений: 1,013
По умолчанию

возможно под логарифмом получается ноль или отрицательное значение? надо в отладчике посмотреть.... или делать проверки на z1 и z2.
я бы советовал делать трассировку и смотреть на каком шаге прога вылетает.. если в строках с логарифмами, то 99% что аргумент <=0

P.S. алгоритм я не проверял.. потом посмотрю, если не получится то что выше написано...
Uguu~

Последний раз редактировалось __STDC__; 03.04.2009 в 22:48.
__STDC__ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите решить задачу Hranitel Помощь студентам 11 09.10.2008 16:25
Помогите решить задачу на C++ TheWanderer Общие вопросы C/C++ 9 08.10.2008 21:16
Помогите решить задачу pantera_88.07 Общие вопросы C/C++ 2 21.02.2008 15:09