多语言展示
当前在线:934今日阅读:176今日分享:34

Fortran计算九宫格运算等于4(do循环format换行)

Fortran即Formula Translation(公式翻译)的缩写,是世界上出现最早的高级程序设计语言。用Fortran语言计算数学问题非常简单高效,下面介绍Fortran语言解决“九宫格行、列加减乘除四则运算均等于4问题”的经验。
工具/原料
1

Fortran

2

Mathematics

3

数学

方法/步骤
1

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

2

下面启动Fortran编译器,通过File-->New-->Project Workspace,建立一个工程,工程Name不妨命名为calculation,工程Location自行设置。

3

然后,通过File-->New-->Text File在该工程下建立一个空白的Fortran语言编辑脚本(文件),并通过File-->Save保存该脚本,并将脚本File Name不妨命名为ninepatch.f(建议以.f结尾,暂不使用.f90结尾,即删除.f90中的90),然后点击OK,此时Fortran编辑脚本中出现绿色竖线。下面开始写代码。

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执行该程序。

6

执行该程序后,显示六组结果,如下图。

7

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

推荐信息