Как хранить дробные числа (числа с плавающей точкой)

preview_player
Показать описание
Привет! В этом видео рассматриваем числа с плавающей точкой и проблемы, связанные с ними. Буду признателен, если вы дадите мне какую-нибудь обратную связь!

Поддержать автора:

Таймкоды:
0:00 - начало
01:22 - разбираемся с числом 5.5
5:45 - душним на стандарт
7:57 - пример "без воды"
8:48 - сложности у формата
Рекомендации по теме
Комментарии
Автор

Вот, мы тут восхищаемся красотой технических решений, а некоторые становятся миллионерами благодаря этим случайным циферкам после запятой 😅

cydoxcc
Автор

Благодарю вас, Антон. У вас - талант объяснять. И талант блогера. Вы можете объяснять довольно скучные (для непосвященных) темы очень увлекательно. Темы роликов у вас - для меня - актуальные. Подписался на вас!

utiiqix
Автор

Насчёт странного способа записи порядка: весь стандарт float основан на том, чтобы числа можно было сравнивать как целые.

kemal
Автор

Я хочу еще таких видосов! Это настолько круто, что хочется снова и снова!

jtprogru_channel
Автор

Антон, рад что наткнулся на ваш канал, очень понятно объясняете.
Местами кринжанул со скетчей, может это только я такой)
Продолжайте, очень интересно!

Ratmirsh
Автор

Браво за объяснение таких вещей. Мне нравится!

inotak
Автор

Классный видос!
А на моменте экономии бита я прям сам захотел танцевать

iljakot_tran
Автор

Прелесть какое хорошее разъяснение. Не душно и по факту!

mpvdwwj
Автор

Не так часто пишу комментарии, но тут не могу не заметить, что навыки объяснения у автора на отличном уровне) Не скажу, что тема сильно сложная, но непросвящённому человеку куда приятнее воспринимать такой контент с наглядными объяснениями, чем в исключительно формульном виде.

sanchopansa
Автор

Огонь! Я прям вспоминаю уроки по С++ в десятом классе)

peterl
Автор

Интересное видео) Было бы очень круто, если бы вы рассказали про нейросети в следующих видео!

tvkxoyj
Автор

Молодец, расширил мои познания, спасибо.
Видео понравилось и ещё понравилось видео, где разработчики игры решили обойти использование квадратного корня с помощью хитрой конструкции. Вообщем, разбор деталей очень интересен.
Может расскажешь, как компьютер проводит операцию квадратного корня?

arm_bit
Автор

3:55 как по мне это наоборот более правильная и логичная форма, чем у дополнительного кода, в ней 1000 > 0000, потому что старший разряд в первом числе больше, чем во втором. Это то, как работают числа в любой системе счисления. А вот в дополнительном коде у нас почему то 0000 > 1000 (потому что старший разряд - это знак, да еще и чем он больше, тем число меньше)

justafish_
Автор

4:14 так сделали, чтобы сортировку чисел делать быстрее.
Первый проход можно делать только по первому байту.

KTA-qpre
Автор

Сложно. Но интересно. Надо будет ещё разок пересмотреть.

-Sergey
Автор

Всё просто - 1.4 или 2.6 не возможно точно записать в дроичных дробях, точно так же как не возможно записать 1/3 в десятичных дробях.

programmct
Автор

1) классно. 2) я еще больше стать прораммистом

barcek
Автор

вычитать -127 нужно для хранения отрицательной экспоненты. Конечно можно было бы использовать sign бит,  но тогда бы у нас экспонента лежала бы в диапазоне (-127, +127) так как два и они же +0 и -0 в десятичной) были эквивалентны. Если же мы вычитаем 127, то получаем значение экспоненты в диапазоне (-127, +128), а значит что неиспользованное значение может служит идентификатором NaN и Infinity.

ErrorsMissing
Автор

Тем не менее (код C#) Console.WriteLine(1.4f + 2.6f); выдает в консоле 4, а не 3.9999
А Console.WriteLine(1.4f + 2.6f == 4f); выдает True.

redfox
Автор

Почему же тогда в C++ при сложении двух float выдаёт 4? Получается, в наше время проблема решена уже, а ты рассказываешь что нет и всем кранты.

mishkaD