代码之家  ›  专栏  ›  技术社区  ›  Sara

在Fortran中的终端上输入值之前,用文本提示用户

  •  -1
  • Sara  · 技术社区  · 6 年前

    我想知道如何让fortran让我在屏幕上输入一个值(来自循环),我的意思是,我有一个简单的循环(在脚本中):

    if (ns.eq.1) then
     f(i,n+1)=5*sign(1.,(20-(x-c*t))*((x-c*t)-10))
     elseif (ns.eq.2) then
      f(i,n+1)=(1-mu)*f(i,n)+(mu*f(i-1,n))
    
    endif
       enddo
    

    我想出现在(终端)(当我做gfortran…等时) '输入ns值' 所以我可以把1放在第一个案例中,如果我把2放在第二个案例中 我试过了

    write(*,*)'Enter a value of ns'   
    read(*,*) ns
    

    但没用

    1 回复  |  直到 6 年前
        1
  •  1
  •   Steve Lionel    6 年前

    可能有效的方法是:

    write (*,'(A)',advance='no') 'Enter a value of ns '
    read (*,*) ns
    

    Fortran标准中不能保证这会满足您的需要,但几乎每个实现都会这样做。