24小时热门版块排行榜    

查看: 2714  |  回复: 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 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 中科院材料273求调剂 +3 yzydy 2026-03-15 3/150 2026-03-15 21:15 by ms629
[考研] 290求调剂 +3 孔志浩 2026-03-12 8/400 2026-03-15 15:30 by 孔志浩
[考研] 294求调剂 +3 Zys010410@ 2026-03-13 4/200 2026-03-15 10:59 by zhq0425
[考研] 材料工程327求调剂 +3 xiaohe12w 2026-03-11 3/150 2026-03-14 20:20 by ms629
[考研] 求调剂 +6 yfihxh 2026-03-09 6/300 2026-03-14 01:18 by JourneyLucky
[考研] 求调剂,一志愿江南大学环境工程085701 +3 Djdjj12 2026-03-10 4/200 2026-03-14 00:31 by JourneyLucky
[考研] 311求调剂 +5 牛乳糖的卡卡 2026-03-10 5/250 2026-03-14 00:05 by JourneyLucky
[考研] 285 求调剂 资源与环境 一志愿北京化工大学 +3 未名考生 2026-03-10 3/150 2026-03-13 23:04 by JourneyLucky
[考研] 一志愿西南交大,材料专硕317求调剂 +5 lx8568 2026-03-11 5/250 2026-03-13 21:43 by peike
[考研] 285化工学硕求调剂(081700) +6 柴郡猫_ 2026-03-12 6/300 2026-03-13 20:46 by hmn_wj
[考研] 274求调剂 +3 S.H1 2026-03-12 3/150 2026-03-13 15:15 by JourneyLucky
[考研] 085600材料与化工 309分请求调剂 +7 dtdxzxx 2026-03-12 8/400 2026-03-13 14:43 by jxchenghu
[考研] 277求调剂 +4 anchor17 2026-03-12 4/200 2026-03-13 11:15 by 白夜悠长
[考研] 材料调剂,307分 +13 张泳铭1 2026-03-09 17/850 2026-03-13 11:09 by 薛云鹏
[考研] 一志愿华中师范071000,325求调剂 +5 RuitingC 2026-03-12 5/250 2026-03-13 10:43 by hyswxzs
[考研] 工科0856专硕化学工程269能调剂吗 +10 我想读研11 2026-03-10 10/500 2026-03-13 10:14 by Yuyi.
[考研] 研究生招生 +3 徐海涛11 2026-03-10 7/350 2026-03-12 14:26 by 徐海涛11
[考研] 0857环境调剂 +5 熠熠_11 2026-03-10 5/250 2026-03-11 10:59 by wang_dand
[考研] 293求调剂,一志愿陕师大生物学 +3 ??????.?.??? 2026-03-09 3/150 2026-03-11 10:02 by 学员8dgXkO
[考研] 327分求调剂086 +4 西红柿?小帅 2026-03-09 7/350 2026-03-10 14:47 by ruiyingmiao
信息提示
请填处理意见