Skip to content

Sanchuha/prog-basics-tasks

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 

Repository files navigation

Перечень тем для самостоятельной работы

Как пользоваться этим файлом

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

  • Не стоит устраивать "войн правок", когда уже выбранная кем-то тема потом переходит к кому-то другому. Мы работаем в системе версионного контроля, т.е. все изменения будут видны в истории коммитов.
  • Спам не допускается, нарушители будут забанены.
  • Если вы придумали свою тему, допишите её в конец списка (фамилии исполнителей и ссылка на репозитарий также обязательны).
  • Этот файл можно править либо напрямую, т.к. вы все являетесь членами этой группы и у вас есть права на запись в этот репозитарий, а также можно сделать форк у себя в аккаунте, а затем пул-реквест сюда. Последнее даже интереснее 😬.

Список тем

  1. Реализация алгоритма Брезенхема ([Генько] (https://github.com/gen-maksim/Homework-2015-1652-)).
  2. Реализация алгоритма DDA-линии (Бурков, Воробьёва).
  3. Реализация кодов Хэмминга (Поволоцкий).
  4. Реализация кодов Рида—Соломона.
  5. Реализация алгоритма циклического избыточного кода. ([Сулейманова] (https://github.com/kolombina))
  6. Реализация кодов Боуза—Чоудхури—Окенгема.
  7. Реализация кодов Хаффмана (Цветков, Жукова).
  8. Реализация алгоритма Шеннона—Фано (Красногорская, Гусманов).
  9. Реализация алгоритма Лемпеля—Зива—Велча.
  10. Реализация алгоритма быстрого умножения Карацубы (Лупова).
  11. Реализация алгоритма быстрого умножения больших целых чисел Шёнхаге—Штрассена.
  12. Реализация алгоритма быстрого умножения больших целых чисел Фюрера (Богданов).
  13. Реализация алгоритма быстрого умножения матриц Штрассена (Головатый).
  14. Реализация алгоритма быстрого деления больших целых чисел Бурникеля—Циглера.
  15. Реализация алгоритма Ривеста—Шамира—Адлемана.
  16. Реализация алгоритма Кнута—Морриса—Пратта ([Карнаухова, Михайлова] (https://github.com/Sanchuha/Knut-Morris-Pratt)).
  17. Реализация алгоритма Бойера—Мура.
  18. Реализация алгоритма поиска по «радужным таблицам».
  19. (128+ баллов за выбор модуля) Реализация парсера G-кодов, стандарт ISO 6983-1:2009 (Михалькова).
  20. (128+ баллов за хорошую реализацию) Индивидуальное задание по LaTeX'у и Питону (Михайлин, Ковалёв).
  21. P2P messenger (Котельников, Неменчинский).
  22. Space Odyssey ([Зименко] (https://github.com/stwinter2014)).
  23. Conversion_tests ([Плешков] (https://github.com/mz15/Conversion_tests/tree/new)).
  24. Сравнение эффективности различных алгоритмов поиска подстроки в строке ([Гашков] (https://github.com/nikitagashkov/SubstringSearchEfficiency)).
  25. Реализация приложения под Android (любое, лишь бы интересное).
  26. Реализация приложение под iOS (любое, лишь бы интересное).
  27. Реализация библиотеки определения языка текста .
  28. Реализация простейшей игры с применением библиотеки PyGame(Жесткова,Звонов).
  29. Реализация простейшей игры с применением библиотеки Cocos2d-x.
  30. Дополнение для Firefox для почти полного выполнения дз по информатике (Журавлев).
  31. Реализация алгоритма детектирования ошибок Дамма.
  32. Реализация алгоритма поиска контрольной суммы Adler-32.
  33. Реализация алгоритма поиска контрольной суммы Флетчера.
  34. Реализация алгоритма Боейра—Ватсона для случая триангуляции Делоне.
  35. Реализация алгоритма Гилберта—Джонсона—Кёрти.
  36. Игра. Платформер (Китов,Мерцалов)
  37. Коммутатор звуковых каналов [HexAxis] AudioSwitcher (Колесников)

Требования к программе

Программы, написанные не на Python оцениваются в индивидуальном порядке.

  1. Соблюдение требований PEP 8, PEP 257.
  2. Использование исключений.
  3. Использование функций.
  4. Создание собственных модулей и пакетов.
  5. Оригинальность идеи.
  6. Наличие коммитов и брэнчей.
  7. Наличие wiki-страницы с документаций и описанием программы или алгоритма (это не должна быть копипаста википедии).
  8. Наличие файла README.md с коротким описанием программы (что делает, как запустить и т.д.).
  9. Использование списковых, словарных, множественных включений.
  10. Использование элементов функционального программирования (lambda, map, zip и т.д.).
  11. Базовое использование классов (хотя бы простейших).
  12. Использование модулей из стандартной библиотеки (лучше не просто math, а что-нибудь поинтереснее).
  13. Работа со строковыми методами.
  14. Наличие понятного текстового интерфейса (можно и графический, но мы его в этом семестре не проходим).
  15. Программа должна вести лог-файл и адекватно реагировать на нештатные ситуации, как минимум нужно сделать так, чтобы по логу можно понять, что произошло непосредственно перед падением программы.
  16. Умение отвечать на вопросы по своей программе и объяснять как работает то или иной участок кода по моему выбору.

По каждому пункту вы можете получить 8 баллов, итого 16×8=128 баллов за программу.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages