Подсчет очков чемпионата. Обработка квадратной матрицы

  • Автор темы Intersap
  • Дата начала
I

Intersap

#1
Наглость - второе счастье. Если можете помогите еще.

Таблица футбольного чемпионата задается квадратной матрицей размером 16х16, в которой все елементы на главной диагонале равны нулю, а остаток заполненный за такими правилами: 3 – победа, 1 – ничия, 0 – поражение. Определить, есть ли такие команды, которые не проиграли ни одной игры. Вывести на экран номера таких команд і количество заработаных очков. Начальное состояние матрицы определить через типизированую константу-матрицу.

А вот программу самому написать не получается

Посмотреть вложение __________.bmp
 

Вложения

I

Intersap

#3
как проверить все значения из матрицы не учитавыя значения по главной диагонали?
 

hosm

* so what *
18.05.2009
2 442
6
#4
Intersap
у элементов на главной диагонали индекс строки и столбца одинаковый. В чем проблема их исключить из обработки?
 
I

Intersap

#5
проблема в том как начать обработку масива
 

hosm

* so what *
18.05.2009
2 442
6
#6
нечто подобное... или проблема написать типизированную константу-матрицу?
Код:
const N=16;
// A - массив
var 
i,j,Sum:Integer;
begin
for i := 1 to N do begin
Sum := 0;

for j := 1 to N do
if i<>j then // не главная диагональ
if A[i][j] > 0 then // не поражение - считаем сумму
Sum := Sum + A[i][j]
else begin // это поражение
Sum :=-1; // ставим признак и больше нам тут искать нечего...
break; // вышли из внутреннего цикла for j
end; 
if Sum >= 0 then
write(i:2); // номер команды
Writeln(" кол-во очков: ", Sum)
end;
end;
отделила тему...