回 帖 发 新 帖 刷新版面

主题:求高手指教

有n行4列数如下:
 43    41    30    45 
 43    44    21    17 
 43    26    14    30 
 43    23    17    21 
 44    42    45    33 
 44    33    21    16 
 42    33    35    45 
 43    44    45    21 
 42    41    45    11 
 42    35    31     4 
 43    30    41    26 
如果该行与剩下行有相同元素个数为3的且行数为3或行数为2或行数为1,则输出该行,即(如果余下行中只有1行与该行有3个相同元素,输出该行,如果余下行中有2行与该行有3个相同元素,输出该行,如果余下行中有3行与该行有3个相同元素,则输出该行)

回复列表 (共1个回复)

沙发

implicit none
integer,parameter:: n=16
integer a(n,4),i,j
integer k,l,m,s,n1
open(10,file="1.txt")
open(11,file="2.txt")
read(10,*)((a(i,j),j=1,4),i=1,n)
do i=1,n-1
    s=0
    do j=i+1,n
        n1=0
        do k=1,4
            do l=1,4
                if(a(i,k)==a(j,l)) n1=n1+1
            enddo
        enddo
        if(n1==3) s=s+1
    enddo
    if(s>=1 .and. s<=3) write(11,*)i,(a(i,m),m=1,4) 
enddo
close(10)
close(11)
end

我来回复

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