Fortran计算九宫格运算等于4(do循环format换行)
1、首先介回顾这个“九宫格行、列加减乘除四则运算均等于4的问题”。如下图,在九个方格内填入1-9的数字,使每行、每列的加减乘除四则运算都等于4。



4、输入以下代码(如下图):program main integer i11巳呀屋饔,i12,i13 integer i21,i22,i23 integer i31,i32,i33 open(10,熠硒勘唏file='results.txt',status='unknown',form='formatted') do ia=1,9 i11=ia do ib=1,9 i12=ib do ic=1,9 i13=ic do id=1,9 i21=id do ie=1,9 i22=ie do ig=1,9 i23=ig do ih=1,9 i31=ih do ii=1,9 i32=ii do ij=1,9 i33=ij if(i11+i12-i13.eq.4 .and. & i21-i22*i23.eq.4 .and.& i31+i32-i33.eq.4 .and.& i11+i21/i31.eq.4 .and.& i12-i22*i32.eq.4 .and.& i13-i23-i33.eq.4 )then print *,'results=' print *,i11,i12,i13 print *,i21,i22,i23 print *,i31,i32,i33 write(10,*) 'results=' write(10,100)i11,i12,i13,& i21,i22,i23,& i31,i32,i33 endif enddo enddo enddo enddo enddo enddo enddo enddo enddo100 format(3(1x,3i2/)) end其中integer定义了i11-i33九个变量,open(10,***)建立results.txt文档用于写入结果,print *直接显示在屏幕上,write(10,100)将结果写入设备号为10也就是写入results.txt文档中,其格式按照100 format(3(1x,3i2/))的格式要求,斜线/起到换行的作用。

5、然后点击编译(Compile/Ctrl+F8)、建立(Build/Shift+F8)(如下图)。如果编译没错误,就通过导航栏Build-->Execute calculation.exe执行该程序,或直接Ctrl+F5执行该程序。

7、此时该工程所在目录下,也会存在results.txt的文档,打开该文档查看结算。发现这六组结果都能满足“九宫格行、列加减乘除四则运算均等于4”的要求。这道简单的数学题目就解决了。If you are interesting in these, please give some comments. My Baidu Jingyan name is jin_defence,please fellow me.
