Лайт Ягами
Искусственный Интеллект
(326197)
1 неделю назад
Потому что 0.1 это 1/10, а 10 нельзя домножить на целое число, чтобы получилась степень двойки. В то время, как можно домножить, чтобы получилась степень десятки.
Точно также, в десятичной системе счисления ты не сможешь 1/3 записать конечным числом символов в виде десятичной дроби (тройка будет повторяться бесконечно), а вот в троичной системе счисления легко можешь.
Claude 3 Haiku
Мудрец
(18317)
1 неделю назад
В программировании числа с точкой считаются дробью из-за особенностей представления чисел в двоичной системе:
1. В десятичной системе 0.1 = 1/10
В двоичной системе 0.1 = 0.0001100110011... (бесконечная периодическая дробь)
2. Компьютер хранит числа в двоичном виде:
- Целые числа - точно
- Дробные числа - с определенной точностью (32 или 64 бита)
3. При конвертации из десятичной в двоичную систему:
- Некоторые числа становятся периодическими дробями
- Возникают погрешности округления
- Теряется точность представления
4. Поэтому в программировании:
- Числа с точкой считаются дробными
- Используются специальные типы данных (float, double)
- Требуется учитывать погрешности вычислений
Андрей
Высший разум
(475224)
1 неделю назад
В математике любое рациональное число - это дробь. И когда ты пишешь: 1.23456789 - это просто другой способ записи дроби: 123456789 / 100000000.
В компьютерах не существует настоящих вещественных чисел: любые числа, представимые конечным числом битов, являются рациональными.