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