第2章Fortran程序设计基础.ppt

合集下载

Fortran基础

Fortran基础

简单的Fortran程序 程序 简单的
program ex0413 character (len=20) string string = "Good morning." write(*,*) string string(6) = “evening.” ! 重新设置从第 个字符之后的字符串 重新设置从第6个字符之后的字符串 write(*,*) string end 执行结果为: 执行结果为: Good morning Good evening
简单的Fortran程序 程序 简单的
二、声明语句
1、变量 、 变量 — 程序运行期间其值可以改变的量 例如: 例如:x=1.0 x=2.0 2、变量名 、 规则:以英文字母开头,英文字母和数字0-9以及 规则:以英文字母开头,英文字母和数字 以及 下划线的组合。 下划线的组合。 变量的名字最好是取成一个有意义的英文单词, 变量的名字最好是取成一个有意义的英文单词,这样 可以减少程序编写时出错的机会。 可以减少程序编写时出错的机会。
简单的Fortran程序 程序 简单的
② 改变隐含约定 可以经过IMPLICE描述来决定哪些字母开头的变量会自动 描述来决定哪些字母开头的变量会自动 可以经过 使用某种类型。 使用某种类型。 implicit integer(A,B,C) !A、B、C开头的变量都视为整型数。 开头的变量都视为整型数。 、 、 开头的变量都视为整型数 implicit integer(A-F,I,K)!A到F及I、K开头的变量都视为整型 ! 到 及 、 开头的变量都视为整型 数。 implicit real(M-P) !M到P开头的变量都视为浮点数 到 开头的变量都视为浮点数 implicit none !关闭默认类型功能,所有变量都要事先声明。 关闭默认类型功能,所有变量都要事先声明。

第二章 关于FORTRAN的初步知识

第二章 关于FORTRAN的初步知识

前一页
休息
6
FORTRAN语言的常量
2:实型常量
有两种表示方法: (1)小数点法表示: 如: 12.5 0.12 12. .55等 (小数点表示) (2)科学计数法(指数)表示: 实数或整数E或e整数
如: 1.8635E2 5.d-1 等 (指数表示)
前一页 休息 7
FORTRAN语言的常量
3:双精度型常量
前一页
休息
14
FORTRAN语言的变量
2:隐含说明语句
implicit double precision (字母1,字母2)或(单个字 符),...... implicit complex (字母1,字母2)或(单个字符),...... implicit logical (字母1,字母2)或(单个字符),...... implicit character (字母1,字母2)或(单个字符),...... 其意义见前页。
5:逻辑型常量
逻辑型常量的表示: .true. 表示真值 .false. 表示假值
6: 文字型常量
文字型常量的表示: ‘若干个字符’ 例如:'abcdef' '123456xyz'
前一页 休息 10
FORTRAN语言的变量
标识符的命名规则:
以字母(不分大小写)开头,后跟若干个字母或数字。 变量类型: 1:隐含说明(约定) 凡不加说明的标识符,以字母I~N( 或i~n)开头的为整型变量,以其它字母开头的变量为实 型变量。 2:显示说明语句 3:隐含说明语句
前一页 休息 12
FORTRAN语言的变量
1:显示说明语句
complex 若干个标识符彼此间用逗号分隔
定义的每一个标识符为复型变量。

第二章_Fortran程序设计基础

第二章_Fortran程序设计基础

例如:要在不同的平台下表示±1010内的整数 I, 可以采取如下的声明方式:
INTEGER,PARAMETER :: K10 = SELECTED_INT_KIND(10) INTEGER(K10)I
先声明依赖于特定平台的种类常数, 再以该常数为种类参数声明变量。
::表示在变量声明数据类型的同时,给变量赋初值
Fortran 90 允许出现多达39个续行。 允许出现多达39个续行。
三.空白的作用
^ 空白没有意义,不参加编译。适当地运用空白空间,可 以增加程序的可读性,例如程序块中的代码缩进。 以增加程序的可读性,例如程序块中的代码缩进。 DO 1 I=1,10 DO 2 J=1,20 …… 2 CONTINUE 1 CONTINUE
有下列几点值得注意: (1)只能以字母开头(3M,_Right 为无效标识符); (1)只能以字母开头(3M, 为无效标识符) (2)不能含有空格字符(Time Rate为无效标识符); (2)不能含有空格字符(Time Rate为无效标识符) (3)不区分字母大、小写(Vel,VEL,vel 为同一标识符); (3)不区分字母大、小写(Vel,VEL, 为同一标识符) (4)长度限定为31 个字符(Fortran 77 为6个字符); (4)长度限定为31 个字符(Fortran 个字符) (5)避免与关键字、标准例程重名。 (5)避免与关键字、标准例程重名。
平台(处理器和编译器)不同,相同的种类参数可能 有不同的取值范围。 缺点:影响程序代码的可移植性。 Fortran 90 提供SELECTED_INT_KIND 函数,即:
result = SELECTED_INT_KIND(r)
result 代表整数 n 在范围-10r<n<10r内的种类参数

Fortran95学习用强大ppt

Fortran95学习用强大ppt
选“File”→“New”→“Project Workspace”→“Console Application”,并 输入项目工作间名称(如:aaa)和存放项 目工作间的位置或路径(如:c:\for\) → Create。
2024/8/9
31
1.6 Fortran程序的编辑与运行
三、给项目工作间添加和编辑文件
七、打开项目文件
选“File”→“Open”→在打开对话框文 件类型下拉列表中选“Project Workspace(*.mdp)”→然后选项目工作间文 件夹中的项目文件。
2024/8/9
33
1.7 简单程序设计
例1:求一元二次方程x2+3x-5.6=0的 根,并打印结果。
• 利用公式:
x1,2 b
基本思想
将一个需要求解的问题分解为一 系列实体(对象),然后围绕这些对 象建立数据和函数;函数的功能决定 了该对象的行为。规定一个对象的函 数可以访问另一对象的函数,但一个 对象的数据不能应用于另一对象的函 数中。
几个基本概念: 类,对象,属性,事件,方法
三类机制: 封装、继承、多态
2024/8/9
选 “Build”→ “Build aaa.exe”。 六、运行项目文件
执行选结“果B)uild”→ “Execute aaa.exe”。(显示程序
2024/8/9
32
1.6 Fortran程序的编辑与运行
注:若Fortran程序是由一个主程序文件和若 干个子程序文件组成,则应将各文件添加 到同一项目工作间,分别进行编译,然后 连编和运行项目文件。
2024/8/9
10
1.2 算法及其表示方法
例3 求两个正整数m,n的最大公约数。 1)比较m与n的大小,如果m<n,则交换m

FORTRAN语言第2章(共8章)PPT课件

FORTRAN语言第2章(共8章)PPT课件

Fortran对于关键字不予保留,即允许其关键 字作为其他实体的名称。但是,不主张这样做,因 为使用关键字作为实体名称会到导致程序难以理解 和阅读。
例如:用户可以将自己的变量名、数组名等命 名为read、print、end、integer、program、 print、do等关键字,编译程序会根据上下文来识 别一个字符串究竟是关键字还是实体名称。
型。 Fortran常量包括整型、实型、复型、字符型和逻辑型
五种内部类型常量和一种特殊的常量——符号常量,下面
分别介绍它们的表示方法及其注意事项。
第一节 FORTRAN常量
三、FORTRAN常量 1、整型常量
整型常量由0~9的一系列数字组成,包括正数、负数 和0。如125,-258,+28等。注意:
n代表整数部分,
m代表小数部分,不允许出现非数值 字符(如逗号、顿号和空格等)。
第一节 FORTRAN常量
三、FORTRAN常量 2、实型常量
指数形式:用来表示一个绝对值非常大或非常小的数。 指数形式的实数三部分组成:有效数字、E(或e)和指数。
例如: +0.125E+2、-132.48e-1、243E-3、 .12e+2,1.2e+1
Fortran 95规定:标识符只能由字母、数字、 下划线和美元符号“$”组成,且起始字符必须是 英语字母。
Fortran的关键字
关键字是Fortran95中的一种特定字符串。 如 read*,a,b
read是关键字。 类似的关键字有:print、write、program、 integer、do、if、then、end、subroutine、 function等。 在编译环境中正确的关键字会以蓝色字符显示。 关键字都有特定的含义,在程序中有具体的位置要求, 不能随意改变,否则将产生一个语法错误。

_fortran-第二章fortran基础知识全解

_fortran-第二章fortran基础知识全解
•Fortran 变量( variable) 是一个数据对象,它 的值在程序执行期间可以改变。
•程序单元中的每个Fortran 变量有唯一的名字, 变量名是内存中特定位置的标号,该标号方便 人类记忆和使用。Fortran 95 中的变量名可以 长达31 个字符,由字母、数字和下划线字符的 任意组合构成,但是名字的第一个字符必须是 字母。 •编程时,给变 量取有意义的名 字
Fortran95/2003程序设计
第二章 Fortran 基础知识
本章学习目标: • 了解Fortran 中的合法字符 • 了解Fortran 语句和Fortran 程序基本结构 • 了解可执行和不可执行语句之间的区别 • 了解常量与变量的区别 • 理解INTEGER、REAL 和CHARACTER 数据类 型的区别 • 掌握默认和显式类型说明的不同,理解为什么 总该使用显式类型说明 • 了解Fortran 赋值语句的结构
type , PARAMETER name=value [, name2= value2 , ...]
type 是常数的类型(整型、实型、逻辑型或字符型)
CHARACTER, PARAMETER :: ERROR MESSAGE= 'Unknown error!'
2.6 赋值语句和算术运算
variable name = expression i=i+1
•Fortran 有5 个自带或"内置"的常数和变量数 据类型,其中三个对数字有效(INTEGRE, REAL 和COMPLEX) ,一个是逻辑的(LOGICAL) ,还 有一个是字符串组成的(CHARACTER) •除内置数据类型以外, Fortran 允许程序员定 义派生数据类型(derived data type)

2-Visual Fortran 简介

2-Visual Fortran 简介

a,创建project时将自动创建同名的 ,创建 时将自动创建同名的 时将自动创建同名的workspace b,生成project name的文件夹(目录) ,生成 的文件夹( 的文件夹 目录) 打开后:自动形成 目录, 文件 打开后:自动形成Debug目录,形成 目录 形成*.dsw文件 4,File-New-File标签: , 标签: 标签 选择: 选择:Fortran free Format…(自由格式).F90 (自由格式) 或Fortran Fixed Format…(固定格式 ).For ( 输入:文件名(扩展名不输入) 其它默认, 输入:文件名(扩展名不输入) 其它默认, 选中add to project复选项 选中 复选项 会自动形成*.f90或*.for的文件. 或 的文件. 会自动形成 的文件
Studio用户界面 二,Developer Studio用户界面
1,界面组成:菜单,工具栏——上端 ,界面组成:菜单,工具栏 上端 左边: 左边:项目工作区窗口 右边:可用于编辑文件和阅读文档的主工作区 右边: 下端: 下端:输出窗口和状态栏
三,开发自己的简单应用程序
1,运行Visual Fortran 6.0 ,运行 2,文件——新建 ,文件 新建——Workspaces标签: 标签: 新建 标签 输入: 输入:Workspace name; ; Location默认值: Location默认值:c:\program File\devstudio 默认值 此步可省略,直接进入第 步 最好改为d:\) 此步可省略 直接进入第3步(最好改为 ) 直接进入第 3,File-New-Projects标签 , 标签 选择: 选择:Fortran Standard graphics or QuickWin Application 或者其他的 输入: 输入:name 其它采用默认值

第二章 Fortran程序设计基础

第二章  Fortran程序设计基础

第二章 Fortran程序设计基础2.1.1字符集“字符集”是指编写Fortran程序时,所能使用的所有字符及符号。

Fortran所能使用Fortran标准中规定,编译器只需要认得大写的英文字母,而如果程序代码中使用小写英文字母,则会把它们视为大写字母。

简单说,Fortran是不区分大小写的语言。

特殊符号除了用来做数学计算符号外,还有其他用法,后面用到时会介绍它们。

2.1.2书面格式Fortran程序代码的编写格式有两种,Free Format(自由格式)及 Fixed format(固定格式)。

Fixed format(固定格式)属于旧式写法,它在编写版面上有很多限制。

Free Format (自由格式)是Fortran90之后的新写法,取消了很多旧的限制。

这里,我们要求用Free Format格式来编写程序。

以*.F90为扩展名的文件,就是用Free Format来编写的程序。

Free Fortran格式基本上允许非常自由的格式,它没有规定每一行的第几个字符有什么作用。

需要注意以下几点:(1)叹号“!”后面的文本都是注释,Fortran90编译程序对源程序进行编译时,对注释区内的内容不予处理。

(2)每行可以编写132个字符。

(3)行号放在每行程序的最前面。

(4)要求以一个“&”作为一个续行标志;一行中可以写多条语句,用“;”隔开。

下面是一个用Free Format格式的编写实例:1.! Free Format2. program main3. write(*.*) “hellow” !这也是注释4. write(*.*) &5. “hellow”6. end这里,读者可发现第一、三行中都有注释,第一行整行都是注释,第三行只有叹号后面的部分是注释。

第四行的最后是连接符号&,所以第五行会连接在它后面。

2.1.3 Fortran的数据类型1.整数(INTEGER)整数的类型又分为两种,长整型与短整型。

FORTRAN语言程序设计入门到精通

FORTRAN语言程序设计入门到精通

5.6.2 常量
整型、实型、复型常量是一个代数值;逻辑型常量是一个逻辑值 (.true.或.false.);字符型常量是一个字符串。以上常量均以书写方式确 定其类型。
5.6.2.1 整型常量
整型常量表示普通代数中的整数。
十进制整型常量的一般形式:±n[ _Kind值]
其中: ±是该整型常量的符号。
5.6.2.5 逻辑型常量 在程序中用以表示某个条件(关系表达式和逻辑表达式)的判别结果。 一般形式:.TRUE. 即为逻辑真(表示判别条件成立)。 .FALSE. 即为逻辑假(表示判别条件不成立)。 例:条件5 > 3的判别结果是.TRUE. ,表示判别条件5 > 3成立。 条件3 < 1的判别结果是.FALSE.,表示判别条件3 < 1不成立。
实型常量表示普通代数中的小数或指数。
1.小数实型常量
一般形式:±n .m
或±n.
或±.m
其中:n、m是十进制数字序列。 n是整数值,m是小数值。
例: 12.0 、0.12 、12. 、.12
2.指数实型常量
一般形式:±n .mE±s 或±n E±s
其中:n、m是十进制数字序列。 n是整数值,m是小数值。
1.2.2 程序设计步骤 1.分析问题 2.建立数学模型 3.选择算法 4.编写程序 5.调试运行 6.分析结果 7.写出程序的文档
第二章 算 法
2.1 算法概述
1.算法:计算机解题的方法和步骤. 2.算法特征: (1)有穷性
一个算法必须总是在执行有限步骤之后结束。 (2)确定性
算法中的每一个步骤应当是确定的,无二义性;相同的输入只能得出相 同的输出。 (3)可行性 算法中的每步骤都是有效地执行。 (4)有零个或多个输入 (5)有一个或多个输出 3.算法的分类: (1)数字运算:用于求数值解,此类算法有现成的模型,运用较成熟. (2)非数字运算:用于非数据处理的一些事务性工作,此类算法面广量大, 要求各异,有一定难度.
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第6章 子程序
• 子程序是构造大型程序的有效工具,一个实用程序(不 管是系统程序还是应用程序),一般都含有多个子程序。
• FORTRAN 90 中的子程序按子程序完成的功能划分有子 例行程序、函数子程序、数据块子程序等,按是否定义 在某个特定的程序单元内部来划分有程序单元子程序、 模块子程序以及内部(INTERNAL)子程序等,这些通称为 子程序。
FUNCTION SM(M,N,L) SM=0 DO I=M,N
IF (L>0) THEN SM=SM+I**L
ELSE
PROGRAM EXAM2
!开始主程序单元定义
WRITE(*,*)'S1=',SM(1,100,2) !调用函数子程序SM完成S1的计算
WRITE(*,*)'S2=',SM(100,140,3)
PROGRAM EXAM1B
INTEGER X
6.2 函数子程序
语句函数由于要求在一个语句中完成函数的定义,因而它只能解决一些较 简单的问题,当函数关系比较复杂,用一个语句无法定义时,语句函数就 无能为力了,这时需要用到函数子程序。
6.2.1 函数子程序的定义
函数子程序是以保留字 FUNCTION 开头,并以保留字 END结束的 一个程序段,该程序段可以独立存储为一个文件,也可以和调用 它的程序单元合并存储为一个程序文件。函数子程序的定义格式 是:
INTEGER F(X,Y)=X**2+Y**2 ! 定义了一个整型函数F
NF(X,Y)=X**2+Y**2 F
! 也同样定义了一个整型函数
2.语句函数的虚参
在语句函数定义语句中的函数参数称为虚参,他们本身是没有值的,只有在 函数调用时才用实际参数(称为实参)代替。实参或是常数、或是一个有确定 值的变量、或是一个可以计算值的表达式。虚参在形式上与普通变量相同, 一个语句函数中的虚参不能同名。不同语句函数中的虚参可以同名,虚参也 可以和程序中的变量同名。
1.语句函数名
在语句函数定义格式中,f称为函数名,函数名的组成规则 与变量名相同。如果没有在语句函数定义语句前用类型语句
说明该函数名的数据类型,则该语句函数的函数值的类型按 其函数名遵守I—N隐含规则。如f函数隐含为实型函数,而nf 则隐含为整形函数。
F(X,Y)=X**2+Y**2
! 定义了一个实型函数F
FX=5*X**3-2*X**2&#*,*)'f(',X,')=',FX
6.1.1 语句函数的定义
如前所述,由于FORTRAN 90 的编译器不“认识” 一般的函数f(x),不知道怎样计算f(x)的函数值, 因而,在使用(称为函数调用)函数时,必须向 FORTRAN 90编译器说明该函数的计算方法,这种 说明过程称为函数定义。 语句函数定义的一般格式是:
• 子程序不能独立运行,它们和一种称为主程序(就是本 章前读者已经熟知的程序结构)的程序单元一起组成一 个实用程序。一个程序可以不含子程序,但不能缺少主 程序。
• 本章讨论各种子程序的结构、功能以及子程序与主程序 或子程序之间的数据交互作用。语句函数不具备子程序
语句函数
SIN(X)、SQRT(X)等由FORTRAN编译器提供的函数为内在函数。 这些内在函数是在程序设计过程中使用频率很高,并且一般 实现比较复杂的函数。用户在使用内在函数时,并不需要对 函数的实现过程进行描述,只需按照FORTRAN 90手册要求使 用即可,FORTRAN 90编译器“认识”这些内在函数并能正确 完成函数所规定的功能。
当没有语句对虚参的数据类型进行说明时,虚参的类型遵守I—N隐含规则; 当使用了类型说明语句对虚参类型进行说明后,这种说明对于虚参以及与虚 参同名的变量同时有效。
INTEGER Z
F(X)=3*X**2+5
G(Y)=3*Y**2+5
H(Z)=3*Z**2+5
3.语句函数表达式
语句函数表达式说明函数与参数的对应关系,在函数表达式中,可以包含常 量、变量、函数虚参(虚参必须包含在表达式中)、FORTRAN 90内在函数、数组 以及前面已经说明了的语句函数。
4.关于语句函数的进一步说明
(1)只有当函数关系简单,可以用一个语句描述函数与参数的对应关系 时,才能使用语句函数。
(2)语句函数是非执行语句,语句函数的定义语句要放在一个程序单位 的所有其他说明语句之后,并放在所有可执行语句之前。
(3)语句函数只有在本程序单元中才有意义。也就是说,不能使用其他 程序单元中的语句函数。
6.1.2 语句函数的调用
语句函数一经定义,就可以在同一个程序单元中调用它,调用的形式和内在 函数完全相同。
函数调用要注意以下两个问题:
1.调用时可以使用常量、变量、内在函数以及它们的表达式作为实参代替 对应的虚参位置,但要保证实参与虚参具有完全相同的类型,并且实参是可 以计算值的 (即调用前实参中包含的变量全部已经赋值。) 2. 实参和虚参个数相同。 例 6.2 用函数语句的方法设计例6.1
[类型说明] FUNCTION 函数名(虚参表)
例 6.3 编程,求:
100
140
50
s1
i2
s2
i3 s3
1 i
i1
i100
i20
分析:上述三个数列的通项不同,求和范围也不同,用一个程序 段难以同时计算三个数列的和,并且,因为无法用一个语句函数 完成数列的求和计算,所以也无法使用语句函数来简化程序设计。
在实际设计过程中,用户还会遇到大量的并未包含在内在 函数中的其他函数,计算这些函数时,就不能象内在函数那 样仅仅使用函数名来使用这些函数,而必须在适当的地方以 FORTRAN 90能“理解”的形式向FORTRAN 90 编译器说明这些
例 6.1 设多项式函数 f(x)5x32x27x6
设计一个程序,计算f(1)、f(10)、f(12)、f(-5)的值。
程序如PROGRAM EXAM1A :
PROGRAM EXAM1A
X=12
X=1
FX=5*X**3-2*X**2+7*X+6
FX=5*X**3-2*X**2+7*X+6
WRITE(*,*)'f(',X,')=',FX
WRITE(*,*)'f(',X,')=',FX
X=-1
X=10
FX=5*X**3-2*X**2+7*X+6
相关文档
最新文档