Download presentation
Presentation is loading. Please wait.
Published byΧαρά Τομαραίοι Modified 5年之前
1
Fortran 实用编程 系列视频教程 Fortran Coder 研讨团队
2
关于 Fortran Coder Fortran Coder 始于2006年,是一个以科学计算编程为主题的非盈利性研讨团体。大多数由各行业高等学府学生,研究人员及生产一线的工作人员组成。 研讨内容涉及:Fortran77/90/95/2003/2008语法规范,各平台32位及64位编译器,IMSL,MKL,Lapack 等数学函数库,MPI,OpenMP,Coarray 并行及高性能计算,winteracter / DisLin / Matfor / GTKFortran 等绘图及界面库。
3
关于本套视频 本套视频以解决实际问题为主要目的,旨在为您解答课本上较少涉及到的实际问题。通过本套视频,您会更容易了解:
如何查找错误?如何解决错误? 如何学习 Fortran2003 和 Fortran2008 语法? 如何用最通俗易懂的写法解决实际问题? 如何看懂别人的优秀代码并为自己所用?如何让自己的代码更优美、更普适? 本套视频由 Fortran Coder 研讨团队录制,供所有 Fortran 程序员和学习者免费自由的观看,您可随意的传播它。但请保证视频完整性。 我们将会不定期的更新本套视频,请持续关注我们的网站、QQ群! 同时,如果您对 Fortran 相关有自己的见解,并愿意通过录制视频的方式与其他人分享,请联系我们!
4
上节要点回顾 数据类型是1和0的组合与人类熟知的数据相互对应的“法则” Fortran的数据类型包括:整形、实形和复数形、字符型、逻辑形、派生形 每种数据都有不同的Kind值,相当于一级类型。不同编译器对Kind的支持不同。用Selected相关函数可以增加代码的可移植性。
5
上节要点回顾 浮点数时对实数的近似模拟,就像天平用秤砣的组合来代表重量。 误差并不可怕,可怕的是误差放大和积累。
6
流程控制 第6讲 讲解人:沙瓤西瓜 melon@fcode.cn http://www.fcode.cn 讨论QQ群:2338021
基础篇 第6讲 流程控制 讲解人:沙瓤西瓜 讨论QQ群:
7
目 录 1 条件判断 2 循环 3 FORTRAN 77的替代
8
目 录 1 条件判断 2 循环 3 FORTRAN 77的替代
9
条件判断:IF 最常见的结构: 以及
10
条件判断:IF 例如:
11
条件判断:IF 稍微复杂一点……
12
条件判断:IF 例如:
13
条件判断:IF 提醒:IF结构中的逻辑表达式的结果必须是一个单值,不能是数组。 数组比较ANY, ALL等函数转换
14
条件判断:IF 署名的IF:
15
条件判断:SELECT CASE 基本结构: 等同于:
16
条件判断:SELECT CASE 所以,刚才的程序又可以写成……
17
条件判断:新功能 自Fortran 2003起,新增SELECT TYPE结构。
18
目 录 1 条件判断 2 循环 3 FORTRAN 77的替代
19
循环:DO 最常见的结构:
20
循环:DO 例如:
21
循环:DO 增值:
22
循环:DO WHILE 格式:
23
循环:DO WHILE 例子:
24
循环:Implied DO 隐式循环:
25
循环:DO 无穷循环的DO: 署名的DO循环:
26
循环:控制 循环控制:CYCLE,EXIT CYCLE:忽略本轮循环剩余内容,直接进入下一轮循环。 EXIT: (用于循环时)忽略循环剩余内容,跳出(指定)循环。
27
循环:控制 用CYCLE和EXIT循环和退出特定的署名的循环
28
循环:控制 例子:
29
循环:控制 例子:
30
循环:注意 注意: 循环变量必须使用整型变量。(用REAL转换) 循环进行中循环变量的值不允许人为改变。
31
循环:注意 注意: 循环变量的上下限使用表达式指定时,循环的上下限在进入循环时计算,并且在循环期间不再改变。
32
Fortran标准没有规定循环正常结束后循环变量的值。但是在使用EXIT退出循环时,循环变量是退出前的值。
循环:注意 注意: Fortran标准没有规定循环正常结束后循环变量的值。但是在使用EXIT退出循环时,循环变量是退出前的值。 i值无定义。 不同编译器给出结果可以不同。 i值有定义。 i=99
33
目 录 1 条件判断 2 循环 3 FORTRAN 77的替代
34
FORTRAN 77的替代 GOTO的使用
35
FORTRAN 77的替代 Computed GOTO
36
FORTRAN 77的替代 使用CONTINUE和/或行号结尾的DO循环
37
FORTRAN 77的替代 Arithmetic IF
38
感谢收看! Fortran Coder Group http://www.fcode.cn 下一讲:数组和结构体 敬请关注 & 期待
还有疑问?请联系我们 Fortran Coder Group
Similar presentations