Skip to content

Latest commit

 

History

History
26 lines (18 loc) · 2.31 KB

File metadata and controls

26 lines (18 loc) · 2.31 KB

Лабораторная работа по ООП №1

Реализовать функцию для отрисовки графа в graphviz.

Функция отрисовки должна принимать на вход структуру графа. Тип графа можно выбрать на своё усмотрение (или взять готовый из ЛР курса АиСД). В качестве результата функция должна возвращать строку с описанием графа в формате dot или ссылку на отрисованный граф (возможно ссылку на сохранённый локально файл file://path-to-file). Также необходимо предусмотреть минимальный набор функций для ввода графа из входного потока.

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

Реализовать 3 перегрузки описанных функций:

  1. Принимает на вход только граф.
  2. Принимает на вход граф и массив номеров вершин в стиле C (const int*).
  3. Принимает на вход граф и std::vector, состоящий из номеров вершин (std::vector).

Инструкция

Чтобы собрать программу вместе с интерактивным меню, используйте команду cmake [PATH].

Создайте папку, в которой вы будите собирать программу, и перейдите в неё. Чтобы собрать тестовую программу, используйте команду cmake .. -D test=ON.