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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.01.2010, 21:07   #1
Willow
 
Регистрация: 26.05.2009
Сообщений: 4
По умолчанию Ошибка: invalid floating point operation

есть задача
Задано целое A>1. Найдите наименьшее целое неотрицательное k, при котором 5^k>A.
вот так попыталась его решить
Код:
uses crt;
var z,b,a,min:integer;
begin
clrscr;
WRITE('vvedite chislo A>1 ');
readln(a);
if a<1 then begin
write('vvedeno chislo menshe 1, vvedite chislo bolshe 1 ');
readln(a);
b:=round(ln(a)/ln(5));end;
if exp(ln(b)*5)>a then begin
z:=b; end;
z:=b+1;
write('min= ',z);
readln;
end.

В итоге копилится, запукаю. Чило вводится, но после чего выскакивает ошибка invalid floating point operation
Подскажите из-за чего такое сообщение, где я напортачила?

Последний раз редактировалось Willow; 23.01.2010 в 21:23.
Willow вне форума Ответить с цитированием
Старый 23.01.2010, 21:14   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Эта ошибка означает только одно - деление на ноль...
Кстати:
У нас принято оформлять код специальным тэгом - при помощи кнопочки "#".
Только...
И не значком #.
И не РНР-кодом.
И не значком цитаты.
И не собственными "ручками".
Рекомендую. Помимо общих правил форума есть и дополнения к ним в каждом разделе...
Модератор
mihali4 вне форума Ответить с цитированием
Старый 23.01.2010, 21:22   #3
Willow
 
Регистрация: 26.05.2009
Сообщений: 4
По умолчанию

исправилась по оформлению
только я не вижу где оно тут делит на ноль
Willow вне форума Ответить с цитированием
Старый 24.01.2010, 18:42   #4
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Цитата:
только я не вижу где оно тут делит на ноль
Ну например нельзя считать ln(0)...
У вас написано, что нужно "целое A>1", а проверяется чтоб было "A>=1"...
И получается что b=0 и ln(b) - ошибка...

Да и вообще проверка на ввод непредусмотрительная - а если второй раз тоже неправильное число введут?
Цитата:
Код:
Begin
ClrScr;
Write('‚ўҐ¤ЁвҐ зЁб«® "*" (楫®Ґ, Ў®«миҐ Ґ¤Ё*Ёжл):  ');
ReadLn(a);
While a<=1 Do
        Begin
        Write('ЌҐўҐа*л© ўў®¤. ‚ўҐ¤ЁвҐ 楫®Ґ зЁб«® Ў®«миҐ Ґ¤Ё*Ёжл:  ');
        ReadLn(a);
        End;

А обязательно именно таким странным способом делать? =\\
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вылезает ошибка with massage 'Invalid floating point operation' подскажите как устранить. Herly Помощь студентам 2 09.01.2010 18:56
s not a valid floating point value prod87 Помощь студентам 1 02.12.2009 20:57
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