-
- Финиш)) ТС, давайте с самого начала. И прежде всего терминология. Что надо узнать и что такое расстояние. Может ли оно быть разным при измеренях рыбы от хвоста к голове и от головы к хвосту. Чем оно отличается от заполнения и вычисления свободного Олдфаг(6 знак., 24.05.2016 09:47,
)
- l = ((t >= h) ? (t-h) : (t+n-h+1)) - ferrum(23.05.2016 23:22 - 24.05.2016 08:24)
- Беззнаковым вычитанием безо всяких масок: r = (unsigned)(h - t) - MBedder(23.05.2016 16:59)
- дык то для степени (1<<sizeoff(unsigned)) - IBAH(23.05.2016 17:07 - 17:13)
- Не ипи моск. r = |(h - t)|. Проверяется численно - допустим, буфер на 1234 элемента, h = 1231, t = 1, т.е. r = 1231-1=1230. Теперь поменяем хвост с головой, т.е. r = 1-1231=-1230, отбрасываем знак - получаем те же 1230. И при чем тут тогда размер MBedder(8 знак., 23.05.2016 17:24)
- Если поменять хвост с головой, то расстояние поменяется с R на (N-R), и к тому же Отбрасывать знак как без проверки условия? Я тоже так туплю... - IBAH(23.05.2016 17:50)
- Элементарно - целочисленным abs. Не тупи. - MBedder(24.05.2016 00:19)
- Если поменять хвост с головой, то расстояние поменяется с R на (N-R), и к тому же Отбрасывать знак как без проверки условия? Я тоже так туплю... - IBAH(23.05.2016 17:50)
- Тогда уж 2 << (8 * sizeof(unsigned)) :-) - SciFi(23.05.2016 17:19)
- Не ипи моск. r = |(h - t)|. Проверяется численно - допустим, буфер на 1234 элемента, h = 1231, t = 1, т.е. r = 1231-1=1230. Теперь поменяем хвост с головой, т.е. r = 1-1231=-1230, отбрасываем знак - получаем те же 1230. И при чем тут тогда размер MBedder(8 знак., 23.05.2016 17:24)
- дык то для степени (1<<sizeoff(unsigned)) - IBAH(23.05.2016 17:07 - 17:13)
- Приращение h и t: h = (h + 1) % N. Расстояние: d = h - t. - SciFi(23.05.2016 16:59)
- ну чегойто вы гоните всем коллективом, N=5 h=3 t=4 расстояние (4,0,1,2)=4 !!! не модуль расстояний, а расстояние!!! Имхо без проверки условия никак - IBAH(23.05.2016 17:06)
- А, виноват: d = (h - t + N) % N. - SciFi(23.05.2016 17:07)
- в натур....альных числах! спасибо, внатуре затупил - IBAH(23.05.2016 17:12)
- Совсем православно (h + N - t), тогда ни на каком этапе вычисления не будет отрицательных чисел. Но это уже пижонство. - SciFi(23.05.2016 17:14)
- Покайтесь, ибо час близок. N-t+h - Олдфаг(23.05.2016 18:23,
)
- Блин. Не замолю :-( - SciFi(23.05.2016 19:09)
- Это не пижонство! это феншшуй! я с этим методом сразу затупил потому, что у меня переполнение возникало, h + N переполняется и нефиг думать, прыгать надо, в смысле проверять условие - IBAH(23.05.2016 17:56)
- Еще раз говорю - не тупи. Подумай головой, проверь на числах - MBedder(24.05.2016 00:21)
- Покайтесь, ибо час близок. N-t+h - Олдфаг(23.05.2016 18:23,
- Совсем православно (h + N - t), тогда ни на каком этапе вычисления не будет отрицательных чисел. Но это уже пижонство. - SciFi(23.05.2016 17:14)
- в натур....альных числах! спасибо, внатуре затупил - IBAH(23.05.2016 17:12)
- А, виноват: d = (h - t + N) % N. - SciFi(23.05.2016 17:07)
- ну чегойто вы гоните всем коллективом, N=5 h=3 t=4 расстояние (4,0,1,2)=4 !!! не модуль расстояний, а расстояние!!! Имхо без проверки условия никак - IBAH(23.05.2016 17:06)
- Финиш)) ТС, давайте с самого начала. И прежде всего терминология. Что надо узнать и что такое расстояние. Может ли оно быть разным при измеренях рыбы от хвоста к голове и от головы к хвосту. Чем оно отличается от заполнения и вычисления свободного Олдфаг(6 знак., 24.05.2016 09:47,