回 帖 发 新 帖 刷新版面

主题:谢谢编程

在二维数组中,找出一个元素在所在行上是最大的,所在列上最小的(注:可以不止一个,可能一个也没有)

回复列表 (共3个回复)

沙发

就是鞍点嘛...............
CLS
INPUT M, N
DIM A(M, N)
FOR I = 1 TO M
FOR J = 1 TO N: INPUT A(I, J): NEXT J: PRINT
NEXT I: CLS
FOR I = 1 TO M
FOR J = 1 TO N: PRINT USING "####"; A(j,i); : NEXT J
NEXT I: PRINT
FOR I = 1 TO M
AD = A(1,IF)
FOR J = 1 TO N
IF A(I, J) < AD THEN AD = A(I, J): L = I
NEXT J: H = I
FOR J = 1 TO M
IF A(J, L) < A(I, L) THEN 10
NEXT J: PRINT "鞍点:"; A(I, L)
10 NEXT I
END
锻炼一下你,有四处错误,自己找出来,加30分.........

板凳

在二维数组中,找出一个元素在所在行上是最大的,所在列上最小的(注:可以不止一个,可能一个也没有) 

input m,n
dim a(m,n)
for i=1 to m
for j=1 to n
    input a(i,j)
next j
next i

for i=1 to m
    max=a(i,1)
    for j=2 to n
        if a(i,j)>max then max=a(i,j):I1=i:j1=j
    next j
    for k=1 to m
        if a(k,j1)<max then  goto hh:
    next k
    print max,i1,j1
    p=p+1
hh:next i
if p=0 then print "没有鞍点"
end

3 楼

CLS
INPUT M, N
DIM A(M, N)
FOR I = 1 TO M
FOR J = 1 TO N: INPUT A(I, J): NEXT J: PRINT
NEXT I: CLS
FOR I = 1 TO M
FOR J = 1 TO N: PRINT USING "####"; A(j,i); : NEXT J
NEXT I: PRINT
FOR I = 1 TO M
AD = A(1,IF)
FOR J = 1 TO N
IF A(I, J) < AD THEN AD = A(I, J): L = I
NEXT J: H = I
FOR J = 1 TO M
IF A(J, L) < A(I, L) THEN 10
NEXT J: PRINT "鞍点:"; A(I, L)
10 NEXT I
END

我来回复

您尚未登录,请登录后再回复。点此登录或注册