ShkalikovOleh / Programming-Labs

Laboratory works on programming courses at the Institute of Physics and Technology National Technical University of Ukraine "Igor Sikorsky Kyiv Polytechnic Institute"

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Programming Labs

Лабораторные работы по некоторым дисциплинам, связанными с программированием, 113 специальности ФТИ НТУУ "КПИ им. Игоря Сикорского" за 2018-2021 года.

Дисциплины, которые вошли в этот репозиторий:

  1. Программирование 1, 2
  2. Веб программирование
  3. Алгоритмы и структуры данных
  4. Специальные разделы программирования(наука о данных)
  5. Математическое моделирование
  6. Численные методы

Также вам может быть интересен набор алгоритмов из курса "Методы оптимизации".

Используйте размещенные здесь материалы исключительно для проверки написанных вами решений.

C++

Курс "Программирование" на C++. Семестры 1(Процедурное) и 2(ООП) соответственно. Вариант 22 mod n, где n - количество заданий. Также присутствуют дополнительные лабораторные по Python 3.

Для сборки проектов используется CMake. В работах 2 семестра проверка работоспособности решений проверяется с помощью Google Test(не теряйте время в поисках main ;)).

Web

Курс "Веб программирование" вскользь охватывает такие технологии как HTML, CSS, JS, PHP, SQL.

Моя реализация работ выполнена в виде единого приложения, каждая страница которого представляет собой решения одного из заданий какой-либо лабораторной.

В папке scripts находяться скрипты на js, php и sql. В папке styles - стили html страниц из папки view.

Для избежания проблем с переносимостью и установкой ПО используется упаковка приложения в Docker контейнер и запуск его и все необходимой инфраструктуры(веб-сервер, сервер БД) с помощью Docker Compose.

Algorithms and data structures

Курс "Алгоритмы и структуры данных". Создание самых базовых структур и алгоритмов. Большая часть работ выполнена на .Net Core(C#), но 3 и 4 реализованы на C++ ввиду требований самих лабораторных.

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

Data Science

Курс "Специальные разделы программирования. Наука о данных". Изучаються базовые инструменты работы с наборами данных в Python, а также GDAL для работы со спутниковыми снимками. Большая часть работ выполнена в интерактивных Jupyter Notebook для простоты визуализации.

Math modeling

Курс "Математическое моделирование". Рассмотрены, имплементированы и реализованы самые простые модели, в большинстве своем, связанные с системами автоматического управления. Работы выполнены в интерактивных Jupyter Notebook.

Numerical methods

Курс численных методов. Рассмотрены, имплементированы и реализованы самые простые алгоритмы численно решения разного рода уравнений, поиск собственных значений и векторов линейных операторов, алгоритмы интерполяции и численные методы интегрирования ОДУ. Часть работ выполнена в интерактивных Jupyter Notebook, работы 2-4 на C++. Во всех работах имплементированы все предлагаемые разным вариантам алгоритмы.

Ошибки и неточности

Если Вы заметили какую-либо ошибку или неточность, то оставьте, пожалуйста, сообщений о ней, создав соответвующий issue с точным ее описанием, порядком выполнения действий для воспроизведения и "целевым" файлом.

Более того, буду рад принять ваши исправления и дополнения, созданные с помощью механизма Pull Request.

About

Laboratory works on programming courses at the Institute of Physics and Technology National Technical University of Ukraine "Igor Sikorsky Kyiv Polytechnic Institute"

License:MIT License


Languages

Language:Jupyter Notebook 95.0%Language:C++ 2.2%Language:TeX 1.1%Language:C# 0.6%Language:Python 0.4%Language:HTML 0.4%Language:PHP 0.1%Language:JavaScript 0.1%Language:CSS 0.1%Language:CMake 0.0%Language:Pascal 0.0%Language:C 0.0%Language:Dockerfile 0.0%