![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
ivan219 |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1121 Регистрация: 19.11.2005 Где: Планета земля Репутация: 2 Всего: 12 |
На выходе имеем 011 хотя должно быть 021 если сделать так:
то получается правильно т.е. 031 вобщем так как и долно быть, такиеже глюки наблюдаются и с другими числами 4, 7, 9 на выходе получаем на 1 меньше. Возможноли это обойти без перевода в String и дольнейшего разбота строки т.е. напрямую работать с числами??? Это сообщение отредактировал(а) ivan219 - 1.10.2007, 11:53 |
||||
|
|||||
Coder |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 13.12.2004 Репутация: 5 Всего: 11 |
если я правильно понял, то:
|
|||
|
||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
это не глюки, это особенности. и не у trunc, а у представления вещественных чисел.
то, что real(some - trunc(some)) * 10 выводится как "2", это не значит, что там реально хранится 2. Просто число, достаточно близкое к 2(1,999999999). И при выводе видим 2, а при обработке воспринимаем как "1,999999999". Соотвественно, trunc, которое просто отбросит дробную часть, получит 1, а не "2". Т.е. у меня в Delphi 7
Первые два вернут "2"(видимо, сказывает оптимизация), а третие вернет "1". В принципе, то же, что и в твоем коде, но только можно увидеть, что при работе с константами отклонений не наблюдается. |
|||
|
||||
ivan219 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1121 Регистрация: 19.11.2005 Где: Планета земля Репутация: 2 Всего: 12 |
Печально
![]() ![]() ну почти в идеале мне ндо чтобы на выходе было 4 переменных Integer переменую S я ввёл для вас так как мой код отличается. Я банально хотел избавится от лишний преобразований Real -> String -> [1..4] Integer но видать не удастся ![]() Всем спасибо!!! Это сообщение отредактировал(а) ivan219 - 1.10.2007, 12:24 |
|||
|
||||
ivan219 |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1121 Регистрация: 19.11.2005 Где: Планета земля Репутация: 2 Всего: 12 |
Можно ![]() ![]()
![]() Это сообщение отредактировал(а) ivan219 - 1.10.2007, 13:34 |
||||
|
|||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 14 Всего: 48 |
ivan219, долго смотрел на код.. что он делает?
![]() -------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
ivan219, случайно не переписываешь функцию RoundTo для округления к десяткам, сотым?
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
смотрим "правильные" тестовые данные:
т.е. происходит реверс строки с впередиидущем нулем ![]() |
|||
|
||||
ivan219 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1121 Регистрация: 19.11.2005 Где: Планета земля Репутация: 2 Всего: 12 |
Я же написал:
А мой код если интересно вот:
Работает так как надо ![]() TSevenSegment это мой компонент семисегментного индикатора ![]() ![]() Это сообщение отредактировал(а) ivan219 - 1.10.2007, 15:29 Присоединённый файл ( Кол-во скачиваний: 7 ) ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |