[问题] 整理矩阵问题(数字重复)

楼主: albn (微积=危机)   2013-04-23 18:39:44
大家好!
我有个矩阵如下
0 1 1 1
0 1 1 2
0 1 1 3
0 1 1 1
0 1 1 2
0 1 1 3
0 2 1 1
0 2 1 2
0 2 1 3
0 2 1 1
0 2 1 2
0 2 1 3
......
....
..
由上述矩阵 会有重复输入的问题 所以我想另一个新矩阵存成
0 1 1 1
0 1 1 2
0 1 1 3
0 2 1 1
0 2 1 2
.......
的方式,由于他的重复是会乱跳 所以我目前想法是用
设原本DATA为A矩阵 B为空矩阵
利用A的每一列与B的每一列作比较 如果不一样就输入
一样就跳过 但目前一直处于无限循环的情况
附上code
ck=0d0
do i=1,24
write(*,*)'i=',i
do k=1,ck+1
write(*,*)'k=',k
if ((b(1,i) .EQ. c(1,k)) . AND . (b(2,i) .EQ. c(2,k)) . AND . (
!b(3,i) .EQ. c(3,k))) then
else
ck=ck+1
c(1,ck)=b(1,i)
c(2,ck)=b(2,i)
c(3,ck)=b(3,i)
c(4,ck)=b(4,i)
write(*,*)c(1,ck)
write(*,*)c(2,ck)
write(*,*)c(3,ck)
write(*,*)'end'
end if
enddo
enddo
前几次输出都没问题....后面就挂了
作者: fcuiii   2013-04-23 20:29:00
看不太懂你得说明,CODE里面的C和B代表啥??
楼主: albn (微积=危机)   2013-04-23 20:48:00
C是指新矩阵 B是指旧矩阵也就是原始值
作者: fcuiii   2013-04-23 21:02:00
哪你就不能用else,要用elseif把例外的条件设定好只用else这样会把不成立都做一次就会变无限哩
作者: jubilee2 (3321)   2013-04-23 22:28:00
加个excit
楼主: albn (微积=危机)   2013-04-24 00:37:00
后来稍微修改后 用exit!!! 就OK! 原本几百万行瞬间少很多!!谢谢各位!!

Links booklink

Contact Us: admin [ a t ] ucptt.com