24小时热门版块排行榜    

CyRhmU.jpeg
查看: 592  |  回复: 5

李学忠

铁杆木虫 (知名作家)

lxz


[求助] 关于fortran

刚开始学习fortran,现在想把一个txt文件,里面有三列,800多行,想把其中的一列全部加上一个数,如果加上后这个数超过20,那么就减去20.不超过就算了。
最后输出txt文件,给怎么实现呢,谢谢!
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

★ ★ ★
余泽成(金币+3): 辛苦了! 2011-06-15 21:00:45
比如在第一列上加一个值,那么可以用以下实现:
CODE:
program poly
real :: x, y, z, num
integer :: ios

open(unit=12, file='polymer.txt', status='old')
open(unit=13, file='output.txt', status='new')

write(*,*) 'please input the specific real number:'
read(*,*) num
do
   read(12,*, iostat=ios) x, y, z
   if (ios /= 0) exit
   if ((x + num) > 20.0) then
      x = x + num - 20.0
   else
      x = x + num
   end if
   write (13, *) x, y, z
end do

end program poly

2楼2011-06-15 14:31:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

★ ★
李学忠(金币+5): 非常感谢! 2011-06-15 16:22:49
余泽成(金币+2): 谢谢参与应助! 2011-06-15 21:01:20
指定列加特定的数值:
CODE:
program poly
real :: num
real, dimension(3) :: coor
integer :: ios, i

open(unit=12, file='polymer.txt', status='old')
open(unit=13, file='output_.txt', status='new')

write(*,*) 'please input the specific real number:'
read(*,*) num

write(*,*) 'which column do you want to add (1, 2, or 3)?'
read(*,*) i
do
   read(12,*, iostat=ios) coor(1:3)
   if (ios /= 0) exit
   if ((coor(i) + num) > 20.0) then
      coor(i) = coor(i) + num - 20.0
   else
      coor(i) = coor(i) + num
   end if
   write (13, *) coor(1:3)
end do

end program poly

3楼2011-06-15 14:35:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

李学忠

铁杆木虫 (知名作家)

lxz


引用回帖:
Originally posted by snoopyzhao at 2011-06-15 14:35:23:
指定列加特定的数值:

[code]
program poly
real :: num
real, dimension(3) :: coor
integer :: ios, i

open(unit=12, file='polymer.txt', status='old')
open(unit=13, file='output_.txt', status ...

你好,谢谢你了
这是


4楼2011-06-15 16:53:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)


jjdg(金币+1): 感谢参与 2011-06-16 01:49:14
你用啥编译器,好象不支持 Fortran 90 的语法?
5楼2011-06-15 17:02:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

李学忠

铁杆木虫 (知名作家)

lxz


引用回帖:
Originally posted by snoopyzhao at 2011-06-15 17:02:12:
你用啥编译器,好象不支持 Fortran 90 的语法?

哦。谢谢我再试试
6楼2011-06-15 17:51:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 李学忠 的主题更新
信息提示
请填处理意见