Re: [問題] 矩陣內的排序
※ 引述《raha0811 (我要當壞人)》之銘言:
: IDOU(I,J)
: ┌ ┐
: 1 1 0 2 0 0 0
: 2 3 4 5 0 0 0
: 3 6 7 8 0 0 0
: 4 9 10 11 0 0 0
: 5 12 13 15 14 18 0
: 6 16 0 17 0 0 0
: 7 0 0 19 0 0 0
: └ ┘
延續之前的,不好意思小弟又來打擾了,底下這是我的改的排序副程式,
可以對一排數列排序並把0的位置不動作排序
請問我該如何CALL底下的副程式來對上面的矩陣做每一列的排序呢?
CALL SELECTION(IDOU,J)
我這樣打,他是都沒改變就是
─────────────────────────────────────
│ 排序副程式 │
─────────────────────────────────────
!******************************************************************************
SUBROUTINE SELECTION(A,N)
IMPLICIT NONE
INTEGER :: N,A(N)
INTEGER I,J !迴圈計數器
INTEGER MIN !找出每一輪中的最小值
INTEGER TEMP !交換資料時使用
DO I=1,N
MIN=A(I) !暫時令A(I)是最小值
DO J=I+1,N
IF (A(J) == 0) CYCLE !假如下一點是0,就跳過
IF (MIN > A(J)) THEN !發現A(I)不是最小值
TEMP=A(J) !把A(I)、A(J)交換
A(J)=A(I)
A(I)=TEMP
MIN=A(I)
END IF
END DO
END DO
RETURN
END
!*****************************************************************************
感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.121.146.169
※ 編輯: raha0811 來自: 140.121.146.169 (03/01 14:00)
推
03/01 15:07, , 1F
03/01 15:07, 1F
→
03/01 15:08, , 2F
03/01 15:08, 2F
→
03/01 15:09, , 3F
03/01 15:09, 3F
→
03/03 16:19, , 4F
03/03 16:19, 4F
討論串 (同標題文章)
Fortran 近期熱門文章
PTT數位生活區 即時熱門文章