Помощь - Поиск - Пользователи - Календарь
Полная версия: 8087 Mode
Форум «Всё о Паскале» > Pascal, Object Pascal > Теоретические вопросы
yar11
при запуске
программы
uses crt;
var
s,x:real;
stroka:string;
begin
x:=89;
s:=sin(3*x)+cos(x)/exp(x);
str(s:3:1,stroka);
write(s);
readkey;
end.

выдается ошибка floating point overflow
полагаю, что просто закончились возможности типа real
однако при изменении типа s и x на double выдается другая мне совершенно непонятная ошибка
must be in 8087 mode to compile this
help предлагает дописать в начало {$N+}
все начинает работать
а что это вообще такое для меня так и осталось загадкой
подтолкните в нужном направлении
Altair
ну реал выходит за границы диапазона вот здесь:
x:=89;
s:=sin(3*x)+cos(x)/exp(x);


только представь e^89 ...
yar11
спасибо за помощь, но пока суть да дело нашел ответ в FAQ
правда легче мне от этого не стало
в раздел задачи выкладываю свою нерешенную проблему
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.