invalid floating point operation



Invalid floating point operation как исправить

Автор сергей сидоренко задал вопрос в разделе Другие языки и технологии

Invalid floating point operation и получил лучший ответ

Ответ от Йа НяшкО XD[гуру]
1. lgw, Sw, Phi - массивы. При обращении к ним указывайте индексы. lgw[ i ]:=lw; Sw[ i ]:=20*lg10(Wm); Phi[ i ]:=Arctan(b/a)*d; writeln(w:12:5, lgw[ i ]:6:3, Wm:12:5, Sw[ i ]:12:5, Phi[ i ]:12:5); 2. Инициализируйте переменные перед использованием. w,h,u - вы из них что-то хотите вычислить, а они равны 0. Откуда и получается, a = 0, b = 0 и ваш логарифм тоже вычисляется от 0. А его не существует и вываливается ошибка Invalid floating point operation. Исправляйте.

Ответ от Единственный[гуру]
Мой компиль не ругается на 36 строку.
Зато нашёл несколько ошибок. Должно быть так:
(61) lgw:=lw;
(66) Sw:=20*lg10(Wm);
(67) Phi:=Arctan(b/a)*d;
(70) writeln(w:12:5, lgw:6:3, Wm:12:5, Sw:12:5, Phi:12:5);
Возникнут вопросы или понадобится компиль - пиши на мыло или вконтакт id12702046, с пометкой "question/43296297"
Успехов!

Ответ от Максим Пунченко[гуру]
Ошибка появляется при 2 итерации, т. к. а = 0, а натуральный логарифм от 0 не существует

Ответ от Jurijus Zaksas[гуру]
Первое, что бросается в глаза - объявление переменных перед подпрограммами и их совпадение с формальными параметрами.
Ну и вот:
lg10:=ln(a)/ln(10.0); - учитывай, что тут а должно быть обязательно больше нуля, поставь проверку, кидай ошибку.

Ответ от %username%[новичек]
Читай что такое отладчик и отладка...

Ответ от Александр Кузьмин[гуру]
Нету натурального логарифма от нуля!

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Invalid floating point operation
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*