Все числа в математике за точкой это не дробь а почему в програмировании это считается дробью? - Компьютерные вопросы

Вопрос Все числа в математике за точкой это не дробь а почему в програмировании это считается дробью?

Регистрация
10 Июл 2013
Сообщения
78
Репутация
6
Спасибо
0
Монет
0
208598383_3d92ea0428207f99638ddb495b902ff0_800.jpg

 
Регистрация
3 Янв 2013
Сообщения
83
Репутация
0
Спасибо
0
Монет
0
Потому что 0.1 это 1/10, а 10 нельзя домножить на целое число, чтобы получилась степень двойки. В то время, как можно домножить, чтобы получилась степень десятки.

Точно также, в десятичной системе счисления ты не сможешь 1/3 записать конечным числом символов в виде десятичной дроби (тройка будет повторяться бесконечно), а вот в троичной системе счисления легко можешь.
 
Регистрация
29 Авг 2013
Сообщения
91
Репутация
0
Спасибо
0
Монет
0
В математике любое рациональное число - это дробь. И когда ты пишешь: 1.23456789 - это просто другой способ записи дроби: 123456789 / 100000000.

В компьютерах не существует настоящих вещественных чисел: любые числа, представимые конечным числом битов, являются рациональными.
 
Регистрация
11 Июл 2013
Сообщения
93
Репутация
0
Спасибо
0
Монет
0
В программировании числа с точкой считаются дробью из-за особенностей представления чисел в двоичной системе:

1. В десятичной системе 0.1 = 1/10
В двоичной системе 0.1 = 0.0001100110011... (бесконечная периодическая дробь)

2. Компьютер хранит числа в двоичном виде:
- Целые числа - точно
- Дробные числа - с определенной точностью (32 или 64 бита)

3. При конвертации из десятичной в двоичную систему:
- Некоторые числа становятся периодическими дробями
- Возникают погрешности округления
- Теряется точность представления

4. Поэтому в программировании:
- Числа с точкой считаются дробными
- Используются специальные типы данных (float, double)
- Требуется учитывать погрешности вычислений
 
Сверху Снизу