[问题] 请问要怎么把不同个数数据写入一个矩阵中

楼主: pttlyt (让血液重新滚动)   2014-03-01 22:31:06
不好意思又打扰了...
现在是这样的我有一组数据示意如下
参考原子编号: 与此原子相对应的其他原子编号
1: 2 5 8
2: 5 9 13 15 16 18
...
以此类推
我试着想要把他写入一个矩阵中
(e.g 同一列中第一行纪录参考原子编号,其他行纪录对应原子编号
但问题是我没办法得知这个未知的矩阵大小....
我试过但似乎allocatable的矩阵无法满足这样的状况 (或是可能我操作上有问题...
不知道有没有什么方法可以做这样的事情
或是定义一个绝对超过所需大小的的矩阵 把不足的地方补"0"之类的?
※目前进度有点笨Orz 不过好像有一线曙光这样...
小弟不才写了很丑八怪的程式码= =
决定再产生数据的时候每过一个循环让counter+1
看了之前产生的参差不齐数据最多不超过 25 个
于是我设一个逻辑循环当
if (counter<25)
do i=1,(25-counter)
write(*,*)0
end do
end if
于是我整个程式码丑到爆炸充满循环.......
感谢各位前辈们
好多新手问题SOR...
作者: gilocustom   2014-03-01 22:53:00
你最后提出来的构想是可行的,实际做法就同你字面所述,前提是内存足够。
楼主: pttlyt (让血液重新滚动)   2014-03-01 22:57:00
!!好的我研究看看怎么做!
作者: gilocustom   2014-03-01 23:02:00
也可以考虑用type自订结构符合需求的变量。
楼主: pttlyt (让血液重新滚动)   2014-03-01 23:28:00
阿...我看彭那本书还是没有很懂type 能示范一下简单例子吗QAQ
作者: gilocustom   2014-03-01 23:55:00
书里面应该有附范例吧?若看不懂不妨提出来讨论。以范例来说,只要将自订型态person的内容设为可配置阵列/指标阵列,再将变量a宣告为person型态的可配置阵列/指标阵列,就可以广义地在同个变量下分别配置不同维度。建议先采用比较单纯的做法(配置足够大的阵列),确定可行但仍有内存不够用之虞再考虑其他做法。

Links booklink

Contact Us: admin [ a t ] ucptt.com