Программа
USES CRT;
CONST Power=5; { Размерность матрицы }
TYPE Matrix=array[1..Power,1..Power] of integer; { Тип - матрица }
PROCEDURE InputMatrix (var B:Matrix); { Процедура ввода матрицы }
Var i,j:word; { Счетчики }
Begin
for i:=1 to Power do { Цикл ввода строк матрицы }
for j:=1 to Power do { Цикл ввода элементов матрицы }
begin
Write('Введите элемент [',i,',',j,'] ');
{ Вывод приглашения ввести элемент матрицы }
ReadLn(B[i,j]); { Ввод элемента матрицы }
end
End;
PROCEDURE OutputMatrix (B:Matrix); { Процедура вывода матрицы }
Var i,j:word; { Счетчики }
Begin
for i:=1 to Power do { Цикл вывода строк матрицы }
begin
for j:=1 to Power do { Цикл вывода элементов матрицы }
Write (B[i,j],' '); { Вывод элемента матрицы }
WriteLn { Вывод конца строки }
end
End;
PROCEDURE GetList(M:Matrix); { Процедура получения списка групп пар }
Var i1,i2,i3,i4,i5:integer; { Счетчики циклов образующих группы пар }
SumMax:integer; { Максимальная сумма перебраных групп }
Sum:integer; { Сумма }
Begin
ClrScr; { Очистка экрана }
WriteLn('ИСХОДНАЯ МАТРИЦА:'); { Вывод заголовка }
WriteLn; { Пропуск строки }
OutputMatrix(M); { Вывод матрицы }
WriteLn; { Пропуск строки }
Window(1,4+Power,80,25); { Определение окна вывода }
SumMax:=0; { Сброс максимальной суммы }
{ Цикл перебора вариантов групп: }
for i1:=1 to Power do
for i2:=1 to Power do
if i2<>i1 then { Проверка "пересечения" }
for i3:=1 to Power do
if not (i3 in [i1,i2]) then { Проверка "пересечения" }
for i4:=1 to Power do
if not (i4 in [i1,i2,i3]) then { Проверка "пересечения" }
for i5:=1 to Power do
if not (i5 in [i1,i2,i3,i4]) then { Проверка "пересечения" }
begin
Sum:=M[1,i1]+M[2,i2]+M[3,i3]+M[4,i4]+M[5,i5];
{ Вычисление суммы }
if Sum>SumMax then
begin
SumMax:=Sum;
ClrScr;
WriteLn('Сумма групп ',SumMax);
WriteLn('Список групп:');
end;
if Sum=SumMax then Write(i1,i2,i3,i4,i5,' ')
end
End;
VAR M:Matrix; { Переменная - матрица }
BEGIN
Randomize;
ClrScr; { Очистка экрана }
InputMatrix(M); { Ввод матрицы }
GetList(M) { Получение списка групп пар }
END.
Бесплатные примеры программ
Примеры написанных программ
Помощь студентам по программированию