Fortran入门教程(一)——引入篇

2024-02-12 23:38
文章标签 入门教程 引入 fortran

本文主要是介绍Fortran入门教程(一)——引入篇,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Fortran 引入

目录

1. Fortran 语言架构

首先来看一段Fortran代码,你不必知道代码中各部分的详细含义,只需要简单了解一下Fortran代码的语言结构。

!> Program 1-1
program view_of_fortranuse iso_fortran_env, only: int32, real32implicit noneinteger(int32) :: highreal(real32)   :: weight, bmiwrite(*, *) "Please enter your high(cm) >>>"read(*, *) heighwrite(*, *) "Please enter your weight(kg) >>>"read(*, *) weightbmi   = weight / (height / 100 * height / 100)write(*, *) "Your bmi is:", bmiend program
  1. 1行为注释(Comments), 注释是由 ! 开头的语段, 计算机在编译fortran程序时会自动将每一行 由 !开头的语句略去。

  2. 2行及最后一行为程序 入口声明出口声明, 该语句为 fortran 程序运行必不可少的语句。

  3. 3行引用了 ios_fortran_env 模块中的 int32real32

  4. 6-7行为 变量声明语句, 在此声明程序运行时需要申请的内存空间及变量名称。

  5. 9、12、16行 为输入语句, 从指定的通道中读取数据, 10、13行为输出语句,将数据输出指指定通道。

  6. 15行为赋值语句,该语句将右侧语句值赋予左侧变量。

Fortran 程序常规的书写框架如下:

program xxxxuse xxx, only: xxx(implicit none)! 变量声明xxx, xxx  :: xxx! 主程序...end program (xxxx)

2. Fortran 书写格式

2.1 Fortran 字符集

Fortran 中能使用的字符包括:

  1. 英文字符: a~z, A~Z
  2. 数字字符: 0~9,
  3. 22个特殊符号: :=±*/(),.'"!%&;<>?$_(space)

Note: fortran 程序对大小写不敏感,也就是说, 在fortran代码中
Integer == INteGer == integer

2.2 固定格式 (Fixed)

固定格式是为了方便老式穿孔卡片进行运作的程序书写格式,现在一般不推荐使用,
固定格式的书写有如下要求

  1. 1 字符如果为 C, c, * 则改行被当作注释
  2. 1 ~ 5 个字符只能是数字用于编号,否则是空格
  3. 6字符, 如果是 “0” 以外的任何字符,则改行会续接上一行
  4. 7~72 字符为编写区域
  5. 73 字符以后,被废弃,有些编译器在检查时会报错。
C     !program 1-2: Fixed demoprogram hello
100       write(*, *) "hello, world!"end program

2.3 自由格式 (Free)

对每一行的具体字符没有要求,只有如下的几点注意

  1. ! 后为注释
  2. 每行只能编写 132 个字
  3. 一行代码如果最后是 &, 表示下一行代码与这一行续接。

这篇关于Fortran入门教程(一)——引入篇的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/703921

相关文章

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者

Weex入门教程之4,获取当前全局环境变量和配置信息(屏幕高度、宽度等)

$getConfig() 获取当前全局环境变量和配置信息。 Returns: config (object): 配置对象;bundleUrl (string): bundle 的 url;debug (boolean): 是否是调试模式;env (object): 环境对象; weexVersion (string): Weex sdk 版本;appName (string): 应用名字;

Weex入门教程之3,使用 Vue 开发 Weex 页面

环境安装 在这里简略地介绍下,详细看官方教程 Node.js 环境 Node.js官网 通常,安装了 Node.js 环境,npm 包管理工具也随之安装了。因此,直接使用 npm 来安装 weex-toolkit。 npm 是一个 JavaScript 包管理工具,它可以让开发者轻松共享和重用代码。Weex 很多依赖来自社区,同样,Weex 也将很多工具发布到社区方便开发者使用。

Weex入门教程之2,Android Studio安装Weex插件

插件位置及描述 https://plugins.jetbrains.com/idea/plugin/8460-weex 貌似对windows还不是很支持,先放着吧。 安装 插件功能 先预览下都有什么功能 安装完成Weex插件后,如果在main toolbar找不到这些功能图标,那么就需要手动添加到main toolbar 添加到main toolbar 红框内就是

Weex入门教程之1,了解Weex

【资料合集】Weex Conf回顾集锦:讲义PDF+活动视频! PDF分享:链接:http://pan.baidu.com/s/1hr8RniG 密码:fa3j 官方教程:https://weex-project.io/cn/v-0.10/guide/index.html 用意 主要是介绍Weex,并未涉及开发方面,好让我们开始开发之前充分地了解Weex到底是个什么。 以下描述主要摘取于

SW - 引入第三方dwg图纸后,修改坐标原点

文章目录 SW - 引入第三方dwg图纸后,修改坐标原点概述笔记设置图纸新原点END SW - 引入第三方dwg图纸后,修改坐标原点 概述 在solidworks中引入第三方的dwg格式图纸后,坐标原点大概率都不合适。 全图自动缩放后,引入的图纸离默认的原点位置差很多。 需要自己重新设置原点位置,才能自动缩放后,在工作区中间显示引入的图纸。 笔记 将dwg图纸拖到SW中

react笔记 8-17 属性绑定 class绑定 引入图片 循环遍历

1、绑定属性 constructor(){super()this.state={name:"张三",title:'我是一个title'}}render() {return (<div><div>aaaaaaa{this.state.name}<div title={this.state.title}>我是一个title</div></div></div>)} 绑定属性直接使用花括号{}   注

Python简单入门教程helloworld

Python 学习资源 推荐书籍: Python核心编程(第二版) (强烈推荐,建议有一定基础的看,或者看完简明Python教程再看) Python 基础教程 第二版 (入门,没有核心编程好,但也不错) 编写高质量代码:改善Python程序的91个建议 (进阶,有一定基础再看) 书籍下载: Python 教程(部分内容来源于网络, 历时一年多总结整理的,给刚刚入门的

YOLOv8改进实战 | 注意力篇 | 引入CVPR2024 PKINet 上下文锚点注意力CAAttention

YOLOv8专栏导航:点击此处跳转 前言 YOLOv8 是由 YOLOv5 的发布者 Ultralytics 发布的最新版本的 YOLO。它可用于对象检测、分割、分类任务以及大型数据集的学习,并且可以在包括 CPU 和 GPU 在内的各种硬件上执行。 YOLOv8 是一种尖端的、最先进的 (SOTA) 模型,它建立在以前成功的 YOLO 版本的基础上,并引入了新的功能和改进,以

【超级干货】2天速成PyTorch深度学习入门教程,缓解研究生焦虑

3、cnn基础 卷积神经网络 输入层 —输入图片矩阵 输入层一般是 RGB 图像或单通道的灰度图像,图片像素值在[0,255],可以用矩阵表示图片 卷积层 —特征提取 人通过特征进行图像识别,根据左图直的笔画判断X,右图曲的笔画判断圆 卷积操作 激活层 —加强特征 池化层 —压缩数据 全连接层 —进行分类 输出层 —输出分类概率 4、基于LeNet