Рубрика «числа»

Как следует отображать на экране результат деления 3.0 на 10.0 ? Сколько цифр следует вывести, если пользователь не указал точность?

Скорее всего, вы даже не знали, что вывод на экран чисел с плавающей запятой — это сложная проблема, настолько сложная, что по ней написаны десятки научных статей, причём последний прорыв был относительно недавно, в 2016 году. На самом деле, это одна из самых сложных частей поддержки чисел с плавающей запятой в среде выполнения языка.

Давайте продолжим разговор о самой неоптимизированной в мире библиотеке эмуляции плавающей точки при помощи целочисленной арифметики.

Читать полностью »

В прошлой статье мы остановились на том, как Коши навел порядок в матанализе, изгнав из него актуальную бесконечность. Казалось бы, всё устаканилось, и можно строить математику на строгих и достоверных основаниях. Но история сказала на это «три раза ха». С конца XIX века и по сей день в математике творится такое, что Аристотелю не привиделось бы и в кошмаре. Сегодня у нас в программе: множество множеств, бесконечность бесконечностей, несколько парадоксов и один глобальный кризис оснований математики. Сделайте глубокий вдох и ныряйте под кат.

Читать полностью »

Бесконечность — удивительная штука. Никто ее не видел, не трогал, никто не может даже по-настоящему представить. Но о ней говорят, ею пользуются и достигают результатов. Бесконечность не помещается в уме, но с давних пор будоражит умы. Сегодня поговорим о том, откуда пошла бесконечность, как развивались представления о ней, и каково текущее положение дел в этой области.

Читать полностью »

В Дзене Python есть принцип, согласно которому "должен существовать один и желательно только один очевидный способ сделать это". Однако в Python есть как минимум три способа возведения числа в степень:

  • оператор **

  • встроенная функция pow()

  • функция math.pow()

В этой статье мы рассмотрим каждый из способов и разберемся, чем они отличаются.

Оператор **

Оператор ** — это классический оператор возведения в степень. Это в принципе первое, что обычно приходит в голову любому программисту на Python, когда требуется возвести число в степень.

Приведенный ниже код:

Читать полностью »
Чего ожидать от 2024? - 1
Wolfram Community

Через несколько часов закончится 2023 год. Уходит последняя возможность сделать то, что планировалось выполнить в этом году. Уже совсем скоро начнётся 2024 год, который будет совсем другим.

С другой стороны, новый год ничем не отличается от предыдущего. Есть ли смысл придавать дате такое значение? Многие укажут, что это лишь смена одного числа на другое.

Давайте посмотрим, чего нам стоит ожидать от 2024.
Читать полностью »

Выражение числа в виде букв - 1

Разрабатывая Idle игры часто сталкиваются с тем что нужно выразить число через его сокращенную форму. Если в игре используются маленькие числа (хотя бы до 20 знаков), то такие числа в принципе можно выражать в их существующем виде. Для примера в проекте unity создам отображение монет и кнопку, которая будет умножать число монет на некое значение:

Читать полностью »

Красивая формула Бине для чисел Фибоначчи содержит иррациональность - квадратный корень из пяти. Это делает ее непригодной для точного вычисления больших чисел Фибоначчи. Это кажется вполне очевидным. Предлагаю способ, как избавиться от зловредного корня и сделать формулу Бине пригодной для точных вычислений.

Интересно? Читайте дальше

В сети и в развлекательной литературе нередко можно встретить разные математические фокусы: вас просят задумать какое-то число, затем выполнить с ним ряд арифметических действий. После этого собеседник точно называет получившееся у вас число. Большинство этих фокусов основано на том, что исходное число в ходе преобразований незаметно подменяется другим, а затем за несколько шагов сводится к известному ответу. Такие фокусы, например, можно встретить в книгах Якова Перельмана.

Читать полностью »

Храним числа экономно - 1 Недавно в одном из проектов встала задача: есть набор множеств (Set), которые надо достаточно эффективно хранить в оперативной памяти. Потому что множеств много, а памяти мало. И с этим надо что-то делать.

Так как язык, на котором всё это написано — C#, то есть нюансы. А именно, что стандартный HashSet<int> на хранение одного числа тратит 16 байт, также влияет филл фактор. Есть более эффективные реализации (когда-нибудь и про них напишу), но с другой стороны, можно же тупо хранить в массивах, по 4 байта на число (требуется хранить инты), что достаточно эффективно. Но можно ли уменьшить ещё?

Сразу скажу, у меня нет ответа, как лучше сделать, возможно его не существует, ибо есть множество факторов, связанных с особенностями распределения конкретных данных. Но есть идеи, которыми я поделюсь: какие варианты экономии памяти существуют. Также рекомендую до прочтения поста подумать самостоятельно, всё-таки это неплохая разминка для ума. Для определённости сформулирую задачу следующим образом:

Есть набор неотрицательных уникальных интов (32 бита). Требуется хранить их эффективно в оперативной памяти, из операций — создание набора и получение всех элементов. Не нужно получать элементы по индексу, добавлять новые или удалять.

В статье будет много букв и цифр и ни одной картинки (кроме упакованного котика на КДПВ).
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js