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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2010, 18:45   #1
maziLa
Пользователь
 
Регистрация: 08.12.2008
Сообщений: 30
Стрелка Invalid floating point operation на паскале

Есть код программы:
Код:
{$N+}
Program LR4_2;
Uses CRT;
var r,b,n,i,k,q,m,flag: LongInt;
    a,g:array[0..100] of Extended;

Begin
ClrScr;
WriteLn ('Введите n,b :');ReadLn(n,b);
q:=n-1;
repeat
q:=q div 2;
inc(k);
until (q mod 2)<>0;
r:=trunc(exp(q*ln(b))) mod n;
i:=0;
a[i]:=trunc(exp(i*ln(2)));
g[i]:=r;
repeat
If ((i=0) and (r=1)) or ((i>0) and (r=n-1))
then flag:=1;
inc(i);
r:=r*r mod n;
a[i]:=trunc(exp(abs(i*ln(2))));
g[i]:=r;
until (i>=k);
WriteLn('Степень    Вычет ');
For i:=0 to k-1 do
WriteLn(a[i]:3:0,'*',q:3,'  ',g[i]:8:0);
If flag=0 then
WriteLn('n - Составное') else
WriteLn('Ничего определённо сказать нельзя');
ReadLn;
END.
И есть ошибка Invalid floating point operation, которая появляется в данном месте: a[i]:=trunc(exp(i*ln(2)));
При вводе маленьких чисел (скажем до 60) программа работает нормально при числах больше 100 выдаёт такую ошибку.
maziLa вне форума Ответить с цитированием
Старый 26.05.2010, 18:47   #2
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Посмотри опции компилятора в плане Сопроцессора и его эмуляции, Extended работает только с сопроцессором...
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума Ответить с цитированием
Старый 26.05.2010, 18:57   #3
maziLa
Пользователь
 
Регистрация: 08.12.2008
Сообщений: 30
По умолчанию

Та тут дело не в этом
Можно обойтися и без extended...
maziLa вне форума Ответить с цитированием
Старый 26.05.2010, 19:37   #4
Vikenty
Заслуженный флудер
Участник клуба
 
Аватар для Vikenty
 
Регистрация: 31.03.2010
Сообщений: 1,473
По умолчанию

Обрабатывай исключения
try except end;

Последний раз редактировалось Vikenty; 26.05.2010 в 20:45.
Vikenty вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
invalid floating point operation Mikhail91 Общие вопросы C/C++ 5 24.03.2010 00:05
Ошибка: invalid floating point operation Willow Помощь студентам 3 24.01.2010 18:42
invalid floating point operation mosq Общие вопросы Delphi 7 01.11.2009 13:28
Invalid floating point operation Skytis Помощь студентам 3 07.05.2008 12:16
Возникает ошибка Invalid floating point operation Иринкаа Помощь студентам 3 29.11.2007 22:10