Fortran中包含有算术运算符、关系运算符和逻辑运算符三种运算符。各类运算符如下表所示:

算数运算符

功能 算符 示范
加法 + a = b + c
减法 - a = b - c
乘法 * a = b * c
除法 / a = b / c
乘方 ** a = b**2

算符优先级是:乘方>乘法和除法>加法和减法。

关系运算符

功能 算符 F77 示范
恒等 == .eq. a==b
大于 > .gt. a>b
大于等于 >= .ge. a>=b
小于 < .lt. a>=b
小于等于 <= .le. a<=b
不等于 /= .ne. a/=b

其中F77中表示的是老标准中的写法,都是英文单词的首字母组成的。

逻辑运算符

功能 算符 示范
.not. .not. b
.and. a .and. b
.or. a .or. b

算符优先级:非>并和或。注意不要落下算符两边的点。

写在最后

我似乎一直没给什么具体的例子,大多仅仅陈列了Fortran中的语法(当然,之所以这样,主要原因是因为我比较懒…)。我想说明的是,计算机语言是需要多加练习的,需要手动去写代码,利用输出函数write和print函数去查看结果(相当于一个Debug的过程)。只有真正写了,才能避免一些其中的坑(例如配置编译环境的过程中也可以学到很多)。语言学习不能只看,也不能只是将代码复制粘贴到编辑器里去运行,这种方式忘得快,而且也发现不了自己特有的问题。基础的东西了解完之后,就可以面向搜索引擎(Google&StackOverflow)和通过查官方手册的方式去编程了。有时”走弯路”可以学到更多(毕竟大神们知道多的可能就是因为他们碰到过更多的坑吧)。就像一开始我也傻傻分不清语言标准、编译器和编辑器等东西的联系和区别,虽然现在看起来很好笑。

计算机语言无非就是几种逻辑结构的组合(顺序,选择,循环),外加各种语言中的特性(例如Fortran中的module,再例如Python中有很多好用的库,不需要重复造轮子)。因为我相信大多数人接触到的第一个语言是C语言,只要还有点印象,上手Fortran会很快。