Fortran语言程序设计基础

合集下载

fortran 语言编程

fortran 语言编程

fortran 语言编程Fortran 语言编程Fortran(Formula Translation)是一种面向科学计算和工程计算的高级编程语言。

它于1957年诞生于IBM,是最早被广泛采用的科学计算语言之一,目前已经发展到第四个版本(Fortran 2018)。

Fortran是一种编译型语言,它通过编写源代码并使用编译器将其转换成机器语言来执行。

本文将详细介绍Fortran语言的基础知识、语法规则和常用的编程技巧,以帮助读者了解和掌握这门强大的科学计算语言。

第一步:安装Fortran编译器要开始编写和运行Fortran程序,首先需要安装Fortran编译器。

有多种Fortran编译器可供选择,其中最常用的是GNU Fortran(gfortran)和Intel Fortran Compiler(ifort)。

可以从官方网站或其他可信的来源获得这些编译器的安装程序,并按照提示进行安装。

第二步:编写并编译Fortran程序在开始编写Fortran程序之前,需要了解Fortran的基本语法规则。

Fortran使用固定格式或自由格式,固定格式的源代码按照列格式排列,每行的前6列被保留用于行号和注释,从第7列开始是可执行代码。

自由格式没有列格式的限制,更加灵活,但在编译阶段需要指定自由格式。

下面是一个简单的Fortran程序示例,用于计算并输出两个数的和:fortranprogram additionimplicit noneinteger :: a, b, sumprint *, "Enter two numbers:"read *, a, bsum = a + bprint *, "The sum is:", sumend program addition将以上代码保存为一个以.f90为后缀名的文件(例如addition.f90),然后使用编译器将其编译成可执行程序。

fortran编程的步骤

fortran编程的步骤

fortran编程的步骤Fortran编程的步骤一、引言Fortran(Formula Translation)是一种高级程序设计语言,特别适用于科学计算和数值计算。

本文将介绍Fortran编程的步骤,帮助初学者了解如何使用Fortran进行程序开发。

二、编写程序的基本步骤1. 确定程序的目标:在开始编写Fortran程序之前,需要明确程序的目标和需求。

确定程序的输入和输出,以及所需的计算或处理步骤。

这有助于确保编写的程序能够满足预期的功能和要求。

2. 设计算法和数据结构:根据程序的目标,设计合适的算法和数据结构。

算法描述了解决问题的步骤和逻辑,而数据结构则定义了程序中使用的数据类型和数据组织方式。

3. 编写代码:根据算法和数据结构的设计,开始编写Fortran代码。

Fortran使用特定的语法和语句结构,需要熟悉其语法规则和常用的编程技巧。

代码的编写应遵循良好的编码风格,包括适当的缩进、注释和命名规范。

4. 编译程序:编写完Fortran代码后,需要使用Fortran编译器将源代码转换成可执行的机器代码。

编译过程将检查代码中的语法错误和逻辑错误,并生成可执行文件。

Fortran编译器通常会提供丰富的编译选项,可以根据需要进行调整。

5. 调试和测试:编译成功后,可以对程序进行调试和测试。

调试是指查找和修复程序中的错误和问题,测试是指验证程序的正确性和性能。

调试和测试是编程过程中不可或缺的环节,可以使用调试器和测试框架等工具辅助进行。

6. 优化和性能调整:在程序调试和测试完成后,可以考虑对程序进行优化和性能调整。

优化旨在改进程序的执行效率和资源利用率,可以通过改进算法、调整编译选项和使用高级优化技术来实现。

7. 文档撰写:在编程过程中,应及时记录程序的设计和实现细节。

文档可以包括程序的功能描述、算法和数据结构的说明、代码注释和使用说明等。

良好的文档可以提高代码的可读性和可维护性,并方便其他人理解和使用程序。

fortran第3章2 Fortran语言程序设计初步

fortran第3章2 Fortran语言程序设计初步

三.大小写必须区分的位置
● 作为字符常量的字符串里面;
上一页
下一页
● 输入输出的纪录里面;
停止放映
● 作为编辑描述符的引号或撇号里面。
四. CVF编译平台接受小写字母。
在 OPEN 或 者 INQUIRE 语 句 里 面 的 FILE= 或 NAME= 后面是否区分大小写,也是由编译平台指定的。
五.如果是需要调用其他语言写的子程序, 而恰好该种语 言(例如C语言)是区分大小写的,这时就需要特别小心。
● 如果没有声明数据的种别,那么程序就会采用默认的参 数,FORTRAN的早期版本没有引入种别参数,直接采用了 两种不同的数据类型: REAL和DOUBLE PRECISION
FORTRAN90以来的版本里,引入种别参数,对种别参数 的不同取值,就足够表达不同的精度,
● 对于在指定种别参数的数值时,一般是以字或字节为单位, 这样对于字长不同的机器而言,相互之间就会出现程序移植 的困难,下面分情况予以说明:
在FORTRAN90与95中:
默认在FORTRAN77中的规定, 在FORTRAN90之后的标
准里,开始允许在一个程序单元内,由用户定义特定的不
上一页
依赖于固有数据存储模式的数据类型,这就是派生数据类
下一页
型。
停止放映
第二种情况:
指定固有数据类型的种别参数。
● 用来指定程序当中需要使用的每一种固有数据类型所要 求占据的内存空间大小的属性由种别参数表示。给这个变 量(参数)指定一个数值,就可以说明数据所需要的存储空 间的大小,也就是程序允许的数值数据的位数和字符串的 字符数目。
数字 0 1 2 3 4 5 6 7 8 9
下划线 _
特殊字符

Fortran基础

Fortran基础

简单的Fortran程序 程序 简单的
program ex0413 character (len=20) string string = "Good morning." write(*,*) string string(6) = “evening.” ! 重新设置从第 个字符之后的字符串 重新设置从第6个字符之后的字符串 write(*,*) string end 执行结果为: 执行结果为: Good morning Good evening
简单的Fortran程序 程序 简单的
二、声明语句
1、变量 、 变量 — 程序运行期间其值可以改变的量 例如: 例如:x=1.0 x=2.0 2、变量名 、 规则:以英文字母开头,英文字母和数字0-9以及 规则:以英文字母开头,英文字母和数字 以及 下划线的组合。 下划线的组合。 变量的名字最好是取成一个有意义的英文单词, 变量的名字最好是取成一个有意义的英文单词,这样 可以减少程序编写时出错的机会。 可以减少程序编写时出错的机会。
简单的Fortran程序 程序 简单的
② 改变隐含约定 可以经过IMPLICE描述来决定哪些字母开头的变量会自动 描述来决定哪些字母开头的变量会自动 可以经过 使用某种类型。 使用某种类型。 implicit integer(A,B,C) !A、B、C开头的变量都视为整型数。 开头的变量都视为整型数。 、 、 开头的变量都视为整型数 implicit integer(A-F,I,K)!A到F及I、K开头的变量都视为整型 ! 到 及 、 开头的变量都视为整型 数。 implicit real(M-P) !M到P开头的变量都视为浮点数 到 开头的变量都视为浮点数 implicit none !关闭默认类型功能,所有变量都要事先声明。 关闭默认类型功能,所有变量都要事先声明。

fortran语言程序设计知识点

fortran语言程序设计知识点

fortran语言程序设计知识点Fortran语言是一种面向科学与工程计算的编程语言,因其在数值计算和科学应用方面的高效性而受到广泛使用。

本文将重点介绍Fortran语言程序设计的一些重要知识点。

一、基础语法1.1 变量与数据类型在Fortran中,变量是用于存储数据的容器。

常见的数据类型包括整型(INTEGER)、实型(REAL/DOUBLE PRECISION)、复数型(COMPLEX)、逻辑型(LOGICAL)等。

变量的命名需遵循一定规则,如以字母开头,长度不超过31个字符等。

1.2 运算符与表达式Fortran支持常见的算术运算符(如+、-、*、/)以及逻辑运算符(如. AND.、. OR.、. NOT.)等。

表达式由变量、常数和运算符组成,可以进行数值运算和逻辑判断。

1.3 控制结构Fortran提供循环结构(DO)、条件结构(IF-THEN-ELSE)和选择结构(SELECT CASE)等控制语句,用于控制程序的流程。

二、数组与数据处理2.1 数组定义与操作Fortran中数组是由相同类型的数据元素组成的集合。

可以使用DIMENSION语句定义数组的维度和大小,通过下标访问和修改数组元素。

2.2 数组运算与函数Fortran提供了许多对数组进行运算和处理的函数,如数组求和(SUM)、最大最小值(MAX、MIN)、数组重排(RESHAPE)等,方便对数据进行统计和处理。

2.3 文件读写操作Fortran支持对文件进行读写操作,可以通过OPEN语句打开文件,使用READ和WRITE语句读取和写入数据。

可以根据需要设置文件的访问模式和格式。

三、过程与模块3.1 过程(Subroutine/Function)过程是一段独立的代码块,可接受传入参数并返回值。

在Fortran中,过程可以是子程序(Subroutine)或函数(Function)。

子程序用于完成一系列操作,而函数则返回一个值。

3.2 模块(Module)Fortran中的模块是一个编译单元,用于组织和管理相关的过程和变量。

1_FORTRAN程序设计基础

1_FORTRAN程序设计基础

起止框
1
流程线 0
有错
输入输出框 2 i=-1
y%400==0
连接点
Y i=1 2 y=y+1 N 3注释框 y>2500 Y 结束
判断框
i=1
2
N i=-1 2
处理框
FORTRAN程序设计
Page7
算法的表示方法:改进的流程图
三种基本结构
a Y A A B b 顺序结构 b 选择结构 a P N B A N a P Y P Y b 循环结构 (当型循环) b 循环结构 (直到型循环) a A N
程序与程序设计
程序设计方法+算法+数据结构+语言工具 =程序
分析问题+设计算法+编写程序+调试程序 =程序设计
FORTRAN程序设计
Page2
ቤተ መጻሕፍቲ ባይዱ
算法
广义的定义:为解决一个问题而采取的方法和步骤 计算机能够执行的算法:数值运算算法和非数值运算算法
FORTRAN程序设计
Page3
简单算法举例
例1.1 判断2000-2500年中每一年是否是闰年,将结果输出。
FORTRAN程序设计
!函数子程序 function area(a,b,c) implicit none real a,b,c,s,area s=(a+b+c)/2.0 area=sqrt(s*(s-a)*(s-b) & *(s-c)) return end
Page13
打开开发系统
看到的系统界面
判断闰 年的算 法的N -S图
FORTRAN程序设计
Page10
结构化程序设计方法
结构化程序:由三种基本结构组成的程序。 结构化程序的优点:便于编写、便于阅读、便于修改和维护 怎样编写结构化的程序: 自顶向下 逐步细化 模块化编程 结构化编码

Fortran基础教程

Fortran基础教程

2024/8/9
18
3.5 常 量
3.5.2 实型常量
(有二种表示形式)
⒈小数形式
例:15.8,-21.05,14.0 ,14.,.17, 0.0 ,…
⒉指数形式(通常表示较大或较小的数)
例:100000000→1.0E+8
0.0000125→1.25E-05
数字部分
指数部分
2024/8/9
19
3.5 常 量
2024/8/9
31
3.7 Fortran内部函数
注意几点:
⑴函数自变量(参数)必须用括号括起来。
例:sinx+cosx → sin(x)+cos(x)
⑵函数自变量可以是常量、变量或表达式。
例: exp(3.0)
sin (x+cos(x))
⑶有些函数的类型是由自变量的类型确定的。
例:mod(8.0,3.0) →2.0
2024/8/9
24
3.6 变 量
注意几点: ⑴变量名不区分大小写字母。
例:TOTAL,Total,total 代表同一变量 ⑵变量名中的空格不起作用。
例:abc,a bc,ab c,a b c 代表同一变量 ⑶变量名尽量做到“见名知义” AVER、SUM、Imax ⑷允许变量名与语言中具有特定含义的字(“保留字”)
2024/8/9
13
3.4 Fortran程序的编辑与运行
一、Fortran PowerStation 4.0的启动
选“开始”→“程序”→“Fortran PowerStation 4.0”→“Microsoft Developer Studio”。
二、创建项目工作间
选“File”→“New”→“Project Workspace”→“Console Application”,并 输入项目工作间名称(如:aaa)和存放项 目工作间的位置或路径(如:c:\for\) → Create。

FORTRAN语言程序设计

FORTRAN语言程序设计
说明:1)引号(‘ ’或 “ ”)是字符串的分隔符,并非字符常量的一部分。 2)字符串中的空白符有意义,要计数的。例:“A B” ,其字符长度是3。 3)当字符长度为0时,即为空串。 4)字符串内的字母区分大小写,‘a’和‘A’是不同的字符常量。 5)如果字符串中含有单引号,则这个单引号要用两个连续的单引号表示 ,如:‘I’’m a boy.’。或者单引号和双引号交替使用,如“I’m a boy.” 。
n 是一个十进制数字(0~9)序列。
Kind值为:1、2、4、8之一。分别表示1、2、4、8个字节个数。
FORTRAN 90/95标准中整型常量的范围没有明确规定。
例如:122、0、-36、559_2
均为合法的整型常量
100.0、100,000、100 0、1002 均为非法的整型常量
5.6.2.2 实型常量
5.5 程序的书写格式 (1)固定格式:将一个语句行分为若干个区域,如下图所示

5.6 数据类型
5.6.1 基本概念 1.内部数据类型 FORTRAN语言将内部数据划分为以下类型: 整型 实型 算术型 数据类型 复型 逻辑型 字符型 2.种别 一个数据在内存中均占有一定字节个数的存储单元。上述每类数据都有 其不同的种别(即Kind)特性,即上述每类数据根据其种别特性(即 Kind值)的不同分别拥有不同字节个数的存储单元。 3.数据对象 1)常量:程序运行时,其值不能改变的量,称为常量。如:5,3等等。 2)变量:程序运行时,其值可以改变的量,如:变量a, a是一个存储单元
第四章 FORTRAN语言开发环境
详见教材:3.3 FORTRAN语言 开发环境
第五章 FORTRAN 语言基础知识
5.1 字符集
FORTRAN语言允许使用的字符集为:
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FORTRAN
90 对关键字不予保留 , 即允许其关键字作为其它实体 的名称 (变量名、数组名、函数名、程序名等),可将PROGRAM 、 INTEGER 、 REAL 、 READ 、PRINT 、WRITE 、 DO 、 END 、 SUBROUTINE 、 2.4 关键字/说明 FUNCTION 等作为变量名、数组名、函数名或程序名。编译程序 根据上下文来识别一个字符串是关键字,还是实体名称。如语句 “ PROGRAM PROGRAM” 中第一个“ PROGRAM” 将被编译程序识别为 关键字,第二个“PROGRAM”将被识别为实体名称(主程序单元名)。
程序单元名、外部过程名、命令块名和模块 名为全局名称,且在整个程序中必须唯一。
第二讲 Fortran语言程序设计基础
长安大学地学信息技术研究所
09/10第一学期
作用域示例
PROGRAM main REAL a,b,c CONTAINS SUBROUTINE p1(…) REAL b1,c1,d END SUBROUTINE p1 SUBROUTINE p2(…) REAL c2,d2,e
长安大学地学信息技术研究所
09/10第一学期
2.4 关键字
FORTRAN 90关键字分为语句关键字和变元关键字。

概述 分类
语句关键字是用于描述语句语法成分的固定的合法单词。


说明
示例
如语句“ IF (A<B) THEN” 中的“ IF” 和“THEN” 是语句关键 字, 类似的关键字有: PROGRAM 、 INTEGER 、 REAL 、READ 、PRINT 、 WRITE、DO、END、SUBROUTINE、FUNCTION等。
第二讲 Fortran语言程序设计基础
长安大学地学信息技术研究所
09/10第一学期
2.3 名称

概述 语法描述


作用域
示例
作用域指使用范围,每个名称都规定了作用域。 名称的作用域为该名称声明所在的程序单元、函 数或过程。 作用域为整个程序的名称称为全局名称,否则 称为局部名称。
2.3 名称/作用域
第二讲 Fortran语言程序设计基础
1. Fortran语言发展概况 2. 字符集 3. 名称 4. 关键字 5. 程序单元 6. 语句 7. 书写格式 8. 数据类型 9. 兼容性 10. 习题二
第二讲 Fortran语言程序设计基础
长安大学地学信息技术研究所
09/10第一学期
2.1 FORTRAN语言发展概述
2.1 FORTRAN语言发展概述
第二讲 Fortran语言程序设计基础
长安大学地学信息技术研究所
09/10第一学期
2.1 FORTRAN语言发展概述


语言地位 发展历程
1951年,美国IBM公司着手研究开发FORTRAN语言,并于1954年对 外发布,称FORTRANⅠ。
1958年,扩充和完善FORTRANⅠ, 引入函数概念,投入商业运行, 推出FORTRANⅡ。
第二讲 Fortran语言程序设计基础
长安大学地学信息技术研究所
09/10第一学期
2.3 名称

概述 语法描述
<名称>→<英文字母>{<英文字母>∣<数字 >∣“_”∣“$”}


作用域
示例
说明:
① 名称只能由英文字母、数字、下划线符 “_”和美元符号“$”组成。
2.3 名称/语法描述
② 名称第一个字符必须是英文字母。 ③ 名称不能超过31个字符。
b1,c1,d 的作用域
a,b,c 的作用域
END SUBROUTINE p2 END
c2,d2,e 的作用域
第二讲 Fortran语言程序设计基础
长安大学地学信息技术研究所
09/10第一学期
2.3 名称

概述 语法描述
[例2.1]判定下列名称,哪些是合法名称?哪些是非法名称? 解释非法名称错误原因。 Number, Max, X-Y-Z, PrOgRaM, FIND_IT, read, x, 8q, a.5, _wrong, a3b7, U.S.A., DR.WANG, china, total, x$y$z, $abcd,r a t e。 解 : 合 法 名 称 有 :Number,Max, PrOgRaM, FIND_IT, read, x, a3b7, china, total, x$y$z。 非 法 名 称 有 :X-Y-Z, DR.WANG,$abcd,r a t e。
2.2 字符集

概述 字符集
说明: ① 除字符型常量外 , 源程序中词法和语法描 述不区分字母的大小写,如语句“INTEGER I”和语 句“integer i”是等价的。 ② FORTRAN 90 字符集以外的可打印字符 , 只 能出现在注释、字符常量、字符串编辑符和输入 输出记录中。
2.2 字符集/说明


F90影响


1960年,推出FORTRAN Ⅲ,但没有在计算机上实现。
1962年,推出了FORTRAN Ⅳ。没有充分考虑兼容性。 1966年,推出FORTRAN 66,美国标准,后被ISO采用。 1978年,推出FORTRAN 77,兼容性好,结构化特征。 1991年,推出FORTRAN 90,现代语言,可视化编程。 1995年,微软公司在Developer Studio集成开发平台上推出 FORTRAN PowerStation 4.0。引入可视化编程技术。 2.1 FORTRAN语言发展概述/发展历程 1997年,微软和数据设备公司合作推出Digital Visual FORTRAN 5.0,功能强大。同年发布FORTRAN95标准,提高并行计算能力。 1998年,康柏公司与数据设备公司合并,推出Compaq Visual FORTRAN 6.x,它的最高版本是6.6。此后由Intel公司开发。 2004年,FORTRAN2003标准出现,近乎彻底地解决了Fortran语言 现代化的问题。

说明
a b c d e f g h I j k l m n o p q r s t u v w x y z 。
2.阿拉伯数字:0 1 2 3 4 5 6 7 8 9。 3.下划线:“_”。
4.特殊字符
2.2 字符集/字符集 空格 <Tab> + - * / ( ) , . ' : ! " % & ; < > ? $。


作用域
示例
INTEGER length,width,area,price
READ(*,*) length,width area=mul(length,width)
2.3 名称
price=mul(4000,area) WRITE(*,*) ‟ 总地价:’ ,price,‟ 元’ END FUNCTION mul(x,y) mul=x*y END FUNCTION
第二讲 Fortran语言程序设计基础
长安大学地学信息技术研究所
09/10第一学期
2.4 关键字

概述 分类
关键字是FORTRAN 90 中用于描述语句语法成分或命名哑元 名称的特定字符串。FORTRAN 90 关键字分为语句关键字和变元 关键字。 PROGRAM main


说明
示例
INTEGER length,width,area,price
2.1 FORTRAN语言发展概述/F90影响
第二讲 Fortran语言程序设计基础ຫໍສະໝຸດ 长安大学地学信息技术研究所
09/10第一学期
2.2 字符集

概述 字符集
FORTRAN 90源程序是一个符合FORTRAN 90词 法、语法和语义规定的特殊文本,它由FORTRAN 90

说明
字符集规定的字符按照词法、语法和语义规定进
CMPLX (10, kind =4)
第二讲 Fortran语言程序设计基础
! 跳过Y参数。
长安大学地学信息技术研究所 09/10第一学期
2.4 关键字

概述 分类
关键字都有特定的含义,在描述中有具体的位置要求,不能改变


说明
示例
或移位 , 否则将产生语法错误。如语句“PROGRAM main”中的关 键字“PROGRAM”的含义是说明源程序是一个主程序单元,位于语 句首部,如果写成“PROGRAMMING main”或“main PROGRAM”将产 生语法错误。
行描述。
2.2 字符集
第二讲 Fortran语言程序设计基础
长安大学地学信息技术研究所
09/10第一学期
2.2 字符集
FORTRAN 90字符集由下面四部分字符组成:

概述 字符集
1.英文字母 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 。
长安大学地学信息技术研究所 09/10第一学期



第二讲 Fortran语言程序设计基础
2.1 FORTRAN语言发展概述

语言地位 发展历程

F90影响
FORTRAN 90 的推出,是 FORTRAN 语言发展史 上的一个里程碑,它挽救了 FORTRAN 语言面临淘 汰的局面,使传统的 FORTRAN 语言焕发了青春, 以其强大的功能和严谨的风格受到人们的欢迎和 认可,并展现出美好的应用前景。 西方发达国家已开始重新认识 FORTRAN 语言, 对 FORTRAN 语言的研究、开发和应用给予了高度 重视,FORTRAN语言正在发挥越来越大的作用。
相关文档
最新文档