24小时热门版块排行榜    

查看: 868  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

1010500

金虫 (小有名气)

[求助] FORTRAN或程序语言数据处理求助

现有a.txt文件,其中数据格式如下:
0  0   0.066830    0  1  -0.030365    0  2   0.004788
0  3  -0.030365    1  0  -0.030365    1  1  -0.002760
1  2   0.042759    1  3   0.053272    2  0   0.004788
2  1   0.042759    2  2   0.000067    2  3  -0.000719
3  0  -0.030365    3  1   0.053272    3  2  -0.000719
3  3  -0.002141                                      
希望通过FORTRAN读入处理,以以下格式输出到b.txt:
0  0   0.066830                                                         
1  1  -0.002760    1  0  -0.030365                                      
2  2   0.000067    2  1   0.042759    2  0   0.004788                  
3  3  -0.002141    3  2  -0.000719    3  1   0.053272    3  0  -0.030365
急切的希望高手帮助,不甚感激!C/C++、VB处理也可。金币不够可以再加.

[ Last edited by 1010500 on 2012-11-21 at 20:54 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

chembetsey

木虫 (小有名气)

【答案】应助回帖


感谢参与,应助指数 +1
jjdg: 金币+1, 感谢参与 2012-11-22 10:05:33
直接循环读入数组,再写出来就是了。处理数组,Fortran功能更强大。
open(unit=1, file='A.txt')
open(unit=2, file='B.txt')
read(1, *) (R(i, j), j=0,3), i=0,3)
do i=0,3
    write(2, *) (i, j, R(i, j), j=i, 0, -1)
end do
3楼2012-11-21 21:39:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
1010500: 金币+20, ★★★很有帮助, 你好,感谢你的帮助,不懂你使用的这个程序,能否写成C++? 2012-11-21 21:20:39
jjdg: 金币+1, 感谢参与 2012-11-22 10:05:27
python code
CODE:
#! /usr/bin/env python
import re

data = {}
for line in open(r'data.txt').readlines():
        items = [x.strip() for x in line.split(' ') if len(x.strip())>0]
        for i in range(0,len(items),3):
                if items[i] in data.keys():
                        data[items[i]][items[i+1]] = items[i+2]
                else:
                        data[items[i]] = {items[i+1]:items[i+2]}
for i in range(len(data)):
        for j in range(i,-1,-1):
                print '%d %d %0.6f ' % (i,j,float(data[str(i)][str(j)])),
        print

结果:
CODE:
>>> ================================ RESTART ================================
>>>
0 0 0.066830
1 1 -0.002760  1 0 -0.030365
2 2 0.000067  2 1 0.042759  2 0 0.004788
3 3 -0.002141  3 2 -0.000719  3 1 0.053272  3 0 -0.030365
>>>  

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2012-11-21 21:08:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

1010500

金虫 (小有名气)

引用回帖:
3楼: Originally posted by chembetsey at 2012-11-21 21:39:27
直接循环读入数组,再写出来就是了。处理数组,Fortran功能更强大。
open(unit=1, file='A.txt')
open(unit=2, file='B.txt')
read(1, *) (R(i, j), j=0,3), i=0,3)
do i=0,3
    write(2, *) (i, j, R(i, j), ...

谢谢你了,能否把代码写全验证一下,我运行你给的代码出现很多错误。
4楼2012-11-21 22:20:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

chembetsey

木虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
jjdg: 金币+1, 感谢参与 2012-11-22 10:05:40
1010500: 金币+30, ★★★★★最佳答案, 非常感谢你的帮助! 2012-11-23 15:01:10
改正错误是你学习的必经途径。

integer i, j, k
real*8 R(0:3,0:3)
open(unit=1, file='A.txt')
open(unit=2, file='B.txt')
read(1, *) ( (k, j, R(i, j), j=0,3), i=0, 3)
do i=0,3
    write(2, '(100(I3, I3, F10.6))') (i, j, R(i, j), j=i, 0, -1)
end do
end
5楼2012-11-21 23:03:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 281求调剂 +4 2026计算机_诚心 2026-03-01 4/200 2026-03-01 15:21 by chemisry
[考研] 一志愿中南大学理学化学 +3 15779376950 2026-03-01 4/200 2026-03-01 14:27 by 15779376950
[考研] 298求调剂 +9 人间唯你是清欢 2026-02-28 12/600 2026-03-01 14:23 by Ducount.Y
[考研] 291分工科求调剂 +8 science饿饿 2026-03-01 9/450 2026-03-01 14:22 by Ducount.Y
[考研] 化工299分求调剂 一志愿985落榜 +4 嘻嘻(*^ω^*) 2026-03-01 4/200 2026-03-01 13:15 by wang_dand
[考研] 290求调剂 +8 材料专硕调剂; 2026-02-28 9/450 2026-03-01 12:46 by 闭眼看蓝天
[考研] 302材料工程求调剂 +4 Doleres 2026-03-01 5/250 2026-03-01 11:52 by liqiongjy
[考研] 材料类求调剂 +8 wana_kiko 2026-02-28 8/400 2026-03-01 11:44 by 王伟要上岸啊
[考博] 博士自荐 +4 kkluvs 2026-02-28 4/200 2026-03-01 10:19 by 馥安馥安
[论文投稿] 求助coordination chemistry reviews 的写作模板 10+3 ljplijiapeng 2026-02-27 4/200 2026-03-01 09:07 by babero
[论文投稿] Optics letters投稿被拒求助 30+3 luckyry 2026-02-26 4/200 2026-03-01 09:06 by babero
[考研] 285求调剂 +6 满头大汗的学生 2026-02-28 6/300 2026-03-01 06:29 by Trying]
[基金申请] 面上模板改不了页边距吧? +5 ieewxg 2026-02-25 6/300 2026-03-01 00:10 by addressing
[考研] 307求调剂 +4 73372112 2026-02-28 6/300 2026-03-01 00:04 by ll247
[考研] 292求调剂 +3 yhk_819 2026-02-28 3/150 2026-02-28 21:57 by gaoxiaoniuma
[考研] 295求调剂 +5 19171856320 2026-02-28 5/250 2026-02-28 21:39 by gaoxiaoniuma
[考研] 264求调剂 +3 巴拉巴拉根556 2026-02-28 3/150 2026-02-28 21:31 by gaoxiaoniuma
[高分子] 求环氧树脂研发1名 +3 孙xc 2026-02-25 11/550 2026-02-28 16:57 by ichall
[考研] 265分求调剂不调专业和学校有行学上就 +4 礼堂丁真258 2026-02-28 6/300 2026-02-28 16:18 by 求调剂zz
[硕博家园] 【博士招生】太原理工大学2026化工博士 +4 N1ce_try 2026-02-24 8/400 2026-02-26 08:40 by N1ce_try
信息提示
请填处理意见