24小时热门版块排行榜    

查看: 2955  |  回复: 23

shixha

银虫 (小有名气)

引用回帖:
Originally posted by snoopyzhao at 2011-05-08 07:22:43:
你上面给出的数据中没有字符串啊……

ITEM: TIMESTEP
415000
ITEM: NUMBER OF ATOMS
32000
ITEM: BOX BOUNDS
-6.86901 78.269
-6.86901 78.269
-6.86901 78.269
ITEM: ATOMS id type xs ys zs
25103 1 0.436324 0.100938 0.0298728
2888 1 0.0537094 0.304208 0.228186
9269 1 0.154273 0.363771 0.0239597
26883 1 0.494828 0.312881 0.217542
15665 1 0.130846 0.0832195 0.0741127
1513 1 0.412006 0.477168 0.165808
17079 1 0.147788 0.136434 0.13437
23869 1 0.0371001 0.0639775 0.0341563
29274 1 0.131698 0.478297 0.14099
783 1 0.388908 0.340938 0.0679263
8406 1 0.113574 0.428534 0.166423
1087 1 0.0635733 0.424081 0.0902714
1203 1 0.0895631 0.156925 0.11031
7276 1 0.333931 0.0889185 0.0580797
23953 1 0.477922 0.499675 0.0286989
134 1 0.13748 0.179393 0.145851
25894 1 0.371261 0.0103361 0.0139889
327 1 0.0525655 0.33294 0.0685234
647 1 0.0426882 0.264239 0.113865
。。。。。。。。。。
每隔40009行,重复这样的数据结构,51个周期
11楼2011-05-08 12:33:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shixha

银虫 (小有名气)

引用回帖:
Originally posted by snoopyzhao at 2011-05-08 10:12:11:
ascii 的回车,表示 Go to the beginning of the current line,所以,利用这一特性,可以模拟你的要求,呵呵……

哦,这样啊,呵呵
12楼2011-05-08 12:37:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

引用回帖:
Originally posted by shixha at 2011-05-08 12:33:52:
ITEM: TIMESTEP
415000
ITEM: NUMBER OF ATOMS
32000
ITEM: BOX BOUNDS
-6.86901 78.269
-6.86901 78.269
-6.86901 78.269
ITEM: ATOMS id type xs ys zs
25103 1 0.436324 0.100938 0.0298728
2888 ...

用 index 函数跳到你所需要的行的附近,然后再用 read 函数读你所需的数据,再进行进一步的处理。

这个过程,可以用 do...end do 这样的循环……

最好能给出一个完整的数据文件(那怕是精简过),加上你期望结果的描述,这样可以写成程序,大家都好理解……
13楼2011-05-08 13:12:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

引用回帖:
Originally posted by shixha at 2011-05-08 12:33:52:
ITEM: TIMESTEP
415000
ITEM: NUMBER OF ATOMS
32000
ITEM: BOX BOUNDS
-6.86901 78.269
-6.86901 78.269
-6.86901 78.269
ITEM: ATOMS id type xs ys zs
25103 1 0.436324 0.100938 0.0298728
2888 ...

如果行数一直是固定的,那么直接用 do i=1,...end do 来做也是可以的……
14楼2011-05-08 13:13:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shixha

银虫 (小有名气)

引用回帖:
Originally posted by snoopyzhao at 2011-05-08 13:13:26:
如果行数一直是固定的,那么直接用 do i=1,...end do 来做也是可以的……

行数是固定的,我用隐do循环来读,可以了,就是稍微麻烦点,呵呵,非常感谢
15楼2011-05-08 13:28:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sunyang1988

至尊木虫 (著名写手)

送鲜花一朵
引用回帖:
701330楼: Originally posted by snoopyzhao at 2011-05-07 18:12:15
第一个问题你没有说清楚,所以不知道你要干什么,至少应该给出数据,及你想要的结果……

第二个问题,可以试一下下面的代码:


program test

   character(len=20) :: a, b
   character*1 creturn ! co ...

你好,我用了类似上面的这段代码,在一个循环中想输出如下的完成度,
1/10000
2/10000
3/10000
4/10000
每一次都覆盖前面的,防止出现刷屏的情况。但用了这段代码,发现这一行始终是空的,直到程序终止(正常结束或强行退出)才打印出最后一次xxxx/10000
不知道能不能通过该进代码实现上面的想法,请指教
心之所向无惧无悔
16楼2013-02-27 09:35:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
1599787楼: Originally posted by sunyang1988 at 2013-02-27 09:35:34
你好,我用了类似上面的这段代码,在一个循环中想输出如下的完成度,
1/10000
2/10000
3/10000
4/10000
每一次都覆盖前面的,防止出现刷屏的情况。但用了这段代码,发现这一行始终是空的,直到程序终止(正常 ...

你先把你的问题代码给出来看看吧……

» 本帖已获得的红花(最新10朵)

17楼2013-02-27 20:26:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sunyang1988

至尊木虫 (著名写手)

送鲜花一朵
引用回帖:
1599887楼: Originally posted by snoopyzhao at 2013-02-27 20:26:55
你先把你的问题代码给出来看看吧……...

按照你说过的代码,做如下循环
program test
integer(8)::a,b
character(1)::creturn=achar(13)
do a=1,10
write(*,'(A,I)',advance='no') creturn,a
end do
end program test

我希望得到的结果是在屏幕的同一个位置打印1-10,每次后面的数字替换前面的数字,这样达到动态显示的效果而不是十个数字依次排列下来

可用上面的代码只能给出最后的10,我试过write加一行sleep,还是没有显示,只有等循环完后会出现一个'10'。按理说creturn是倒回去,可是a为什么没有显示呢

还有给字符变量creturn赋值的这个函数char()是什么意思,我没有查到

多谢了!
心之所向无惧无悔
18楼2013-02-27 20:57:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
1599894楼: Originally posted by sunyang1988 at 2013-02-27 20:57:01
按照你说过的代码,做如下循环
program test
integer(8)::a,b
character(1)::creturn=achar(13)
do a=1,10
write(*,'(A,I)',advance='no') creturn,a
end do
end program test

我希望得到的结果是在屏幕 ...

其实程序没有什么问题,只是你的a给得太小了,而你的计算机可能太快了,把 a 换成 10000 再看一下

另外,(A,I) 这一句是有错误的,I后面必须要有一个整数,如 I5……

至于 char 和 achar 这样的内置函数,请查 Fortran 的文档,如 gfortran 的手册……
19楼2013-02-27 23:11:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sunyang1988

至尊木虫 (著名写手)

引用回帖:
1599924楼: Originally posted by snoopyzhao at 2013-02-27 23:11:45
其实程序没有什么问题,只是你的a给得太小了,而你的计算机可能太快了,把 a 换成 10000 再看一下

另外,(A,I) 这一句是有错误的,I后面必须要有一个整数,如 I5……

至于 char 和 achar 这样的内置函数,请 ...

改成10000就直接显示10000
心之所向无惧无悔
20楼2013-02-28 08:53:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 shixha 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 小木虫没落了,除了祈祷帖子,几乎看不到有价值的帖子 +13 botar 2026-07-14 14/700 2026-07-15 19:28 by 寒流32
[基金申请] 会评 +5 无名者登山 2026-07-15 5/250 2026-07-15 18:15 by 杠就是你对
[基金申请] 生生命学部会评 +3 wuke100666 2026-07-15 3/150 2026-07-15 17:11 by kingkocxr
[基金申请] E口会评 +11 布布和一二 2026-07-13 13/650 2026-07-15 16:34 by Kittylucky
[基金申请] E口青C会评结束了吗? 40+3 小小书虫c 2026-07-14 9/450 2026-07-15 16:04 by 安静的知了
[基金申请] 生命口C13面上会评时间 +6 luckinging 2026-07-14 9/450 2026-07-15 14:39 by 雨冰共舞
[教师之家] 内心匮乏 +13 水冰月月野兔 2026-07-12 13/650 2026-07-15 14:21 by jiduquegai
[文学芳草园] 你可曾有过这种感受? +3 Jeanya 2026-07-09 6/300 2026-07-15 11:07 by mbtwt
[论文投稿] 农业机械学报投稿周期 +3 G0DLIN 2026-07-14 7/350 2026-07-15 09:26 by xs74101122
[基金申请] 国自然面上D口祈祷 +4 monkeynana 2026-07-14 4/200 2026-07-15 09:14 by 白水煮
[论文投稿] 跨出版社商投稿 20+4 倪好520 2026-07-13 4/200 2026-07-15 08:35 by bobvan
[基金申请] 没收到消息,再次陪跑 +3 天空星辰fly 2026-07-14 3/150 2026-07-14 19:14 by 6543yes
[基金申请] 不要再数国自然申请书的 filecode 的分隔符个数了 +13 sadpencil 2026-07-12 20/1000 2026-07-14 13:12 by 杠就是你对
[基金申请] 明天E口面上会评 +8 布布和一二 2026-07-12 9/450 2026-07-13 22:59 by QTSorange
[论文投稿] MSER送审了还被拒稿 +4 S778950906 2026-07-08 6/300 2026-07-13 16:22 by tfang
[基金申请] 祈祷青基必中 50+6 hadengry 2026-07-09 16/800 2026-07-12 20:31 by 登山虫虫
[考博] 27届辽宁大学应届毕业生申博 +3 可乐微风大海 2026-07-09 3/150 2026-07-10 21:23 by 贪玩的研究僧
[基金申请] 关于如何从代码看上不上会 +17 且听虎啸 2026-07-09 23/1150 2026-07-10 19:51 by sdfapple719
[有机交流] chemdraw 20+5 ?慕鱼? 2026-07-08 6/300 2026-07-10 15:37 by 紫枫星域
[考研] 在职考研 +6 wu5d 2026-07-08 7/350 2026-07-09 16:40 by 化工小霸王呀
信息提示
请填处理意见