![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 | |
Пользователь
Регистрация: 27.03.2016
Сообщений: 20
|
![]()
Помогите найти ошибку. Числа генерируются с помощью ЛКГ. Нужно получить "С" - коэффициент корреляции. Сама формула в прикрепленном файле. U, V - элементы двух последовательностей. Их начальный элемент(объявлены до цикла for - различны), т.е последовательности будут различны. Коэффициент должен получаться от -1 до 1, у меня же выводит -1.#IO
Цитата:
|
|
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 23.01.2016
Сообщений: 608
|
![]()
Прицеп потеряли, вот критерий сериальной корреляции из Кнута:
![]() всегда в ЦОС делал по нему ) |
![]() |
![]() |
![]() |
#3 |
C/C++, Asm
Участник клуба
Регистрация: 02.03.2010
Сообщений: 1,323
|
![]()
может znam у тебя отрицательный получается?
кстати, поменяй % 4294967296 на & 0x0FFFFFFFF, а то меня напрягает немного. kutani, твоя формула выглядит как самокорреляция, а у тс взаимная корреляция двух полследовательностей. и формульной ошибки я там не вижу. Последний раз редактировалось f.hump; 27.03.2016 в 12:37. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 23.01.2016
Сообщений: 608
|
![]()
Оставлю это здесь http://computersbooks.net/index.php?...=20012&page=45
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 27.03.2016
Сообщений: 20
|
![]() |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 27.03.2016
Сообщений: 20
|
![]()
в каком именно месте, а то я нубас) и есть ли принципиальная разница? я же мог 2^32 записать через pow, но это лишняя операция. Я думаю, что у меня где-то происходит переполнение, но найти не могу
|
![]() |
![]() |
![]() |
#7 | |
Пользователь
Регистрация: 27.03.2016
Сообщений: 20
|
![]()
не должно быть, в формуле все в квадрат возводится, не может быть отрицательных чисел.
UPD: знаменатель действительно отрицательный, хотя это невозможно. Цитата:
UPD: изменил количество генерируемых эл-ов, теперь оно четное, всегда получается коэффициент. Но он должен быть в пределах от -1..1, а у меня 10ки тыясч, значит где-то в формуле идет ошибка Последний раз редактировалось ilyakonst; 27.03.2016 в 15:03. |
|
![]() |
![]() |
![]() |
#8 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]() Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 27.03.2016
Сообщений: 20
|
![]()
проверил, переполнений нет нигде.
все высчитывается |
![]() |
![]() |
![]() |
#10 |
C/C++, Asm
Участник клуба
Регистрация: 02.03.2010
Сообщений: 1,323
|
![]()
Аватар прав.
у тебя там в каждой операции целочисленные переполнения. сделай c1 = 0, c2 = 0, c3 = 0, z1 = 0, z2 = 0, z3 = 0, z4 = 0, chisl, znam даблом и в аккумуляторах делай каст (double)U, (double)V |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Критерий серий | Veryn4ik1993 | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 18.01.2014 11:43 |
ВПР критерий | Artem_85 | Microsoft Office Excel | 10 | 08.11.2012 13:59 |
критерий Сильвестра | Roman | Фриланс | 1 | 19.04.2012 19:02 |
критерий Сильвестра | Roman | Общие вопросы C/C++ | 4 | 12.04.2012 02:30 |
решение урав-й типа Vn=a+b/Vg и определение коэф.корреляции | serjufa | Помощь студентам | 2 | 11.11.2010 06:32 |