主题:[讨论]鞍点问题
wzc1996
[专家分:1680] 发布于 2008-07-17 20:36:00
2、求一个5 X 5数阵中的马鞍数,输出它的位置。所谓马鞍数,是指在行上最小而在列上最大的数。如下:
5 6 7 8 9
4 5 6 7 8
3 4 5 2 1
2 3 4 9 0
1 2 5 4 8
回复列表 (共1个回复)
沙发
Mato完整版 [专家分:1270] 发布于 2008-07-17 22:38:00
CONST NN = 5;
VAR
a: ARRAY[1..NN, 1..NN] OF LONGINT;
PROCEDURE xxx;
VAR
i, j, k: INTEGER;
f: BOOLEAN;
BEGIN
FOR i:=1 TO NN DO
FOR j:=1 TO NN DO BEGIN
f := TRUE;
FOR k:=1 TO NN DO
IF (a[i, j] < a[k, j]) OR (a[i, j] > a[i, k]) THEN BEGIN
f := FALSE; BREAK;
END;
IF f THEN WRITELN('i= ', i, ' j= ', j, ' a[i, j]= ', a[i, j]);
END;
END;
VAR
i, j: INTEGER;
BEGIN
FOR i:=1 TO NN DO
FOR j:=1 TO NN DO BEGIN
WRITE('Input a[', i, ', ', j, ']: ');
READLN(a[i, j]);
END;
WRITELN('Result:');x
xxx;
READLN;
END.
我来回复