回 帖 发 新 帖 刷新版面

主题:查书没找到,问个简单问题

我想实现下面这个过程,试了几次都没成功:

  eigenvalue=eig(h)
do i=1,10
  write(*,"('eigenvalue'(i)'=',f10.7)")eigenvalue(i)
 
end do
最后得到:
eigenvalue(1)=
eigenvalue(2)=
......
eigenvalue(10)=
忘记那个语句了,请同学们指点下吧。编程很辛苦啊,对新手来说,但是只要别急总会出来结果的。

回复列表 (共6个回复)

沙发


do i=1,10
  write(*,"('eigenvalue(',i<log(i*10)>,')=',f10.7)")eigenvalue(i)
 
end do

板凳


Warning: This argument's data type is incompatible with this intrinsic procedure; procedure assumed EXTERNAL.
  write(10,"('eigenvalue(',i<log(i*10)>,')=',f10.7)")eigenvalue(i)
----------------------------------^
E:\mcluo\jingjing.f90(74) : Error: This name does not have a type, and must have an explicit type.   [LOG]
  write(10,"('eigenvalue(',i<log(i*10)>,')=',f10.7)")eigenvalue(i)
-----------------------------^
Error executing df.exe.

jingjing.obj - 1 error(s), 1 warning(s)
出现小问题,还真不明白这个语句什么意思啊

3 楼


找到了一个办法,但是得到的结果有些不理想。
program one
implicit none
integer(4) i
integer,dimension(:)::b(5)
b=(/1,2,3,4,5/)
open(1,file='ex.txt')
do i=1,5
write(1,*) "b(",i,")=",   b(i)
end do
close(1)
end

得到的结果如下:
b(           1 )=           1
 b(           2 )=           2
 b(           3 )=           3
 b(           4 )=           4
 b(           5 )=           5


空的地方太大了,怎么控制下。呵呵

4 楼

要是都紧靠着多好:
 b( 1 )= 1
 b( 2 )= 2
 b( 3 )= 3
 b( 4 )= 4
 b( 5 )= 5

5 楼

      program one
      implicit none
      integer(4) i
      integer,dimension(5)::b
      data b /1,2,3,4,5/

      do i=1,5
       write(*,10) i, b(i)
      end do
   10 format('b(',i1,')=',i1)
      close(1)
      end

6 楼

[quote]
do i=1,10
  write(*,"('eigenvalue(',i<log(i*10)>,')=',f10.7)")eigenvalue(i)
 
end do[/quote]

do i=1,10
  write(*,"('eigenvalue(',i<log(i*10.0)>,')=',f10.7)")eigenvalue(i)
end do

忘了是log还是log10了,查查书看看log是不是以10为底的那个对数:)
手头没书也没开发环境~~~~

我来回复

您尚未登录,请登录后再回复。点此登录或注册