Как стать автором
Обновить

Кульминация фильма «Офисное пространство» (1999 год) связана с обработкой переменных. Главный герой придумал способ обогатиться. При вычислении процентов на банковских вкладах происходит округление до целого цента, а доли цента отбрасываются. Трое сотрудников написали и внедрили вирус, заставляющий систему переводить эти доли цента на собственный счёт.

Сценарная задумка не самая новая. Похожее было в «Супермене-3» 1983 года. По сути, это криминальная стратегия под названием «тактика салями».

Зарегистрированы попытки реализации схемы. О самом недавнем случае сообщила в декабре прошлого года газета Seattle Times. 28-летний подсудимый явно вдохновлялся фильмом Майка Джаджа: план действий программист записывал в документе под названием «Проект „Офисное пространство“».

В реальности деньги действительно хранят без дробных частей: либо в специальном финансовом формате, либо в виде целочисленной переменной. Например, могут хранить сумму в виде целого числа копеек, а при отображении рублей делить на 100.

Если же мыслить наивно и полагаться на переменные типа с плавающей запятой, неизбежны ошибки арифметики — получится, что 0,1 + 0,2 = 0.30000000000000004. Такое случается, потому что компьютер десятичную дробь считать не умеет, а оперирует мантиссой и порядком степени с числами в двоичной системе счисления.

Впрочем, помнят об этом не все. К примеру, на странице заказа такое показывает «Мегамаркет». Очевидно, это мелкая ошибка фронтенда: сами платежи обрабатываются корректно.

Всего голосов 7: ↑7 и ↓0+7
Комментарии2

Публикации

Истории

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
24 – 25 октября
One Day Offer для AQA Engineer и Developers
Онлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
26 октября
ProIT Network Fest
Санкт-Петербург
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань