




已阅读5页,还剩63页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
FORTRAN90程序设计,主讲:刘华蓥,FORTRAN90程序设计,第一章程序设计基础知识,程序设计语言,低级语言,高级语言,机器语言,汇编语言,程序设计语言,汇编语言,如:ADD加MOV传递指令,汇编程序,高级语言,高级语言是面向问题计算过程的程序设计语言。,用高级语言编写的源程序必须经过编译或解释之后才能被计算机执行。编译程序把源程序全部编译成用机器语言书写的程序。,常用的高级语言:FORTRAN、C、BASIC、PASCAL等。,算法的描述,例1-1求,算法概述,算法:为解决某一特定问题而采用的具体工作步骤或方法。,1.有穷性2.确定性3.有零个或多个输入4.有一个或多个输出5.可执行性(或有效性),算法图示表示法,算法图示表示法,程序流程图,(1)流程线,(2)起止框,(3)处理框,(4)判断框,(5)输入输出框,(6)连接点,开始,结束,S+A=S,0=S,0=I,输入A,I+1=I,Is,0=I,输入A,S+A=S,I+1=I,直到I=100,输出结果S,例1-1N-S图,第二章FORTRAN90基础知识,FORTRAN是FORmulaTRANslation的缩写,1954年,1991年,第一个FORTRAN文本的提出,1978年,推出FORTRAN77,FORTRAN90问世,FORTRAN语言的发展,源程序及其构成,例2-1,PROGRAMH_TO_C!GiventheFtemprature,tocalculatetheCentigradeREAL:TC,THREAD*,THTC=5*(TH-32)/9PRINT*,TH,TCENDPROGRAMH_TO_C,例2-2PROGRAMCAL_M_SUMIMPLICITNONEINTEGER:N,MREAL:T,AN=0;T=0PRINT*,Inputnumberofdata:READ*,MDOREAD*,AT=T+A;N=N+1IF(N=M)EXITENDDOPRINT*,TENDPROGRAMCAL_M_SUM,例2-3,FUNCTIONFACTOR(N)RESULT(FAC_RESULT)IMPLICITNONEINTEGER:N,FAC_RESULT,IFAC_RESULT=1DOI=1,NFAC_RESULT=FAC_RESULT*IENDDOENDFUNCTIONFACTOR,PROGRAMCAL_FACTORIMPLICITNONEINTEGER:FACTOR,S=0,IDOI=4,8S=S+FACTOR(I)ENDDOPRINT*,S=,SENDPROGRAMCAL_FACTOR,1.FORTRAN90是分块形式的程序,一个程序含有多个程序单元,每个程序有且仅有一个主程序单元。2.各程序单元由若干行构成。程序行主要有:说明语句行可执行语句行注释行(用!开始),FORTRAN90程序的构成,语言元素,FORTRAN90字符集,1.26个大写英文字母,2.10个阿拉伯数字,3.下划线_(与“-”不同),4.21个特殊字符,5.其它字符具体的处理系统字符集中还可以有附加字符,但只可以出现在字符常量、字符串编辑描述符、注释和输入、输出记录中。,记号和名字,记号:字母、数字或专用字符的基本有效的序列称为记号,它包括标号、关键字、名字、常数、运算符和定界符。,注意:1、在记号内部,不许随意地使用空格。,2、记号与记号之间的空格可以随意地使用。一个记号与相邻关键字、名字、常数或标号之间,应当用一个或多个空格分开。,SIN(X)SIN(X),A*SIN(X)+5.3A、*、SIN、X、+、5.3,A*SIN(X)+5.3IMPLICITNONEENDDO,记号和名字,在FORTRAN90中使用的名字被用于标识一个程序成分,如程序单元、有名变量、有名常量、虚元或派生类型等。,名字:,注意:,(1)名字的长度不能超过31个字符。(2)名字的组成成分可以是字母、数字和下划线。(3)名字的第一个字符必须是字母。,A,1A,S_P_O,SAEITE_,THIENAME,Y2000,A*BC,记号和名字,基本常量,整型常量,0,+456,34_2,-19,种别,10.0,10.,二进制数:B101101或B101101,八进制数:O76210或O76210,十六进制数:Z1FA2或Z1FA2,整型常量,常用的实型表示法有小数形式和指数形式:,5.23443E-22385E6,实型常量,1/2,e,-3.14159,10.,1E2,实型常量,规格化的指数形式:,(1)数字部分的绝对值小于1,而且小数点后的第一位数字不为0。,-0.743643E-12,21.835E-12,(2)数字部分有而且只有一位非零整数。,7.123E24,0.2834E-34,复型常数,(1.25,0.4)(1E5,38)(1.0,4.2),字符型常量,字符型常量又叫字符串或字符常数,由一对单撇号或一对双撇号之间的字符序列组成.,ABCDCHINA4653374,Imastudent,逻辑型常量,.TRUE.和.FALSE.,变量,说明整型变量的关键字:INTEGER说明实型变量的关键字:REAL说明复型变量的关键字:COMPLEX说明逻辑型变量的关键字:LOGICAL说明字符型变量的关键字:CHARACTER,变量是指在程序运行过程中其值可以发生变化的量。用变量名来表征。,INTEGRAL_RESULT(积分结果)NUMBER_OF_DAYS(天数),类型说明语句:,INTEGER:I,J,KREAL:X,Y,Z,REAL(KIND=2):A,B,INTEGER,PARAMETER:M=5,N=24,变量,REAL,PARAMETER:PI=3.1415926,程序单元概念,程序单元是FORTRAN程序的基本成份。程序单元可以是主程序、子程序、模块。,PROGRAM程序名说明部分可执行部分内部过程ENDPROGRAM程序名,主程序,子程序,子程序是可以完成某一独立算法或功能的程序单元,又称为过程。,第三章基本语句,类型说明语句,算术表达式和赋值语句,输入与输出语句,输入与输出编辑符,类型说明语句,类型说明语句的一般形式:类型说明(种别说明),属性说明1,属性说明n变量名表,INTEGER(KIND=2),DIMENSION(1:15)A,REALX=1.6,Y,COMPLEXK,L,属性说明,1.PARAMETER属性(常量名属性),INTEGER,PARAMETERN=5,2.DIMENSION属性(数组属性),REAL,DIMENSION(1:10):X,3.INTENT属性(意图属性)只用于子程序中,算术表达式和赋值语句,赋值语句,算术表达式,算术表达式,1.算术运算符,+,-,*,/,2.算术运算符的优先顺序,和,和,3.5+2*A/B-V*2,1自变量必须用括号括起来。,2三角函数自变量单位为弧度。,3函数对自变量的类型有要求。,4ABS(5)=5ABS(5.0)=5.0MOD(8,5)=3MOD(8.0,5.0)=3.0INT(-2.6)=-2REAL(7)=7.0,.内在函数,SIN(X),TAN(23*3.14/180),自变量必须为实型(或复型):三角函数、SQRT、LOG、LOG10、EXP,算术表达式,4.算术表达式,表达式是由运算符和括号将各运算元素连结起来的有意义的式子。,优先次序:括号函数*/或*+或-,书写时注意:()*,算术表达式,表达式的类型:,1/3,2*3.6,算术表达式,1/4*2.8,16*(1/4),赋值语句,一般形式:V=e作用是将一个表达式的值赋给一个变量(或一个数组元素等)。,A=4.2B=AZ=(-X*2)*3GL=.TURE.G2=ABC,1功能:计算、转换、赋值。,说明:,2赋值号“=”,赋值语句,3类型,应用举例,并联电阻总电阻电流,例3-1有一直流电路,电压U200伏,电阻20欧、50欧、100欧,求电路的等效电阻和总电流。,U,PROGRAMMAINIMPLICITNONEREAL:I,R0,R1,R2,R12,R,UR0=100.0;R1=20.0;R2=50.0U=200.0R12=R1*R2/(R1+R2)R=R0+R12I=U/RWRITE(*,*)R=,RWRITE(*,*)I=,IENDPROGRAMMAIN,运行结果:R=1.1428571E+02I=1.7500000,例3-2有一圆柱和圆球,已知半径r=1.5,圆柱高h=3.0,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。,PROGRAMMAINIMPLICITNONEREAL:PI=3.14159,R=1.5,H=3.0REAL:L,S,SQ,VQ,VZL=2.0*PI*RS=PI*R*2SQ=4.0*PI*R*2VQ=4.0/3.0*PI*R*3VZ=PI*R*2*HWRITE(*,*)L=,LWRITE(*,*)S=,SWRITE(*,*)SQ=,SQWRITE(*,*)VQ=,VQWRITE(*,*)VZ=,VZENDPROGRAMMAIN,输入与输出语句,输入与输出概念,将外部介质上的数据通过计算机的输入设备送到计算机内存称为输入;将计算机内存的数据通过输出设备送到外部介质上,称为输出。,READ语句(输入语句,也称读语句)PRINT语句和WRITE语句(输出语句,也称写语句),READ*,输入表READ(*,*)输入表READ(部件号,*)输入表,输入语句,READ*,X,Y,Z,W,1.表控格式输入,READ(*,*)X,Y,Z,W,READ(5,*)X,Y,Z,W,输入语句,2.自定格式输入,READ(部件号,格式说明)输入表,编辑符,READ(*,(I7)X,Y,READ(I7),X,Y,READ(5,(I7)X,Y,必须是变量,注意:,2类型,3个数,输入语句,4每一个READ语句都从一个新的记录开始读数。,5重复因子,6在一个数据的中间不能插入空格。,1输入的数据必须是常数,不能是变量和表达式。,7/,输出语句,1.自定格式输出,WRITE(部件号,格式说明)输出表,WRITE(6,(2F6.2)X,X*Y,PRINT格式说明,输出表,WRITE(6,*)X,YPRINT*,X,Y,2.表控格式输出,可为表达式,输入与输出编辑符,常用编辑符,1.整型I2.实型F和E3.复型4.字符型A5.X、/和:,有关一个记录的编辑格式说明,1.类型,2.重复系数,PRINT(1X,F5.1,2I4,F5.1,2I4,E10.3),A,B,C,D,E,F,GPRINT(1X,2(F5.1,2I4),E10.3),A,B,C,D,E,F,G,例3-3已知三角形的三条边长a、b和c,求其面积。,PROGRAMMAIN_AREAIMPLICITNONEREAL:A,B,C,S,AREAREAD*,A,B,CS=(A+B+C)/2.0AREA=SQRT(S*(S-A)*(S-B)*(S-C)WRITE(*,(A,F8.3)AREA=,AREAENDPROGRAMMAIN_AREA,,其中S=1/2(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 地震科目一考试题及答案
- 地理福建会考试题及答案
- 中国表面杀菌剂项目经营分析报告
- 2025原油铁路运输合同
- 签协议书份额
- 检验中级考试试题及答案
- 驾照科三考试试题及答案
- 畜牧养殖考试题及答案
- 投资承诺协议书
- 水资源论证报告
- 化工工艺报警管理制度
- 秦皇岛市市直医疗卫生单位选聘笔试真题2024
- 锂离子电池企业供应链企业碳足迹核算指南
- 大学生法律基础知识课件
- Unit 4 What sounds can we hear Period 2 Explore 课件 三年级英语下册(沪教版2024)
- 新闻记者职业资格《新闻采编实务》考试题库(含答案)
- 图解自然资源部《自然资源领域数据安全管理办法》
- PLC入门课程课件
- 港口液体危化品装卸管理人员理论考试题库(浓缩500题)
- 2024年深圳市龙华建设发展集团有限公司招聘笔试冲刺题(带答案解析)
- 药师竞聘正高述职报告
评论
0/150
提交评论