Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/30: Рейтинг темы: голосов - 30, средняя оценка - 4.60
1 / 1 / 1
Регистрация: 19.07.2009
Сообщений: 53
1

Invalid floating point operation

22.06.2010, 16:08. Показов 5565. Ответов 5
Метки нет (Все метки)

определяю массивы, заполняю нулями:

C++
1
2
3
4
float B1[200], B2[200];
 
for(int i=0;i<200;i++)
{B1[i]=0, B2[i]=0;}
В ходе работы программы массивы заполняются ненулевыми значениями, но не до конца.
Необходимо определить до какого элемента оба массива хоть чем-то заполнены,
и найти номер элемента который у обоих массивов в первые встретится равный нулю:

C++
1
2
3
4
5
6
7
for(int i=0, end = -1; i!=end; i++)
{
        if(B1[i]==0 && B2[i]==0)
        {
         end = i;
        }
}
Ругань идёт уту "if(B1[i]==0 && B2[i]==0)" с сообщением Invalid Invalid floating point operation
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.06.2010, 16:08
Ответы с готовыми решениями:

Invalid floating point operation
Как отладить такую ошибку? В функции достаточно много различных вычислений, на ее вход каждый такт...

Ошибка 'invalid floating point operation'
Здравствуйте. сделал задачу, при вводе значения &quot;0&quot; выдает ошибку, и выкидывает с программы. с чем...

Invalid floating point operation в Builder 6.0
Здравствуйте. У меня проблема. Несколько месяцев назад делал программы для диплома в Borland C++...

Float - Invalid floating point operation
есть функция float TForm1::Calc( float f2, float f1, float f3, float f4, float C2, float af2,...

5
2822 / 1631 / 252
Регистрация: 03.12.2007
Сообщений: 4,222
22.06.2010, 16:14 2
Так в цикле же i никогда не будет равно end, просто за пределы массива вылезает.
0
1 / 1 / 1
Регистрация: 19.07.2009
Сообщений: 53
22.06.2010, 16:24  [ТС] 3
Пример:
i = 0 1 2 3 5 6 7
B1: 3 4 5 6 0 0 0
B2: 5 4 7 1 7 0 0
как только i дошло до 6-ти if выполнился end приравнивается к i, и происходит выход из цикла.

Что вы имеете ввиду ? И меня больше интересует - как устранить ошибку с Invalid Invalid floating point operation.
0
2822 / 1631 / 252
Регистрация: 03.12.2007
Сообщений: 4,222
22.06.2010, 17:16 4
end приравнивается к i, потом происходит i++, а потом уже (перед следующей итерацией) сравнение. Таким образом, условие всегда верно. Break тут не помешал бы.
Думаю, что получается access violation при загрузке float, который считается за invalid floating point operation.
0
Retired
7723 / 2555 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
22.06.2010, 17:31 5
И это
C++
1
2
3
4
float B1[200], B2[200];
 
for(int i=0;i<200;i++)
{B1[i]=0, B2[i]=0;}
Можно заменить на это
C++
1
float B1[200] = {0}, B2[200] = {0};
0
1 / 1 / 1
Регистрация: 19.07.2009
Сообщений: 53
22.06.2010, 17:39  [ТС] 6
Благодарю Somebody.
Пал от собственной невнимательности. Теперь всё работает.
Inadequate спасибо за грамотное сокращение, тоже применил.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.06.2010, 17:39

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Объясните ошибку - Invalid floating point operation
Invalid floating point operation что это за ошибка???? очень нужно!!

Ошибка invalid floating point operation в cppWebBrowser
Добрый день! Столкнулся с появлением ошибки &quot;invalid floating point operation&quot; при выполнении кода ...

Invalid Floating Point Operation при выводе графика
Привет и доброго времени суток. вообщем создавая курсовую прогу, она считает изгиб и прогибы...

Invalid floating point operation при попытке нарисовать график
Возникла следующая проблема: По непонятной мне причине на строке ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.