Задание
орграфа посредством матрицы смежности.
|
Program
Pro_52 (Input, Output);
|
Объявление
имени программы
|
Var
|
Блок
объявления глобальных переменных
|
C
: Array [1..20, 1..20] Of Integer;
|
Матрица
смежности - целочисленная матрица
максимального размера 20x20
|
N,
M : Integer;
|
Число
вершин и ребер графа соответственно
|
i,
j : Integer;
|
i,
j - переменные циклов
|
|
|
Begin
|
Начало
тела программы
|
|
|
For
i := 1 To 20 Do
|
Цикл
для i
от 1 до 20
|
For
j := 1 To 20 Do
|
Цикл
для j от 1 до 20
|
C
[i, j] := 0;
|
Присваиваем
C [i, j] значение 0
|
|
|
WriteLn
('PASCAL: Задание орграфа посредством
матрицы смежности.');
|
Формулировка
цели алгоритма
|
Write
('Введите число вершин графа: ');
|
Запрос
ввода числа вершин графа
|
ReadLn
(N);
|
Ввод
числа вершин графа
|
Write
('Введите число ребер графа: ');
|
Запрос
ввода числа ребер графа
|
ReadLn
(M);
|
Ввод
числа ребер графа
|
|
|
WriteLn
('Введите номера вершин, соответствующих
ребрам орграфа:');
|
Запрос
ввода ребер графа посредством номеров
смежных вершин
|
For
i := 1 To M Do
|
Цикл
для i
от 1 до M
|
Begin
|
Начало
тела цикла
|
Write
( i, '-е
ребро:
');
|
Запрос
i-го ребра
|
ReadLn
(i, j);
|
Ввод
номеров вершин, задающих i-е ребро
|
C
[i, j] := 1;
|
Заносим
в соответственный элемент матрицы
смежности единицу
|
End;
|
Конец
тела цикла
|
|
|
WriteLn
('Ввод закончен. Матрица смежности имеет
вид:');
|
Сообщение
об окончании ввода и контрольный вывод
матрицы
|
For
i := 1 To N Do
|
Цикл
для i
от 1 до N
|
Begin
|
Начало
тела цикла
|
For
j := 1 To N Do
|
Цикл
для j от 1 до N
|
Write
(C [i, j] : 3);
|
Форматированный
вывод в строку очередного элемента
матрицы смежности
|
WriteLn;
|
Перевод
строки
|
End;
|
Конец
тела цикла
|
|
|
ReadLn;
|
Ожидание
нажатия клавиши Enter для завершения
|
End.
|
Конец
программы.
|