Fortran语言教学
fortran教程

fortran教程Fortran是一种编程语言,用于科学和工程计算。
它具有高性能和可靠性,适用于大规模的数值计算和数据处理。
Fortran的基本语法是由一系列语句组成的程序。
每个语句都以一个数字标签开头,可用于控制程序的执行顺序。
以下是Fortran的一些基本语法和常用功能。
1. 变量和数据类型Fortran支持多种数据类型,包括整数(Integer)、实数(Real)和字符(Character)。
变量声明可以在程序的开头部分完成,例如:```fortranINTEGER :: iREAL :: xCHARACTER(len=10) :: name```注意,每个变量声明必须以两个冒号(::)开头。
2. 数学运算Fortran提供了一系列的数学运算符,用于执行基本的算术和逻辑运算,例如加法(+)、减法(-)、乘法(*)、除法(/)和求余(MOD)。
运算符的使用与其他编程语言相似。
3. 控制结构Fortran支持常用的控制结构,例如条件语句(IF-ELSE)和循环语句(DO LOOP)。
条件语句可以根据条件来执行不同的代码块,例如:```fortranIF (i > 0) THENPRINT*, 'i is positive'ELSEPRINT*, 'i is non-positive'END IF```循环语句可以根据条件重复执行一部分代码,例如:```fortranDO i = 1, 10PRINT*, iEND DO```上述代码将打印出1到10的数字。
4. 数组和矩阵运算Fortran支持多维数组和矩阵运算。
声明数组时可以指定维度和元素类型,例如:```fortranREAL, DIMENSION(3,3) :: matrix```然后,可以使用多个索引访问数组元素,例如:```fortranmatrix(1,2) = 3.14```这将给数组中的第1行第2列的元素赋值为3.14。
fortran 语言编程

fortran 语言编程Fortran 语言编程Fortran(Formula Translation)是一种面向科学计算和工程计算的高级编程语言。
它于1957年诞生于IBM,是最早被广泛采用的科学计算语言之一,目前已经发展到第四个版本(Fortran 2018)。
Fortran是一种编译型语言,它通过编写源代码并使用编译器将其转换成机器语言来执行。
本文将详细介绍Fortran语言的基础知识、语法规则和常用的编程技巧,以帮助读者了解和掌握这门强大的科学计算语言。
第一步:安装Fortran编译器要开始编写和运行Fortran程序,首先需要安装Fortran编译器。
有多种Fortran编译器可供选择,其中最常用的是GNU Fortran(gfortran)和Intel Fortran Compiler(ifort)。
可以从官方网站或其他可信的来源获得这些编译器的安装程序,并按照提示进行安装。
第二步:编写并编译Fortran程序在开始编写Fortran程序之前,需要了解Fortran的基本语法规则。
Fortran使用固定格式或自由格式,固定格式的源代码按照列格式排列,每行的前6列被保留用于行号和注释,从第7列开始是可执行代码。
自由格式没有列格式的限制,更加灵活,但在编译阶段需要指定自由格式。
下面是一个简单的Fortran程序示例,用于计算并输出两个数的和:fortranprogram additionimplicit noneinteger :: a, b, sumprint *, "Enter two numbers:"read *, a, bsum = a + bprint *, "The sum is:", sumend program addition将以上代码保存为一个以.f90为后缀名的文件(例如addition.f90),然后使用编译器将其编译成可执行程序。
Fortran科学计算编程课件

Fortran科学计算编程课件Fortran(即Formula Translation的缩写)是一种用于科学计算和数值分析的编程语言。
由于其高效性和可靠性,Fortran在科学计算领域广泛应用。
本课件将为您介绍Fortran编程语言,并提供相关的科学计算示例和实践。
第一部分:Fortran简介Fortran是一种面向过程的编程语言,由IBM在1950年代开发,旨在为科学计算提供高性能和可移植性。
Fortran以其强大的数学计算和数组处理能力闻名,是科学家和工程师们首选的编程语言之一。
第二部分:Fortran基本语法2.1 变量和数据类型在Fortran中,变量的类型必须在声明时指定,并且不同类型的变量可以存储不同类型的数据,如整数、实数和字符等。
这一部分将详细介绍Fortran的常用数据类型和变量声明方法。
2.2 控制结构Fortran支持常见的控制结构,例如条件控制语句(if-else语句)、循环语句(do循环)和跳转语句(goto语句)。
我们将逐一介绍这些结构的语法和使用方法,并给出实例演示。
第三部分:科学计算实例为了帮助您更好地理解Fortran的应用,本课件将提供一些科学计算的实例,包括线性代数运算、梯度下降算法等。
通过这些实例,您将学会如何用Fortran编写科学计算程序,并了解其在实践中的应用。
第四部分:Fortran编程工具和资源4.1 编译器Fortran编程需要一个符合语言标准的编译器来将代码转化为可执行文件。
我们将向您介绍几个常用的Fortran编译器,并给出安装和配置的指南。
4.2 开发环境为了提高编程效率,许多IDE(集成开发环境)和编辑器提供了对Fortran的支持。
我们将为您介绍几个常用的Fortran开发环境,并给出使用方法和建议。
4.3 学习资源如果您想深入学习Fortran,我们还准备了一些在线教程和学习资源的链接,方便您进一步扩展知识和技能。
结语通过本课件的学习,您将对Fortran科学计算编程有更深入的了解,并掌握基本的语法和应用技巧。
FORTRAN语言程序设计ppt课件

do i=1,10 !循环语句
s=s+i
!循环体
enddo
上述循环所要执行的重复操作是: s=s+i (即循环体),但每一次循环时,循环 体的操作数据s,i的值是不同的。
.
精选2021版课件
8
2.3 算法的表示方法
(1)传统流程图 即用有向线段将描述算法步骤的各功能框连接起来.如下图所示:
A B 图(a)顺序结构
1.逻辑常量仅有两个,.TRUE.(真)和.FALSE.(假)。注意:逻辑常量 两侧的两个小数点不能省略。逻辑型常量是具有逻辑型数据类型的非数 值数据,又称为逻辑值或布尔值。
2.对于逻辑值.TRUE.,在其存储单元字节内每位为“1”,可视为整数值 -1;对于逻辑值.FALSE.,在其存储单元字节内每位为“0”,可视为整数 值0,它们均能参与整数运算。如7+.FALSE.,结果仍为7。1+.TRUE., 结果则为0。
数组、函数、过程等实体的名称。
名称的定义(即语法描述):由英文字母开头的31个以内 的字母、数字、下划线(_)以及美元符字符序列组成。
例:NUMBER、x1、root_2、y$ _ab、5xy、x.y
5.2.2 保留字 一个语句中的特定单词,如PROGRAM、END、IF、ENDIF、
DO、ENDDO等,称为语句保留字。 说明: FORTRAN90程序中允许用保留字作为其它实体的名 称,但是一般不提倡。
1x10-10
注意:单独的指数部分不能构成一个实型常量。 例:E5
5.6.2.3 复型常量
表示普通代数中的复数。即: a ± bi(其中a是实部, b是虚部)
一般形式:(a,b)
例:(-3,5)
!表示复数:-3+5i
FORTRAN语言自学基础

《FORTRAN语言》自学提纲第一章1 FORTRAN基础1. 一个FORTRAN程序由一个主程序或一个主程序与若干个子程序组成。
但一个完整的FORTRAN程序只能有一个主程序,主程序的第一个语句是PROGRAM语句,用以说明主程序的名称。
这个语句也可以省略,省略时默认为主程序的名称为MAIN。
2.FORTRAN的子程序主要有三种:⑴函数子程序,其第一个语句为FUNCTION;⑵子例行子程序,其第一个语句为SUBROUTINE;⑶数据块子程序,其第一个语句为BLOCK DA TA。
主程序与各个子程序可以独立编译,最后再链接成一个可执行程序。
在编写并输入一个FORTRAN程序时,既可以将主程序与各个子程序存放在一个文件中,也可以将它们分别存放在不同的文件中。
但必须注意,主程序与各个子程序都是独立的程序单位,每个程序单位的最后一行必须用END语句作为结束。
在主程序中,虽然END语句还具有使程序停止运行的作用,但由于一个程序单位只能在最后一行有END语句,因此,在程序的其它位置处需要停止运行时,只能用STOP语句,不能用END语句。
同样的道理,在子程序中,虽然END语句还具有使程序流程返回到调用程序的作用,但在子程序的其它位置(不是最后一行)需要返回到调用程序时,只能用RETURN语句,不能用END语句。
3.FOPTRAN源程序的书写格式有严格的规定。
⑴一行中第一列为“C”或“*”时,该行被认为是注释行。
注释行可以写在四个区中的一个区,且注释行可以出现在程序单位的任何位置。
但注释行不能有续行,需要时可以将连续若干行都定义为注释行。
⑵FORTRAN语句部分不能占用标号区及续行标志区,只能从第七列开始。
当语句太长时,可以使用续行。
在继续行的标号区内必须为空白(即继续行不允许有标号),标号只能出现在起始行上。
⑶起始行与继续行或各继续行之间的空格不起作用,因此,对于一般的语句,可以不必到72列才转为继续行,继续行也不必一定要从第7列接着写,但是,包括在引号内的字符串中的空格是有效的,因此,对于字符串要使用继续行时应特别注意,最好写到一行的72列时再转为继续行,且要从继续行的第7列接着写。
Fortran语言基础PPT学习教案

1.数值型常量及其类型 (1)整型常量
整型常量又称为整型常数或整数,包括正数、负 数和0。 例如:+5 -367 0 98
第9页/共65页
(2)实型常量
实型常量即实型常数或简称为实数。它有两种形式: ①小数形式:12.3 -3.5 100. .56 ② 指 数 形 式 : 5.35E5 表 示 5.35×105 , 2.66E-3 表 示 2.66×10-3
第10页/共65页
当单精度实数不足以表示一个数的大小或 精度时,可以用双精度实数表示,只是将 实数指数部分中的字母E改成字母D即可。 例如,6.85746304857D5, .3875479654765D+3等都是双精度实数。
第11页/共65页
(3)复型常量 复型常量即复型常数或简称为复数。 如:(1.0,1.0)表示复数1.0+1.0i,(2.1,-4.5) 表示复数2.1-4.5i,(-6.0,0) 表示复数-6.0。
字符串
.EQ.,.NE., ==,/=
两个操作数或者同时是任意数值 类型与任意种别参数的数值,或 者同时是具有相同种别参数的任 意长度的字符串
.GT.,.GE.,.LT.,.LE., >,>=,<,<=
两个操作数或者同时是除了复型 之外的任意数值类型与任意种别 参数的数值,或者同时是具有相 同种别参数的任意长度的字符串
end
第1页/共65页
2.1 字符集与保留字
1.字符集
FORTRAN规定允许使用的字符为:
英文字母
A-Z及a-z(大小写不区分)
阿拉伯数字
0-9
特殊符号 空格 = + - * ( ) ,. ’ : “ ! & ; < > $ ? _
fortran语言教程第6章

第6章数组应用6.1 数组与数组元素数组是由任何一种简单数据类型按照一定的组织规则构造出来的数据类型,是有序数据的集合。
数组中可以包含很多个同类型的变量,我们把这些变量叫做“数组元素”或“数组分量”或“下标变量”。
在机器中数组占用一片连续的存贮单元,每个单元都用同样的名字(即数组名)但编号不同。
数组的命名方式与简单(基本)变量命名方式相同。
假设有数组A,占据4个存储单元,元素在内存中的排列可形象表示出来:AA(1),A(2),A(3),A(4)A(1,1),A(1,2),A(2,1),A(2,2)每个单元的编号方式可以有多种,第一种用一个数字来编号称为一维数组,第二种用两个数字来编号称二维数组。
可以推广,用N个数字对数组的元素编号则称为N维数组。
数组使用之前一定要说明,事先告诉机器数组的类型,包含分量的个数,分量的编号方式等,以便机器为数组预留内存空间。
6.1.1数组的说明数组的说明应该包括以下几个方面的内容:•确定数组的名称;•确定数组元素的类型;•确定数组的结构(包括数组维数,每一维的取值范围等内容)。
说明语句的形式有:(1)类型说明语句:说明数组的类型和元素个数类型标识符数组名1 (维说明1[,维说明2,...])[,数组名2...](2)DIMENSION语句:只说明数组元素个数DIMENSION数组名1 (维说明1[,维说明2,...])[,数组名2...]其中“维说明”的形式:维下界∶维上界(或下标下界∶下标上界)例如:REAL A(1:10),B(80:90),C(-5:4),NUM1(1:2,1:5)INTEGER D(0:1,0:4),NUM2(2:5)DIMENSION S(3:5), M(1:10)说明语句中的A,B,C,D,NUM1,NUM2等都是数组名,数组名不能与本程序单位中的其他任何标识符重复。
通过“维说明”可以确定数组维数,每一维的取值范围等内容。
同一维的上下界之间用冒号分开;括号中至少要有一个维说明,也可以有多个。
fortran教程.ppt

N-S 图——结构化流程图 S=0
例2 用N-S图表示
N=1
S+1/N= S
N+1= N
直到N>100为止
打印 S 值
例1 用N-S图表示
N=0 T=0
输入 A A+T →T N+1 →N 直到N≥100 为止 打印 T
例3
L=1
N=1
S=1
SUM = 1
L+2 → L
-S → S
N+1 → N
SUM+S/L →SUM
(3)输入一个数给“收入变量”A
(4)将A和T的值相加,其和值放在变量T中 A+TT;
(5)使N的值加1,即N+1 N(N的值表示已累加数据的个数)
(6)若N﹤100,则返回(3)继续执行以后各步,否 则转到执行(7)
(7)打印出总和T的值
以上算法体现“迭代”的思想—计算机算法的最大特 点
例2 求 1
将高级语言程序(源程序)转换为机器语言程序(目标程序)
的工作由“编译程序”来完成。 编译
执行
高级语言程序
机器指令目标程序
计算结果
编译程序 (预先存如电脑)
裸机
用户源程序
操作系统
高级语言编译系统
计算机系统与操作系统关系示意图
§ 1-2 算法(Algorithm)与程序设计(Programming)
1. 近50年的丰富积累,资源不浪费,对原有程 序向下兼容。而C语言与Matlab才20多年
2. FORTRAN书写和语法要求严格,更适合于 严谨的科学计算。而C对数组不提供越界检查, 容易出错,而且不容易查出
3. FORTRAN 90~95可以直接对矩阵和复数进行 运算。而C语言则要用多重循环
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.2 简单的Fortran程序分析
执行结果:
x1= 1.30 x2=-4.30
例2:试求3!,6!,9!的值。 编程如下:
2013-7-24
9
3.2 简单的Fortran程序分析
主程序: c main program j=k(3) l=k(6) m=k(9) write(*,*)j,l,m end 执行结果: 6 720 362880
2013-7-24 28
3.6 变
量
三种类型说明的优先级: 高 类型说明语句(显式说明) implicit语句说明 低 “I~N规则”
2013-7-24
29
3.7 Fortran内部函数
在编制Fortran程序时,经常要用到 一些基本的数学函数,如三角函数、指 数函数、对数函数等。为方便用户, Fortran编译系统已提供了这些函数的 计算程序,需要时即可调用。 Fortran内部函数调用格式: 函数名(自变量)
2013-7-24 15
3.4 Fortran程序的编辑与运行
注:若Fortran程序是由一个主程序文件和若 干个子程序文件组成,则应将各文件添加到 同一项目工作间,分别进行编译,然后连编 和运行项目文件。 七、打开项目文件 选“File‖→―Open‖→在打开对话框文件 类型下拉列表中选“Project Workspace(*.mdp)‖→然后选项目工作间文件 夹中的项目文件。
⑵同一个数值可用不同的指数形式表示。 例: 0.876→8.76E-1→87.6E-2→876E-3 ⑶计算机在输出时,按标准化指数形式输出。 例:0.28→2.800000E-01 -59.58E+12→-5.958000E+13 即数字部分大于1,且小数点前只有一位非零 数字的指数输出形式。 ⑷在微机中,一般用四个字节存放一个实数,其取值 范围为:10-75~1075。超出此范围时为“溢出”错 误。
x1, 2 b b 4ac 2a
2
c the roots of the quadratic equation a=1.0 b=3.0 c=-5.6 x1=(-b+sqrt(b*b-4.0*a*c))/(2.0*a) x2=(-b-sqrt(b*b-4.0*a*c))/(2.0*a) write(*,100)x1,x2 100 format(1x,'x1=',f6.2,'x2=',f6.2) end
2013-7-24 6
3.2 简单的Fortran程序分析
例1:求一元二次方程x2+3x-5.6=0的根, 并打印结果。 • 利用公式:
x1, 2 b b 4ac 2a
2
• (这里,a=1,b=3,c=-5.6)
2013-7-24 7
3.2 简单的Fortran程序分析
编程如下:
2013-7-24 14
3.4 Fortran程序的编辑与运行
三、给项目工作间添加和编辑文件 打开指定的项目工作间→选 “Insert‖→ ―File into Project‖→输入要添加的文件名(如: st01.for)→“Add‖。然后按Fortran程序的书写 规则编辑程序。 四、编译项目工作间中的文件 打开指定的文件→选 “Build‖→ ―Compile st01.for‖。 五、连编项目文件 选 “Build‖→ ―Build aaa.exe‖。 六、运行项目文件 选 “Build‖→ ―Execute aaa.exe‖。(显示程 序执行结果)
3.7 Fortran内部函数
注意几点: ⑴函数自变量(参数)必须用括号括起来。 例:sinx+cosx → sin(x)+cos(x) ⑵函数自变量可以是常量、变量或表达式。 例: exp(3.0) sin (x+cos(x)) ⑶有些函数的类型是由自变量的类型确定的。 例:mod(8.0,3.0) →2.0 mod(8,3) →2 ⑷三角函数的角度单位是“弧度”而不是“度”。 ⑸函数名分为“通用名”和“专用名” 内部函数名一般用“通用名”。
3.5 常 量
说明: ⑴一个数值用指数形式表示时有两种表达方式: ①一个基本实数后面跟指数部分。 例: 0.876→8.76E-1 -2589.4→-2.5894E+3 ②一个整数后面跟指数部分。 例: 0.876→876E-3 -2589.4→-25894E-1
2013-7-24 20
3.5 常 量
2013-7-24 16
3.5 常 量
常量——在程序执行期间其值固定不变的量。 Fortran处理六种类型的常量: ⑴整型常量(Integer) ⑵实型常量(Real) ⑶双精度常量(Double precision) ⑷复型常量(Complex) ⑸逻辑型常量(Logical) ⑹字符型常量(Character)
2013பைடு நூலகம்7-24 25
3.6 变
量
3.6.3 变量的类型 Fortran能处理各种类型的变量。不同类型 的变量用来存放不同类型的数据。 变量类型的说明(三种方式) ⒈隐含说明 即以I、j、k、l、m、n开头的变量为整型 变量,以其它字母开头的变量为实型变量。 (“I~N规则”) 例:imax,m5,number,… 为整型变量 v,h2,aver,… 为实型变量
量
注意几点: ⑴变量名不区分大小写字母。 例:TOTAL,Total,total 代表同一变量 ⑵变量名中的空格不起作用。 例:abc,a bc,ab c,a b c 代表同一变量 ⑶变量名尽量做到“见名知义” AVER、SUM、Imax ⑷允许变量名与语言中具有特定含义的字(“保留字”) 同名。 例:sin,read,open,end,… 建议不要使用fortran中具有特定含义的字作变量名
2013-7-24 27
3.6 变
量
如: Integer abc,xyz real imax,k3 logical a1,kpz ⒊用implicit语句说明 即说明用某一字母开头的变量为指定的类型。 例: implicit integer(a,b),real(k) implicit integer(x-z)
2013-7-24 21
3.5 常
量
⑸下列形式为不合法的指数形式: ①单独的小数点和单独的指数部分。
例:.E5, E10 × ②指数部分只能是整数,不能带小数点。 例:8E0.5, 12.3E1.5
×
2013-7-24
22
3.6 变
量
变量——在程序执行期间其值可以改变的量。 3.6.1 变量的概念 Fortran为每一个变量分配一个相应的 存储单元;每个变量在每个时刻只能有一 个确定的值。 例:x=4.5 x 4.5 x=8.0 x 8.0
2013-7-24 26
3.6 变
量
⒉显式说明 即用类型说明语句指定变量的类型。 如: Integer——说明变量为整型变量 Real——说明变量为实型变量 Double precision——说明变量为双精度变量 Complex——说明变量为复型变量 Logical——说明变量为逻辑型变量 Character——说明变量为字符型变量
2013-7-24
13
3.4 Fortran程序的编辑与运行
一、Fortran PowerStation 4.0的启动 选“开始”→“程序”→“Fortran PowerStation 4.0‖→―Microsoft Developer Studio‖。 二、创建项目工作间 选“File‖→―New‖→―Project Workspace‖→―Console Application‖,并 输入项目工作间名称(如:aaa)和存放项 目工作间的位置或路径(如:c:\for\) → Create。
普通高校计算机基础教学系列课程
Fortran语言
(Fortran77结构化程序设计)
说明
• 第一章 算法(略) • 第二章 计算机和计算机程序(略)
2013-7-24
2
第三章 Fortran语言程序设计初步
2013-7-24
3
3.1 Fortran语言的发展概况
FORmula TRANslator 公式翻译器
2013-7-24 30
3.7 Fortran内部函数
如: sin(90*3.14159/180) →1.0 sqrt(9.0) →3.0 abs(-5.6) →5.6 int(6.75) →6 exp(3.0) →20.085540 Fortran77全部内部函数见附录Ⅵ
2013-7-24 31
2013-7-24 18
3.5 常 量
3.5.2 实型常量 (有二种表示形式) ⒈小数形式 例:15.8,-21.05,14.0 ,14.,.17, 0.0 ,… ⒉指数形式(通常表示较大或较小的数) 例:100000000→1.0E+8 0.0000125→1.25E-05 数字部分 指数部分
2013-7-24 19
2013-7-24 17
3.5 常 量
3.5.1 整型常量 包括正、负整数和零。 例:5,-13,0,… 说明: ①在(16位)微机中,整数的取值范围为: -215~215-1(-32768~32767) ②在(32位)微机中,整数的取值范围为: -231~231-1(-2147483648~2147483647 )
Fortran语言是一种适合于科学 和工程计算问题的程序设计语言; 也是计算机高级语言发展史上使用 最早的一种程序设计语言。
2013-7-24
4
3.1 Fortran语言的发展概况
Fortran语言的发展过程:
• 1951年由约翰· 贝克斯等人开始研究Fortran语言; • 1957年第一个Fortran程序在IBM704机上运行; • 1958和1962年先后推出FortranⅡ和FortranⅣ; • 1966和1978年先后颁布Fortran66和Fortran77; • 1991年颁布了Fortran90。 • 现在已经有了Fortran 95, Fortran 2003