Написать процедуру составления списка смежных вершин по заданной матрице смежности - Pascal
Формулировка задачи:
Написать процедуру составления списка смежных вершин по заданной матрице смежности.
Решение задачи: «Написать процедуру составления списка смежных вершин по заданной матрице смежности»
textual
Листинг программы
const n=5; type TMatr = array [1..n,1..n] of Integer; procedure vList(const m: TMatr); var i, j: Integer; begin for i:=1 to n do for j:=1 to n do if m[i,j]<>0 then Write(' (',i,',',j,')'); WriteLn; end;
Объяснение кода листинга программы
В данном коде объявлены следующие переменные:
- n - количество вершин в графе (в данном случае равно 5);
- TMatr - тип данных, представляющий матрицу смежности графа. Это массив целых чисел, размер которого определяется переменной n;
- i - внутренний индекс, используемый в циклах;
- j - внутренний индекс, используемый в циклах;
- m - константа, ссылающаяся на матрицу смежности графа.
Процедура vList принимает в качестве аргумента матрицу смежности графа m и выполняет следующие действия:
- В цикле for i:=1 до n (где n - количество вершин в графе) происходит проверка условия m[i,j]<>0. Если это условие истинно (то есть если существует ребро между i-й и j-й вершинами), то выполняется следующая операция:
- Выводится пара вершин в формате
(i, j)
, где i и j - индексы вершин. - Выводится символ
Ln
, который означает переход на новую строку.
- Выводится пара вершин в формате
- После завершения внутреннего цикла for i происходит аналогичный цикл for j. Он также проверяет условие m[i,j]<>0 и, если оно истинно, выводит пару вершин и переходит на новую строку.
- По завершении обоих циклов выводится символ
Ln
, который означает переход на новую строку. Таким образом, данный код позволяет вывести все пары смежных вершин, представленные в матрице смежности графа.
- В цикле for i:=1 до n (где n - количество вершин в графе) происходит проверка условия m[i,j]<>0. Если это условие истинно (то есть если существует ребро между i-й и j-й вершинами), то выполняется следующая операция: