|
|
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
проверяли вот на perl, python, c, java: print int( 32.98 * 100) - результат: 3297 - с чем связано ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2007, 22:55 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
с отбрасыванием дробной части. это не глюки чтобы было округления надо 0.5 прибавлять ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2007, 23:34 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
Ну так для других чисел все впорядке , в том числе и для .99 ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2007, 23:38 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
32.98 * 100 это примерно 3297.9999999999995 - int - это отсечение дробной части ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2007, 23:39 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
с# Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2007, 23:41 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
В Дельфи Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2007, 23:51 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
bdfy1Ну так для других чисел все впорядке , в том числе и для .99 ??? не правда Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2007, 23:52 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
zloy denВ Дельфи Код: plaintext выдай round(0.5) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2007, 23:58 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
а причем тут тогда целая часть ? просто например для 63.96 все в порядке а вот для числа которое вы привели - .95 ... - Не вижу закономерности .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2007, 00:05 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
bdfy1а причем тут тогда целая часть ? просто например для 63.96 все в порядке а вот для числа которое вы привели - .95 ... - Не вижу закономерности .... я на 2 умножил 32.98 это от двоичного представления зависит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2007, 00:08 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
zloy den0 отвечает мда? тогда надо к Софтвареру. он все знает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2007, 00:10 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
32.98 не может быть точно представлено в виде double, ибо в двоичном виде является бесконечной периодической дробью. Хотите повеселиться? смотрите дальше Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2007, 00:39 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
в алголе плавающие сравнивались приблизительно Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2007, 00:52 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
bdfy1проверяли вот на perl, python, c, java: print int( 32.98 * 100) - результат: 3297 - с чем связано ? Связано с тем, что множества чисел с плавающей запятой, представимых в двоичной и десятичнй системах, не совпадают. Современные процессоры оперируют двоичной системой. Человек - десятичной. При преобразовании выбирается наиболее близкое к оригинальному значение, но не тождественное значение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2007, 01:30 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
епта, чудики, приехали. ВСЕМ ЮЗАТЬ ROUNDЫ и курить IEEE754 !!! аффтопитезь: объект либо именован, либо не существует ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2007, 17:14 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
SQLWKS> select floor(32.98*100) from dual 2> FLOOR(32.9 ---------- 3298 Выбрана 1 строка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2007, 09:26 |
|
||
|
Глюки преобразования ?
|
|||
|---|---|---|---|
|
#18+
C++ Language ReferenceWhen an object of floating type is converted to an integral type, the fractional part is truncated. No rounding takes place in the conversion process. Truncation means that a number like 1.3 is converted to 1, and –1.3 is converted to –1. C# Programmer's ReferenceWhen you convert from a double or float value to an integral type, the value is rounded towards zero to the nearest integral value. round же округляет более изощрённо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2007, 12:32 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=166&tid=1346194]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
58ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 384ms |

| 0 / 0 |
