24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1271  |  回复: 4

亍寞

金虫 (小有名气)

[求助] 求一个简单的读写文件的小程序。。。

觉得自己永远都学不会编程。。。。永远都不知道咋把逻辑变成语言的感觉。。。

输入文件是这样格式的:
  -9.2650000  11.1990000   6.4200000  -8.4100000  13.0720000   5.8390000
  -8.7520000  13.8680000   5.1770000  -8.3500000  13.5640000   7.2930000
  -9.0160000  12.9700000   7.9120000  -7.3330000  13.4440000   7.6560000
  -8.6820000  15.0320000   7.5110000  -9.3450000  15.6300000   6.6390000
  -8.2490000  15.5240000   8.5750000  -7.0250000  12.6330000   5.3880000
所有数据的格式都一样,横着三个一组xyz坐标,一行就是两个原子。然后现在想要写一个程序,如果某个原子距离原点的距离大于20,那么就把这个原子的标号输出出来一个txt。。。

具体拿上面的数据说的话,就是第一行是原子1,2,第二行是原子3,4。。。然后如果原子3,5距离原点距离大于10的话,那就输出一个txt,内容就是3,5.。。。

求助。。。感谢。。。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

锐利的碎片

木虫 (正式写手)

star watcher

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
亍寞: 金币+30, ★★★★★最佳答案, 请。。。接受我深沉的膜拜。。。。。。 2013-10-23 15:04:52
这点事情用fortran就是大炮打蚊子了。用bash就好了
cat test.txt | awk -v d=20 '(sqrt($1**2 + $2**2 + $3**2) > d) {print 2*NR - 1} (sqrt($4**2 + $5**2 + $6**2) > d) {print 2*NR}' > out.txt

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

2楼2013-10-23 14:41:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

亍寞

金虫 (小有名气)

送红花一朵
引用回帖:
2楼: Originally posted by 锐利的碎片 at 2013-10-23 14:41:08
这点事情用fortran就是大炮打蚊子了。用bash就好了
cat test.txt | awk -v d=20 '(sqrt($1**2 + $2**2 + $3**2) > d) {print 2*NR - 1} (sqrt($4**2 + $5**2 + $6**2) > d) {print 2*NR}' > out.txt

不好意思。。。能再问一下么,这里面的数据都是水分子,三个一组,如果我想读数据的时候不是每行都判断,而是只判断第一行的前三列,第二行的後三列,第四行的前三列,第五行的後三列,以此类推。。。。。。如果这个值大于20就输出这个行号和后面的三个数字,来保证一个水分子不会被从中间拆开。。。这个应该怎么改写呢?
稍微查了一下还是没找到awk关于这个的做法。。。万分感激!
3楼2013-10-24 14:16:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

锐利的碎片

木虫 (正式写手)

star watcher

引用回帖:
3楼: Originally posted by 亍寞 at 2013-10-24 14:16:45
不好意思。。。能再问一下么,这里面的数据都是水分子,三个一组,如果我想读数据的时候不是每行都判断,而是只判断第一行的前三列,第二行的後三列,第四行的前三列,第五行的後三列,以此类推。。。。。。如果这 ...

cat test.txt | awk '{print $1, $2, $3; print $4, $5, $6}' | awk -v d=20 'NR%3 == 1 && sqrt($1**2+$2**2+$3**2)>d'
先整理成一行一个原子再判断。

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

4楼2013-10-24 14:39:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

亍寞

金虫 (小有名气)

送红花一朵
引用回帖:
4楼: Originally posted by 锐利的碎片 at 2013-10-24 14:39:26
cat test.txt | awk '{print $1, $2, $3; print $4, $5, $6}' | awk -v d=20 'NR%3 == 1 && sqrt($1**2+$2**2+$3**2)>d'
先整理成一行一个原子再判断。...

极其感谢!!!
5楼2013-10-24 17:02:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 亍寞 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料工程302分求调剂 +10 zyx上岸! 2026-04-04 10/500 2026-04-06 22:49 by chenzhimin
[考研] 327求调剂 +5 Xxjc1107. 2026-04-06 5/250 2026-04-06 21:43 by dongzh2009
[考研] 304求调剂 +7 素年祭语 2026-04-06 9/450 2026-04-06 21:34 by wj165256
[考研] 338求调剂 +4 我想上岸ii 2026-04-05 4/200 2026-04-06 21:04 by 木子君1218
[考研] 一志愿北京2,材料与化工308求调剂 +13 熊二想上岸 2026-04-04 14/700 2026-04-06 19:42 by guanxin1001
[考研] 292求调剂 +3 lilllllxccc 2026-04-05 4/200 2026-04-06 10:39 by 蓝云思雨
[考研] 086000生物与医药求调剂 +3 老天眷顾之人 2026-03-31 3/150 2026-04-05 22:24 by syh9288
[考研] 求调剂 +7 张.1 2026-04-05 7/350 2026-04-05 20:40 by 啵啵啵0119
[考研] 调剂 +3 好好读书。 2026-04-02 3/150 2026-04-05 13:02 by arrow8852
[考研] 285求调剂 +11 哦呦呼o 2026-04-04 11/550 2026-04-05 08:15 by 544594351
[考研] 313求调剂 +3 海日海日 2026-04-04 3/150 2026-04-05 07:48 by 544594351
[考研] 环境285分,过六级,求调剂 +10 xhr12 2026-04-02 10/500 2026-04-04 21:53 by bn53987
[考研] 22408求调剂 354分 可跨专业 +3 hannnnnnn 2026-04-04 3/150 2026-04-04 14:35 by 土木硕士招生
[考研] 考研调剂 +4 zybz冲冲冲 2026-04-03 6/300 2026-04-04 13:08 by zybz冲冲冲
[考研] 调剂 +5 asdasdassda 2026-04-03 6/300 2026-04-03 20:27 by 岸上的一条鱼
[考研] 求调剂不挑专业 +3 xrh030412 2026-04-01 3/150 2026-04-03 14:40 by 氮气气气
[考研] 能源动力 调剂 +3 不破不立0 2026-04-02 3/150 2026-04-02 12:46 by ffffjjjj
[考研] 266分,一志愿电气工程,本科材料,求材料专业调剂 +10 哇呼哼呼哼 2026-04-01 11/550 2026-04-02 11:31 by lnilvy
[考研] 284求调剂 +12 小熊~~ 2026-03-31 12/600 2026-04-01 20:23 by 花??
[考研] 吉大生物学326分求调剂 +3 sunnyupup 2026-03-31 3/150 2026-03-31 09:28 by longlotian
信息提示
请填处理意见