![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| wowka19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 30.11.2011 Репутация: нет Всего: нет |
Необходимо реализовать искусственную нейронную сеть Когнитрон (К. Фукушима).
Сомневаюсь, очень сомневаюсь, что это у меня получилось, но проверить не получается так как программа выводит NAN. Помогите определить, в чем проблема. код на вид сложный, но думаю опытному разобраться не сложно будет почему выскакивает NAN.
|
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
|
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 20 Всего: 121 |
wowka19, используйте assert (http://www.cplusplus.com/reference/clibrary/cassert/assert/) и isfinite (http://en.cppreference.com/w/cpp/numeric/math/isfinite) из стандартной библиотеки для того, чтобы локализовать место, где появляется NaN. Т.е. поставьте побольше этих проверок в коде и запустите программу в дебаг-режиме.
Результатом является комплексное число. Ну это так, занудствую) -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
там должна быть пометка : на библиотеках без поддержки комплексных чисел что к сути проблемы тс никакого отношения не имеет.. и загрязнять лишними деталями потому не имеет смысла.. |
|||
|
||||
| wowka19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 30.11.2011 Репутация: нет Всего: нет |
В моем случае это скорее всего деления 0 на 0. Но я не могу найти это место так как в отладчик не видит глобальный массив Pair layer[3][9].
Работаю в Eclipse. |
|||
|
||||
| borisbn |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
у тебя всего 8 мест, где производится деление. поставь перед каждым из них проверку на 0.
-------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
||||||
|
|||||||
| wowka19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 30.11.2011 Репутация: нет Всего: нет |
c = a / b;
а чем в данном случае должен быть denorm: a, b или c ? или проверять нада оба (a и b)? |
|||
|
||||
| volatile |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 37 Всего: 85 |
||||
|
||||
| wowka19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 30.11.2011 Репутация: нет Всего: нет |
а если использовать isnan для c?
можно ли полагаться на этот макрос? |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
можно, но лучше не доводить до этого. не на каждой платформе/системе/компиляторе есть NaN. на какой-то деление на 0 может привести к снятию программы из задач, на какой-то - к прерыванию (если для него не предусмотрен обработчик, то и к зависанию системы). -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
Вы ничего не перепутали ? а именно целочисленную арифметику с "плавающей".. |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
думаю - нет. на некоторых платформах вообще нет плавающей арифметики и она эмулируется при помощи целочисленной. и потом
п. 5.6 Multiplicative operators а раз UB, то м.б. всё, что угодно. нет ? -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
borisbn, вообщето насколько я знаю, на эту арифметику накладывается другой стандарт, который к стандарту языка отношения не имеет..
но этот вопрос к более просвeщенным Это сообщение отредактировал(а) mes - 28.5.2012, 20:06 |
|||
|
||||
| volatile |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 37 Всего: 85 |
||||
|
||||
| borisbn |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
Специально заинтересовался этим... Оказалось, что чёткие ограничения со ссылкой на внешний стандарт IEC 60559 (о котором Вы и говорили) даёт только стандарт Си. Си++ же (как обычно) "отвечает уклончиво"
Ни одной ссылки на внешний стандарт относительно floating point в Си++ нет. -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
||||
|
|||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |