了解fortran语言
最近看了一些文献,发现用了Fortran语言编程,并且还是近几年的,了解了之后才知道,其实Fortran已经慢慢没有人再用了,之所有还有一批人在用,极大可能是历史遗留问题吧。而这,也得从Fortran语言的历史说起,Fortran语言是上个世纪50年代IBM的工程师开发出来的,主要目的就是帮助计算,并且Fortran是第一个开发的高级语言,而我们常常用到的语言要小的多呢,比如C语言是1972年被开发的,C++在1983年有了第一个程序,java是在1995年诞生的。所以,对于老一辈的科研工作者,最早接触的语言就是Fortran了,并且一般情况下,通过Fortran可以很好的解决问题,并且如果要转到其他语言上,代码的重写是要花费大量时间的,所以他们也就不再愿意学习新的语言,这样,Fortran语言才用到了现在。又比如说,为什么腾讯后台用的是c++,阿里用的是java呢?主要原因也是历史遗留问题,公司业务代码已经写了数十万行,如果要用其他语言写,就要重新来写,会花费巨大的代价,并且一旦他们使用了原有的语言,那么他们就会不断在周边优化,很多我们认为的弊端在他们那里很有可能已经解决了,所以就没有切换语言的必要性了。
Fotran语言主要支持数值分析与科学计算、结构化程序设计、数组编程、模块化编程、泛型编程、超级计算机高性能计算、面向对象编程、并行编程等等。之前提到,Fortran语言是又IBM的约翰带领一个团队创建的,开始就是为科学计算开发额,之后才不断延伸和扩展为了一个高层次语言,最常用的版本是Fortran 77, Fortran 90 和 Fortran95。在Fortran77中添加了字符串作为一个独立的类型,Fortran 90添加了形形色色的线程,并支持数组处理。
如下是一个简单的Fortran程序:
program addNumbers ! This simple program adds two numbers
implicit none ! Type declarations
real :: a, b, result ! Executable statements
a = 12.0
b = 15.0
result = a + b
print *, 'The total is ', result end program addNumbers
如上所示,就是一段求解两数字之和的Fortran代码,结果如下:
The total is 27.0000000
可以看到,Fortran要以program开头,并且以end关键字结尾,另外,注释使用!,print可以在屏幕上输出数据, 代码行缩进,且Fortran是区分大写小的。
其他的语法其实都大同小异了。
参考文章:Fortran教程
了解fortran语言的更多相关文章
- 什么是fortran语言之fortran语言入门
Fortran源自于“公式翻译”(英语:FormulaTranslation)的缩写,是一种编程语言.它是世界上最早出现的计算机高级程序设计语言,广泛应用于科学和工程计算领域.FORTRAN语言以其特 ...
- fortran语言调用fortran写的dll
环境:vs2013+IVF 2011 有时候想把fortran写的常用的函数编译为DLL,以供不同的fortran exe调用,这时候应该怎样做呢?[参考 彭国伦老师 fortran95 程序设计 书 ...
- 第一周—Fortran语言学习
使用教材:Fortran95程序设计[彭国伦] 第二章 编译器的使用 编译结果的好坏 1.翻译正确 2.执行文件的运行效率 3.翻译出来的执行码的长短 4.编译过程花费的时间 5.编译器提供Debug ...
- Fortran调用C语言小计
先简单记录下问题,以后再给续解决方案 1,关于fortran中module的使用 2,没有参数可以正常调用,当需要传递参数时,由于两者语言的差异,字符串结束符号不同,应该注意 3,关于调用C函数时,调 ...
- [转载:]C#与Fortran混合编程之本地调用Fortran动态链接库
前言 C#发展到现在,已是一门相当完善的语言,他基于C语言风格,演化于C++.并依靠强大的.NET底层框架.C#可以用来快速构建桌面及Web应用.然而在我们的实际工作中,尽管C#已经非常完善,但还是不 ...
- 【C语言】C语言简介
目录: 1. [什么是C语言?] 2. [C语言历史] 3. [C语言标准] 4. [C语言特点] 1. 什么事C语言? · C语言是一门高级编程语言,用于人与计算机之间的沟通,就如同人与人之间沟通时 ...
- C/C++学习----C语言简介
[开发环境] 物理机版本:Win 7 旗舰版(64位) IDE版本:Visual Studio 2013简体中文旗舰版(cn_visual_studio_ultimate_2013_with_upda ...
- 要心中有“数”——C语言初学者代码中的常见错误与瑕疵(8)
在 C语言初学者代码中的常见错误与瑕疵(7) 中,我给出的重构代码中存在BUG.这个BUG是在飞鸟_Asuka网友指出“是不是时间复杂度比较大”,并说他“第一眼看到我就想把它当成一个数学问题来做”之后 ...
- C语言与MATLAB接口 编程与实例 李传军编着
罗列一下以前自己学习C语言与MATLAB混编的笔记,顺便复习一遍. <C语言与MATLAB接口 编程与实例 李传军编着>(未看完,目前看到P106) 目录P4-8 ************ ...
随机推荐
- 内联/块级元素的宽高及margin/padding的说明 |||||| 为何img、input等内联元素可以设置宽、高
1,内联非替换元素设置宽高是无效的,设置margin时,左右有效,上下无效.设置padding时,左右有效,而上下padding比较奇葩,内联非替换元素的上下padding会在元素内容盒不动的情况下上 ...
- oracle学习笔记一:用户管理(2)创建删除用户
本文主要介绍如何创建和删除用户,当然里面牵涉很多知识,慢慢道来. 1,创建用户 需求:假设你是oracle管理员,当一个同事入职,你需要分配给一个账号. 创建用户,一般需要有相应权限的用户才可以创建用 ...
- Nios内部RAM固化配置
选择BSP Editor->Settings ->Advanced->hal->linker,然后勾选allow_code_at_reset.当然如果勾选enable_alt_ ...
- Window下同一台服务器部署多个tomcat服务简易教程
第一步:解压两份tomact 分别为tomactserver01和tomactserver02文件夹 第二.配置tomact的环境变量 分别为 第三步:分别修改tomact的bin目录下的catali ...
- C#-VS程序集
程序集即代码组,可以是单个文件或多个文件,按一个整体部署,但可指定自身调用其他程序集的版本. 推出原因 为解决dll地狱而推出,也可解决其他问题.dll地狱,a应用使用dll版本1,b应用使用dll版 ...
- java基础-day21
第10天 IO流 今日内容介绍 u 标准输入流 & 转换流 & 打印流 u 对象操作流 u Properties集合 第1章 标准输入流 & 转换流 & 打 ...
- python_运算符与表达式
运算符与表达式 python运算符 运算符 功能说明 + 算术加法,列表.元组.字符串合并与连接,正号 - 算术减法,集合差集,相反数 * 算术乘法,序列重复 / 真除法 // 求整商,但如果操作数中 ...
- 关于cxGrid的排序问题
当然,这个 dcoAnsiSort也很重要,否者不按拼音排序 1.首先需要开启 Views的 OptionsCustomize.ColumnSorting 2.再设置每列的这个 Sorting 3. ...
- Latex 表格(跨行、跨列、背景加灰)new
一. 效果如图 二.代码如下 1. 首部增加宏包: \usepackage{multirow} 2. 正文部分增加: \begin{table} \centering \caption{Suspici ...
- 用XPath查找HTML节点或元素
更新版以后会在我的新博客更新,请您移步 https://blog.clso.fun/posts/2019-03-03/46.html 虽然JQ和JS都能很方便的查找包含了ID及类名的元素,但某些情况下 ...