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

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

Подробнее

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

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

Подробнее

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

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

Подробнее

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 […]

Подробнее

Подсветка синтаксиса Icon для текстового редактора Nano

Так уж получилось, что я работаю в Linux (да и не я один) — и поэтому часто работаю в очень простом и на мой взгляд очень удобном консольном редакторе Nano. Nano очень хорош и поддерживает посветку синтаксиса для многих языков программирования, однако в списке поддерживаемых языков Icon нет. Конечно, это печально, но отсутствие готовой подсветки […]

Подробнее

Сборка и установка ObjectIcon

А сейчас, специально (эксклюзивно!) для этого блога, я расскажу как собрать из исходников и установить ObjectIcon на Linux. (Подразумевается, что пользователь, который рискнет это опробовать — знает на что идет, а также имеет минимальные навыки работы с терминалом Linux).

Подробнее