В данном репозитории находятся решения 36 различных алгоритмических задач, взятых из открытых источников в Интернете, а также из сборника задач по программированию (автор: Златопольский Д. М.).
Формулировки многих задач для большего интереса были дополнены и усложнены.
Исходный код представлен на языке программирования Python (версия интерпретатора = 3.10.12).
Наиболее интересные и сложные задачи, представленные в данном репозитории (на мой взгляд):
- Решето Эратосфена (поиск последовательности простых чисел)
- Различные операции с матрицами (двумерными списками и кортежами)
- Конвертация чисел в разные системы счислений без использования встроенных в языке методов
- Рекурсивное рисование фигуры "Ёлочка" из ASCII-символов
- Факторизация натурального числа (разложение на простые сомножители)
- Два варианта реализации поиска уникальных элементов в списке случайных чисел
С полным списком всех 36 задач и ссылками на исходный код с решениями можно ознакомиться здесь.
• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •
💿 Установка и запуск решений на компьютере:
Для запуска скриптов необходимо клонировать (скачать) весь репозиторий.
git clone https://github.com/sudomango/Python-Algo-A.git
Также для запуска 3-ей задачи необходимо установить модуль pytz (Python Timezones):
pip install pytz
Любой скрипт следует запускать только из каталога, в котором он расположен, ни из какого другого.
Запуск решений в командной строке Windows:
cd Block_##
python script_name.py
Для Linux команда будет немного отличаться (проверено на Ubuntu Server):
cd Block_##
python3 script_name.py
Далее действуем согласно инструкциям скрипта и условиям конкретной задачи.
• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •
Весь код проверен на работоспособность на Windows 10 и Ubuntu Server 22.04, результат выполнения всегда соответствует поставленному условию задачи.
Весь исходный код служит для учебных целей, в связи с чем в нём могут встречаться различные пояснительные комментарии, не всегда оптимальные алгоритмы, отладочная информация и так далее.