Visual-Fortran90程序设计基础第1、2章课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Visual-Fortran90程序设计基础第1、2章课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Visual Fortran90 程序设计 基础 课件
- 资源描述:
-
1、Visual Fortran 90 程序设计程序设计课程要求u 课前请做好预习课前请做好预习u 保持课堂安静,头脑清醒,思维活跃保持课堂安静,头脑清醒,思维活跃u 做好课堂笔记做好课堂笔记u 认真、独立、按时完成并提交作业认真、独立、按时完成并提交作业u 重视上机实践,有效利用宝贵的上机时间重视上机实践,有效利用宝贵的上机时间u“纸上谈兵纸上谈兵”学不出程序设计本领;学不出程序设计本领;u只有大量上机、编程、调试,才能掌握。只有大量上机、编程、调试,才能掌握。u学好程序设计语言的唯一途径是上机。学好程序设计语言的唯一途径是上机。u你的编程能力和你在机器上投入的时间成正比。你的编程能力和你在机器
2、上投入的时间成正比。课程要求第第1章章 程序设计基础知识程序设计基础知识1.4 1.4 计算机软件计算机软件1.11.1计算机简介计算机简介1.21.2程序设计语言程序设计语言1.3 1.3 算法的描述算法的描述一、一、 信息处理和计算机信息处理和计算机1、信息处理、信息处理 数值处理数值处理2、信息处理的分类、信息处理的分类 非数值处理非数值处理3、现代计算机工作原理:、现代计算机工作原理: 程序存储和程序控制程序存储和程序控制 (冯(冯诺依曼)诺依曼) 1.1 1.1 计算机简介计算机简介二、计算机的组成二、计算机的组成1 1、运算器运算器算术运算、逻辑运算算术运算、逻辑运算2 2、控制器
3、控制器根据指令控制计算机工作根据指令控制计算机工作 运算器、控制器和寄存器称为运算器、控制器和寄存器称为中央处理器中央处理器CPUCPU3 3、I/OI/O设备设备提供数据传输服务提供数据传输服务4 4、总线总线数据传输的公共通道数据传输的公共通道5 5、存储器、存储器存放数据和指令存放数据和指令 二进制位(二进制位(bitbit)00和和1 1的电路的电路 字节(字节(ByteByte)若干个位(若干个位(8 8个)个) 存储单元存储单元字节字节 存储器存储器若干个存储单元若干个存储单元 计算机的存储特性:计算机的存储特性:存存写写 取取读读1 1.2程序设计语言程序设计语言填补了人与计算机
4、交流的鸿沟填补了人与计算机交流的鸿沟计算机硬件仅仅计算机硬件仅仅知道知道0和和1有 问 题 需 要有 问 题 需 要计 算 机 解 决计 算 机 解 决的人的人交流的鸿沟交流的鸿沟计算机硬件仅仅计算机硬件仅仅知道知道0和和1有 问 题 需 要有 问 题 需 要计 算 机 解 决计 算 机 解 决的人的人程序设计语言程序设计语言程序设计语言的分类1.机器语言机器语言:二进制代码形式,可以被计算机直接执:二进制代码形式,可以被计算机直接执行,不可移植行,不可移植2.汇编语言汇编语言:用助记符来代替机器指令,容易记忆,:用助记符来代替机器指令,容易记忆,不可移植不可移植3.高级语言高级语言:接近自然
5、语言(英语)的程序设计语言,:接近自然语言(英语)的程序设计语言,又称算法语言,易学、易用、易维护,可移植性好又称算法语言,易学、易用、易维护,可移植性好例:例:FORTRAN、BASIC、PASCAL、C、LISP、PROLOG等等 F0R90源程序源程序 编译程序编译程序机器语言目标程序机器语言目标程序 连接构建连接构建可执行程序可执行程序1 1.3 算法的描述v 什么是算法?什么是算法?广义:解决某个问题或处理某个事件的广义:解决某个问题或处理某个事件的 方法和步骤。方法和步骤。现代含义是现代含义是计算机解题步骤计算机解题步骤。程序设计程序设计=算法算法+数据结构数据结构算法描述的方法算
6、法描述的方法v 文字说明文字说明 伪代码伪代码 流程图流程图 盒式图(盒式图(N-S图)图) 程序设计语言程序设计语言文字说明文字说明例如,比较两数例如,比较两数A、B的大小,输出较大的数的大小,输出较大的数 粗略的思路:粗略的思路: (1)读入读入A、B ( 2)判断)判断A是否大于是否大于B (3)若是则输出)若是则输出A,否则输出,否则输出B (4)结束)结束伪代码伪代码v一种介于自然语言和程序设计语言之间的一种介于自然语言和程序设计语言之间的文字和符号表达工具描述算法的方法:文字和符号表达工具描述算法的方法: IF AB 输出输出A ELSE 输出输出B END流程图流程图使用具有特定
7、含义的图形符号来表示算法。使用具有特定含义的图形符号来表示算法。盒式图(盒式图(N-S图)图)条件条件满足满足不满足不满足S1块块S2块块0 = S0 = I I输入输入AS+A = SI I +1 = I I直到直到 I=4I=4输出结果输出结果 S S第第2章章 Fortran90基础知识基础知识2.4 2.4 程序单元概念程序单元概念2.1Fortran2.1Fortran语言的发展语言的发展2.22.2源程序及其构成源程序及其构成2.3 2.3 语言元素语言元素2.1 Fortran2.1 Fortran语言的发展简史语言的发展简史一、一、FORTRAN 含义及其适用范围含义及其适用范
8、围 FORmula TRANslator 公式翻译器公式翻译器 科学和工程计算问题的程序设计语言科学和工程计算问题的程序设计语言 是第一门广泛应用的程序语言是第一门广泛应用的程序语言 著名编程语言著名编程语言Fortran创始人巴库斯创始人巴库斯 巴库斯获图灵奖巴库斯获图灵奖FortranFortran语言的发展简史语言的发展简史第一个第一个FORTRAN语言版本是在语言版本是在1954年提出的,在年提出的,在1957年正式发布使用。年正式发布使用。1958 FORTRAN1962 FORTRAN1978 FORTRAN771991.FORTRAN 901997. FORTRAN95 FORR
9、AN95不象不象FORTRAN90在在FORTRAN77添添加很多内容,只能视为加很多内容,只能视为90的修正的修正版,加强了并行运算方面的支持版,加强了并行运算方面的支持2.2 FORTRA902.2 FORTRA90源程序基本结构源程序基本结构例例2-1: 见书见书P16页例题:页例题:已知华氏温度与摄氏温度之间的换已知华氏温度与摄氏温度之间的换算公式为:算公式为: 现输入某一华氏温度现输入某一华氏温度,请计算出相应的摄氏温度,请计算出相应的摄氏温度。)32(95hCTTPROGRAM H_TO_C!Given the Fahrenheit temprature ,to caculate
10、the CentigradeREAL:TC,THREAD*,THTC=5*(TH-32)/9PRINT*,TH,TCEND PROGRAM H_TO_C例例2-2: 见书见书P17页:输入页:输入M个整数,将其相加,打印出它们个整数,将其相加,打印出它们的和。的和。PROGRAM CAL_M_SUMIMPLICIT NONEINTEGER:N,MREAL:T,AN=0;T=0PRINT*,Input number of data:READ*,MDOREAD*,AT=T+AN=N+1IF(N=M) EXITENDDOPRINT*,TEND PROGRAM CAL_M_SUM例例2-3: 求求 该
11、问题涉及五个阶乘的相加,可用子该问题涉及五个阶乘的相加,可用子程序实现阶乘。程序实现阶乘。FUNCTION FACTOR(N) RESULT (FAC_RESULT)IMPLICIT NONEINTEGER:N,FAC_RESULT,IFAC_RESULT=1DO I=1,NFAC_RESULT=FAC_RESULT*IENDDOEND FUNCTION FACTOR PROGRAM CAL_FACTORIMPLICIT NONEINTEGER:FACTOR,S=0,IDO I=4,8S=S+FACTOR(I)ENDDOPRINT*,S=,SEND PROGRAM CAL_FACTOR84!i
12、iFORTRA90FORTRA90源程序基本结构源程序基本结构1、FORTRAN90程序是一种程序是一种分块结构分块结构,由若干个程序单元,由若干个程序单元块组成:块组成: 主程序、外部子程序、模块、块数据单元主程序、外部子程序、模块、块数据单元 无论是主程序单元,还是子程序单元,都是独立的程序无论是主程序单元,还是子程序单元,都是独立的程序单位,应该独立编写,它们的形式相似。单位,应该独立编写,它们的形式相似。2、主程序结构、主程序结构 PROGRAM 程序名称程序名称 程序体程序体 END program 程序名称程序名称其中:其中:END既表既表示停止运行,又示停止运行,又是结束标记。是
13、结束标记。FORTRA90FORTRA90源程序基本结构源程序基本结构3、各程序单元体形式上相同,都由若干行组成:、各程序单元体形式上相同,都由若干行组成: 语句行语句行:说明语句说明语句:用于说明变量的类型、属性等:用于说明变量的类型、属性等 例:例:INTEGER:X,Y 可执行语句可执行语句:输入、赋值、输出:输入、赋值、输出 例:例:A=4;B=B+1非语句行非语句行:注释语句注释语句:!后的所有字符都被编译后的所有字符都被编译器忽略。器忽略。 可独占一行,也可在其它语句之后,可独占一行,也可在其它语句之后, 空行为注释行空行为注释行(固定格式用固定格式用C和和*)2.3 2.3 语言
14、元素语言元素 Fortran90的语言元素是指在程序设计中所用到的基本的语言元素是指在程序设计中所用到的基本成分,例如成分,例如字符集、常量、变量、记号以及其它的基本结构字符集、常量、变量、记号以及其它的基本结构等。等。只有了解并掌握了这些基本要素,才可能正确自如地使用该种只有了解并掌握了这些基本要素,才可能正确自如地使用该种语言。语言。 2.3.1 FORTRAN902.3.1 FORTRAN90字符集:字符集: 编写编写Fortran90程序时,所能使用的所有字符及符号。程序时,所能使用的所有字符及符号。 26个英文字母个英文字母AZ(az)程序中不区分大小写)程序中不区分大小写在大多数处
15、理系统中允许使用小写字母,除了字符串内的字符在大多数处理系统中允许使用小写字母,除了字符串内的字符外,小写字母等价于相应的大写字母。外,小写字母等价于相应的大写字母。10个阿拉伯数字个阿拉伯数字09 _(下划线下划线)注意与减号(注意与减号(-)的区别。)的区别。 21个特殊字符(见表个特殊字符(见表2-1):): 空格空格 = + - * / ( ) , : . $ !” % & ; ? 注意:注意:1、在、在FOR源程序中,只能使用以上字符源程序中,只能使用以上字符 2、字符型数据内(即引号内)可以出现任意字符、字符型数据内(即引号内)可以出现任意字符(包包括汉字括汉字) 在在Fortra
16、n90中,中,将字母、数字或专用字符的基本有效的序列将字母、数字或专用字符的基本有效的序列称为记号,称为记号,它包括它包括标号、关键字、名字、常数、运算符和定界符标号、关键字、名字、常数、运算符和定界符。例如:。例如:A * SIN(x)+5.3 这个表达式包括这个表达式包括6个记号,即个记号,即A、*、SIN、x、+、5.3。注意:注意: 在字符串内部,不能随意地添加空格。在字符串内部,不能随意地添加空格。例例“ABC”与与“A B C”不同。不同。 在记号内部,也不许随意地使用空格。在记号内部,也不许随意地使用空格。例例SIN(X)与与S I N(X)不同。不同。 记号与记号之间的空格可以
17、随意地使用。记号与记号之间的空格可以随意地使用。 多个空格在语法上与一个空格的作用相同。多个空格在语法上与一个空格的作用相同。 一个记号与相邻关键字、名字、常数或标号之间,应当用一个或多个空格分一个记号与相邻关键字、名字、常数或标号之间,应当用一个或多个空格分开,以避免错误,同时也使结构清晰。开,以避免错误,同时也使结构清晰。2.3.2 2.3.2 记号记号FortranFortran的数据类型(的数据类型(1 1)整型整型数据类型数据类型基本类型基本类型字符类型字符类型逻辑类型逻辑类型实型实型派生类型(用户自定义类型)派生类型(用户自定义类型)数组数组指针指针复型复型FortranFortr
18、an的数据类型(的数据类型(2 2) 在每一基本类型中,依据不同的处理系统又细分在每一基本类型中,依据不同的处理系统又细分为不同的为不同的种别种别,每一种别都与一个,每一种别都与一个 整数相对应,此整数相对应,此整数则称为整数则称为种别参数种别参数kind_Value 。 可在数值后用下划线标明种别,没有下划线为缺可在数值后用下划线标明种别,没有下划线为缺省种别。省种别。缺省种别整数的范围一般取决于所用计算机缺省种别整数的范围一般取决于所用计算机的字长。说明了种别参数后,可提高程序的可移植性。的字长。说明了种别参数后,可提高程序的可移植性。 简而言之,种别即决定数值在计算机中存储的字简而言之,
19、种别即决定数值在计算机中存储的字节数。节数。 常量的定义常量的定义:常量是程序执行过程中不能变化的量。:常量是程序执行过程中不能变化的量。 基本数据类型有五种:基本数据类型有五种: 整型、实型、复型、字符型和逻辑型整型、实型、复型、字符型和逻辑型 前三种属于数值类型,后两种为非数值类型,主前三种属于数值类型,后两种为非数值类型,主要用于文字处理和控制。要用于文字处理和控制。2.3.32.3.3基本类型常量基本类型常量整型数据:微机支持整型数据:微机支持4种种kind_Value:1,2,4,8kind_Value=1的范围:的范围: -128127(-2727-1)kind_Value=2的范
20、围:的范围: -3276832767(-215215-1)kind_Value=4的的-21474836482147483647(-231231-1) Integer 默认默认kind_Value的值为的值为4 整型常量又叫整数,整数值的集合就是数学整整型常量又叫整数,整数值的集合就是数学整数的子集。数的子集。1.整型常量(整型常量(INTEGER)FORTRAN 90FORTRAN 90通过通过KINDKIND值确定整数的值确定整数的存储开销存储开销、最大位数最大位数和和取值取值范围范围,如表所示。缺省,如表所示。缺省KINDKIND值则取默认值值则取默认值4 4。 KINDKIND值值 字
21、节数字节数 二进位数二进位数 取值范围取值范围 1 1 8 -1281 1 8 -128127127 2 2 16 -32768 2 2 16 -327683276732767 4 4 32 -2147483648 4 4 32 -2147483648214748364721474836470 +456 -123 34_2 34_SHORT 12345678998765432_4下划线后面的量就是种别参数,没有下划线的数都具下划线后面的量就是种别参数,没有下划线的数都具有缺省种别。有缺省种别。例,下列六个数都是合法的整数:例,下列六个数都是合法的整数: 为了保证计算机内数的范围够用,就要通过给
22、定种别为了保证计算机内数的范围够用,就要通过给定种别参数来约定。种别参数是由内在询问函数参数来约定。种别参数是由内在询问函数KIND送回的。提送回的。提供的最小范围是由内在函数供的最小范围是由内在函数Selected_int_kind送回的。表送回的。表示十进制幂的范围是由内在函数示十进制幂的范围是由内在函数range送回的。送回的。功能:功能:返回一个给定数据的种别参数。返回一个给定数据的种别参数。例:例:KIND(0) :为缺省值,其返回值是整型的标准种为缺省值,其返回值是整型的标准种别参数。别参数。KIND(2_2): 返回种别参数返回种别参数2。关于关于KIND函数函数格式:格式:SE
23、LECTEND_INT_KIND(N) :功能:返回范围在功能:返回范围在-10N10N的整数的的整数的kind-Value 例:例:selected_int_kind(6)可以返回范围在可以返回范围在-106+106(不包括两端点值)的所有整数的种别值。(不包括两端点值)的所有整数的种别值。为使程序具有可移植性,可将为使程序具有可移植性,可将K6说明成符号常数,说明成符号常数,作为种别常数来使用。作为种别常数来使用。 INTEGER, parameter:k6=selected_int_kind(6) 则具有则具有K6种别的常数就可以写为:种别的常数就可以写为:123_K6了。了。SELEC
24、TEND_INT_KIND函数函数例例2-4 测试测试FORTRAN系统的整型种别范围系统的整型种别范围PROGRAM INT_KINDIMPLICIT NONEINTEGER:IPRINT*,KIND(0)DO I=1,10PRINT*,I,SELECTED_INT_KIND(I)ENDDOENDPROGRAM INT_KIND 4 1 1 2 1 3 2 4 2 5 4 6 4 7 4 8 4 9 4 10 8 在在FORTRAN90中,也可以表示二进制、八中,也可以表示二进制、八进制、十六进制形式的无符号整数。其形式如下:进制、十六进制形式的无符号整数。其形式如下:二进制数:二进制数:B
25、101101 或或 B”101101”八进制数:八进制数:O76210 十六进制数:十六进制数:Z1FA2整型常数的其他表示方法整型常数的其他表示方法判定整数判定整数, ,指出合法整数和非法整数?指出合法整数和非法整数?说明原因说明原因-128-128、358_5358_5、5 5,234234、130_1130_1、+3276+3276、-52467-52467、o136o136实型常量又叫实数,它具有数学实数的近似值。实型常量又叫实数,它具有数学实数的近似值。 实数最常见的两种表示形式是:实数最常见的两种表示形式是:小数形式和指数形式小数形式和指数形式 小数形式:小数形式:由十个数字、小数
展开阅读全文