您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 薪酬管理 > FORTRAN95第01章-概述
1FORTRAN95程序设计与数据结构基础计算机学院基础教学部2007年1月2课程的主要内容FORTRAN95程序设计语言的基础知识FORTRAN95程序的基本结构和设计方法实用软件开发技术和方法数据结构的基础知识3课程安排学时安排:讲课44学时上机实践20学时考核方法:期末一次性考试,笔试+上机,笔试占80%,上机占20%,平时作业少于2/3无考试资格.4第1章FORTRAN95简单程序设计本章主要内容:Fortran语言的基本概念Fortran95语言的用途、程序的书写格式Fortran95基本数据类型的表示方法Fortran95表达式的书写方法Fortran95赋值语句的用法Fortran95简单的输入与输出语句的用法初步学会简单Fortran95程序的编写51.1程序设计概述1.1.1程序设计语言程序设计就是编写程序计算机通过执行程序完成指定任务的编写程序有几种方法:用机器语言编写程序用汇编语言编写程序用高级语言编写程序6用高级语言编写程序:高级语言是接近自然语言和数学语言的编程语言,通常说的“程序设计语言”所指的就是这类语言。7用户采用高级语言编程,上机的过程如图1-1所示.有错有错有错编写源程序编辑输入编译产生目标程序装配连接形成可执行程序执行程序(如需要可输入数据)输出结果图1-1采用高级语言编程上机过程8用高级语言编写的程序通常称为源程序。计算机不能直接识别和执行源程序,必须把它们先翻译成机器指令程序,称“目标程序”,然后再由计算机执行目标程序。这个“翻译”工作是由一个称为“编译程序”的软件完成的,不同的高级语言有不同的编译程序。用高级语言编程解决实际问题,前提是:在计算机中安装该高级语言的编译程序。9其中“装配连接”是由“连接程序”完成的,其任务是将若干个目标程序(包括库函数)连接在一起,并执行重定位操作及自动的库文件检索,然后形成可执行的程序。连接好的程序保存在外存,随时可装入主存中运行。101.1.2程序设计过程一、程序设计步骤1.确定所要解决的问题及应达到的要求2.分析问题构造模型根据实际问题确定物理模型,再用数学语言描述它,即列出解题的数学公式或方程式,也就是建立数学模型。3.选择计算方法4.确定算法并绘制流程图5.编写程序6.程序调试7.正式运行11二、算法所谓算法指为在有限步内解决一个具体问题而规定的意义明确的步骤。是为计算机设计的执行步骤。12一个算法应具有以下基本特征:(1)有穷性一个算法必须在执行有限步之后结束。(2)确定性算法的每一步骤,其顺序和内容都必须有确切的定义,不能有模棱两可的解释和二义性。(3)有效性也称为可行性,指算法的每一步都能使算法的执行者(人或机器)明确其含义并能去实现所规定的操作。(4)有零个或多个输入输入是指执行算法时需要从外界取得必要的初始数据。有的算法表面上无输入(即零个输入),但实际上算法执行所需的初值已被嵌入在算法中了。(5)有一个或多个输出每个算法应至少有一个输出步骤,告知解决问题的结果。评价一个算法通常还考虑以下标准:执行算法所需时间的长短、执行算法所需存储空间,即所需计算机存容量的大小。除此之外,算法的正确性、最佳性和精确性等也是评价算法的标准。13三、流程图上述算法可以用文字表达,也可以用流程图来表示。有时用流程图表示算法更有利于编写程序,可以减少编程过程中的错误。圆角矩形:开始和结束矩形:处理菱形:判别的条件平行四边形:输入或输出带箭头的线:执行的先后次序141.2FORTRAN语言简介1.2.1FORTRAN语言简史FORTRAN语言是一种在国际上广泛流行的适用于科技计算的高级程序设计语言。FORTRAN的名字来自英文的FormulaTranslator,即数学公式翻译器的意思。FORTRAN语言最初是在1954年由美国IBM公司提出的。1966年制定了FORTRAN语言的统一标准,这套标准后来被称为FORTRAN66151977年又制定了新的FORTRAN语言标准,并在1978年由美国国家标准协会(ANSI)正式公布,称为FORTRAN771992年正式由国际标准化组织ISO公布了新的标准,称为FORTRAN901997年国际标准化组织ISO再次公布了FORTRAN语言的新标准,这就是FORTRAN95。主要加强了FORTRAN在高性能并行运算方面的支持。此外,FORTRAN2003的标准正在制定中,不久的将来会正式发布。新标准将增强对面向对象程序设计的支持。161.2.2FORTRAN字符集“字符集”是指编写程序时所能使用的全部字符和符号。FORTRAN语言的字符集包括的字符及符号有:26个英文字母:A~Z及a~z(在FORTRAN程序中英文字母不分大小写)数字:0~922个特殊符号::=+-*/(),。’!“%&;?¥_└┘其中的特殊符号除了做为数学运算符号外,还有其他用法171.2.3FORTRAN程序的组成一、FORTRAN程序结构是一种段式结构(或称块结构)。每个FORTRAN程序由一个主程序段和若干个子程序段及模块组成。主程序段有且仅有一个,子程序段和模块根据需要可用零个或多个。每个程序段可以独立编写,实现不同的功能,程序运行总是从主程序段开始。每个程序段都有自己的段头语句,但主程序段的段头语句可以省略。18二、FORTRAN语句每个程序段和模块由若干条FORTRAN语句组成,这些语句又分为可执行语句和非执行语句。可执行语句在程序执行时使计算机产生某种特定的操作,如赋值、输入输出、控制转移等。非执行语句只是用于将某些信息(如变量的类型、数组的维数及大小、数据的输入输出格式等)通知编译程序,使编译程序在编译源程序时按这些信息要求进行处理。程序执行时非执行语句不会使计算机产生任何操作。19FORTRAN语句在使用时有基本的顺序要求,不能随意放置,表1-1给出了这些语句在程序中的顺序要求20注释行PROGRAM、FUNCTION、SUBROUTINE、BLOCKDATA、MODULEUSEFORMATIMPLICITNONEPARAMETERIMPLICIT及其他说明语句DATA可执行语句CONTAINS内部过程或模块过程END21其中:(1)PROGRAM、FUNCTION、SUBROUTINE、MODULE、BLOCKDATA均为程序段的段头语句,只能出现在每个程序段开始的位置上;(2)END语句是程序段的结束语句,只能出现在各程序段的最后(3)USE语句只能出现在段头语之后,其他语句之前;(4)FORMAT语句可以出现在USE语句和结束语句之间的任何位置上;(5)IMPLICITNONE语句在USE语句之后,在其他说明语句之前出现;(6)PARAMETER语句可出现在DATA语句和可执行语句之前,IMPLICITNONE语句之后的任何位置上;(7)其他说明语句应出现在DATA语句和可执行语句之前;(8)DATA语句可在说明语句之后,END语句之前的任何位置上(9)注释行不是FORTRAN语句,仅为程序设计者提供了一种注释说明的手段,可以写在程序的任何位置上。221.2.4FORTRAN程序书写格式一、固定格式固定格式是一种FORTRAN程序的旧式写法,采用这种写法的程序代码文件扩展名为“.FOR”或“.F”。在“固定格式”中,每一行至多写一个语句,且最多可写72个有效字符:第1个字符,如果是字母C或*号,说明此行为注释行,仅起说明作用,不会被编译;第1~5个字符,如果是数字,则表示是该行的代号,称为语句标号,如不需要则只能是空格或全0;第6个字符,如果是数字“0”或空格以外的任何学符,表示该行是上一行的继续行;第7~72个字符,是FORTRAN语句的书写区域;第73个字符及之后的字符将被忽略,有的编译程序会给出错误提示。23二、自由格式(目前最流行的书写格式)自由格式是FORTRAN90之后的新写法,取消了许多限制,没有规定每行的第几个字符有什么作用:每行最多可写132个字符;叹号“!”后的内容都是注释;如果需要写语句标号,则标号可以紧挨着写在语句第1个字符前面;一行字符的最后如果是符号“&”,则表示下一行是该行的继续。如果一行程序代码开头是符号&,则其上一行的最后非空格符必须是一个&号,且&号前不能有空格,表示该行是上一行的继续。这种形式的续行允许把一个常数、变量名、关键字等分开放在两行上。在一行中可写上多个语句,但每两个语句之间必须用分号“;”隔开。用自由格式书写的FORTRAN程序文件,其扩展名为“.F90”。以下是用自由格式书写的FORTRAN程序实例。24!FreeFormatprogrammain!已知a,b,c,求一元二次方程的根a=1.0;b=3.0;c=-5.6!一行书写多个语句x1=(-b+sqrt(b*b-4.0*a*c))/&!下一行是续行(2.0*a)x2=(-b-sq&!下一行是续行&rt(b*b-4.0*a*c))/2.0/awrite(*,10)x1,x210format(1x,2f6.2)stopend251.3FORTRAN基本数据类型在程序设计语言中数据有类型之分,不同类型的数据取值范围不同,处理方式不同,存储形式和书写形式也不同。FORTRAN语言中有五种基本数据类型。26一、整型(INTEGER)整型表示整数的类型,分长整型和短整型。在PC机中长整型占4个字节(32bit),可保存的数值范围在-2147483648~2147483647之间(-231~231-1);短整型占2个字节,保存的数值范围在-32768~32767之间,即(-215~215-1)。27几个短整型数值(补码):01111111111111113276700000000000000011000000000000000001111111111111111-11000000000000001-327671000000000000000-3276828二、实型(REAL)实型数也称浮点数,分单精度和双精度。单精度实型数在PC机中占4个字节,有效位数为6~7位,可表示的最大正数为3.4×1038,最小正数为1.18×10-38;双精度实型数占8个字节,有效位数为15~16位,可表示的最大正数为1.79×10308,最小数为2.23×10-308阶符解码数符尾数29三、复型(COMPLEX)复型用以说明a+bi形式的数值。复数中a、b的值为两个实型数,因此复型也分单精度和双精度复型30四、字符型(CHARACTER)字符也是一种数据,这种数据称为字符型数据,它是一个字符串,其中的一个字符占一个字节的存储空间,存储其ascii值。31五、逻辑型(LOGICAL)逻辑型数据表示逻辑判断的结果,分别为“真”(TRUE)和“假”(FALSE)。通常以1或非0代表TRUE,0代表FALSE。321.4FORTRAN表达式1.4.1常量与变量一、常量常量的指程度运行过程中其值固定不变的量。通常也将常量称为常数。不同类型的常数有不同的表示方法。331.整型常数在整型常数中,除了正、负号外,不能包含其他任何非数字符号。例如,128+256-1280-0+32767都是正确的整型常数,而–123,567100.0-4.00.都是不正确的整型常数。342.实型常数实型常数有多种不同的表示形式。(1)基本实常数形式基本实常数形式与日常习惯写法相同,由一个正(或负)号、整数部分、小数点和小数部分组成。其中正号可以省略,并且允许没有整数部分或小数部分,但小数点是必须的。例如0.0.02314.-27.567256.0+0.05都是正确的表示形式。35(2)指数形式的实常数指数形式实常数一般用于表示一个较大或较小的数。一个指数型实常数由一个整型常数或基本实常数后跟一个字母E,E后跟一个正或负的整型常数组成。例如,1.2E+0.8-2.025E+160.4415E-051E+0415E-06都是正确的指数形式的实常数。使用指数形式的实常数时应注意:①E及其后的整型数表示10的乘幂,E后不能是非整数;②单独的指数部分不能做为常数
本文标题:FORTRAN95第01章-概述
链接地址:https://www.777doc.com/doc-4877045 .html