IF(K.LT.I*J)K=I*J (如果K小于I*J,则给K赋值)10 CONTINUE (行号10,继续循环)WRITE(*,*)K END 因此K终值为5*4=20 你那两个答案不知从何而来,我已经运行过了程序,答案是我说的4和20。另外,虚机团上产品团购,超级便宜
Print和Write的不同处就在于少了Write的第一个星号,也就是少了赋值输出位置的能力,Print命令只能针对屏幕来使用。建议尽量使用Write来做输出的工作,因为如果日后想把程序的输出转换到其他地方,例如转换到文件中,使用Write命令的程序改写起来比较容易,只有把UNIT值指到另一个输出位置就行了。 Integer:Integer(kind = 4...
类比:continue和break CYCLE: PROGRAM test_cycle INTEGER::i DO i=1,5 IF(i==3) CYCLE WRITE(*,*)i END DO WRITE(*,*)'END OF LOOP!' END PROGRAM test_cycle 输出:1,2,4,5 EXIT: PROGRAM test_cycle INTEGER::i DO i=1,5 IF(i==3) EXIT WRITE(*,*)i END DO WRITE(*,*)'END OF...
fortran常用字符标识
End if If(逻辑判断式) then …… Else …… End if 逻辑运算符: 逻辑判断式 多重判断 If(条件1) then …… Else if(条件2) then Else …… End if 浮点数及字符的逻辑运算 使用浮点数来做逻辑运算时,要避免使用“等于”的判断。因为使用浮点数做计算时,有效位数是有限的,难免会出现计算上的误差,理想...
形式上类似于if,但只用于设置数组 where ... elsewhere ... elsewhere ... endwhere 1. 2. 3. 4. 5. 6. 7. (没有then) FORALL是Fortran95添加的功能,只能用于数组操作,forall可以嵌套使用,还可以在forall中使用where,但where中不能使用forall ...
If(.not. allocated(a))then Allocate(a(5)) End if 函数 子程序(subroutine)的使用 子程序代码以subroutine开头,它同样要取一个名字,以end或end subroutine来结束。严格地讲,end subroutine后还可以再接上这个子程序的名字 program ex implicit none
10 continue print *, sum end 上面介绍的循环中,循环终端语句为一般的执行语句。F90规定:循环终端语句可以是除了GOTO、块IF、CASE、CYCLE、DO、ELSE、ELSE IF、END IF、END、END SELECT、EXIT、SELECT CASE、STOP和RETURN语句以外的任一可执行语句,如打印语句、赋值语句、输入语句、逻辑IF语句等都可以作为终端语句...
if (ierr /= 0) then write(*,*) Error, invalid input. cycle interactive_loop!cycle 相当于C里的continue end if ! Compute area. The ** means "raise to a power." area = 2 * pi * (radius**2 + radius*height)! 指数运算比C方便 ...
IF基本用法 If(逻辑判断式) then …… End if If(逻辑判断式) then …… Else …… End if 逻辑运算符: Fortran 90 Fortran 77 == 判断是否“相等” .eq. 判断是否“等于” /= 判断是否“不相等” .ne. 判断是否“不等于” > 判断是否“大于” .gt. 判断是否“大于” >= 判断是否“大于或等于”...