Язык программирования D и когнитивная рациональность

Небольшой эксперимент в области принятия решений и рациональности, в котором используются идеи из теоремы Байеса (служит для переоценки некоторых предположений или вариантов после того, как некоторое событие уже произошло) и Теории Ожидаемой Полезности (используется понятие функции полезности, т.е utility function — суммы ценностей некоторых вариантов выбора, умноженных на вероятности этих вариантов).

Подробнее

Шифр Виженера

Меня всегда притягивали различные шифры и коды, но вплотную я этим не интересовался, хотя пробовал сделать реализацию некоторых простых методов шифрования. Одним из таких простых для воплощения (как и для взлома) шифров является полиалфавитный шифр Виженера, который является модифицированным шифром Цезаря (это простой шифр с заменой, в котором каждая буква латинского алфавита заменяется буквой, стоящей […]

Подробнее

Различные алгоритмы сортировки

В этом небольшом посте, я выкладываю тривиальные реализации различных методов сортировки массивов с разными типами данных. Все предложенные способы сортируют массивы по возрастанию (хотя, очень легко сделать так, чтобы весь код стал универсальным: допустим, можно слегка модифицировать листинги таким образом, чтобы каждая из функций сортировки принимала на вход еще и операцию, с помощью которой будет […]

Подробнее

Вычисление числа Пи методом «краника»

Однажды, от нечего делать, я решил попробовать реализовать какой-нибудь интересный алгоритм из области вычислительной математики, уж очень хотелось совместить бесполезное с познавательным, а заодно хоть как-то привыкнуть к новому (на тот момент) для себя языку программирования (который еще и достаточно низкоуровневый, несмотря на некоторые вольности).

Подробнее

Эксперименты с цифровым корнем

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

Подробнее

Sublime Text 3: установка и настройка для работы с D

Sublime Text 3 — это мощный и красивый редактор кода. Этот редактор славится своей быстрой работой, достаточно развитым функционалом и наличием огромного количества плагинов, позволяющих сделать из него удобную, заточенную практически под любой современный язык программирования IDE (Integrated Development Environment = Интегрированная Среда Разработки).

Подробнее

Установка dmd 2.065

Для того, чтобы начать изучение D необходимо установить и подготовить к работе хотя бы минимальный доступный инструментарий. В обязательный «джентельменский набор» входит dmd — компилятор D с библиотеками и некоторыми весьма нужными программами, особенно для опытных разработчиков (в комплект, собственно, входят: dmd — сам компилятор D, rdmd — лаунчер для скриптов, dmc — компилятор C/C++ […]

Подробнее

Возведение отрицательных чисел в степень

  В Icon есть небольшая проблема, связанная с математикой, а именно — неумение интерпретатора возводить в степень отрицательные числа. Однако, это не особо и проблема, поскольку можно применить небольшое и изящное решение: procedure pow(x,y) if x < 0 then { if y % 2 = 0 then return abs(x)^y else return -(abs(x)^y) } else return […]

Подробнее