当前位置:首页 > 互联网百科 > 正文内容

用fortran怎么编程?如何安装fortran

370SEO2年前 (2024-01-09)208

用fortran怎么编程?

用fortran怎么编程?

代码如下。算法见绿色字体注释。

用fortran怎么编程?

附:计算示例

用fortran怎么编程?

如何安装fortran

*** /步骤

1、到vitualbox的官网下载fortran最新版的安装包并安装。

2、然后在网上下载虚拟机文件,并解压。

3、打开Vitualbox,选择“新建”,设置虚拟电脑名称(个人喜好);

如何安装fortran

4、单击“下一步”,设置虚拟电脑内存;

如何安装fortran

5、下一步,设置虚拟硬盘,选择“使用已有的虚拟硬盘文件”,点击右边的文件夹图标,选择刚才在网盘下载的虚拟机文件,点击“打开”;最后,选择“创建”。选择创建的虚拟机,点击启动;

如何安装fortran
如何安装fortran
如何安装fortran

6、fortran开发工具就在桌面上,双击打开。依次点击File/New/File/Fortran Free Format Source File。有时候也要新建一个Project,这样就完成了。

如何安装fortran
如何安装fortran
如何安装fortran
如何安装fortran

下面分享相关内容的知识扩展:

fortran有没有哪个函数四舍五入的取整,2.9变成3,1.2变成2

ifix floor nint int ceiling (1.1 / 1.5 / -1.1 / -1.5)

ex: ifix 针对数据类型为real型

1.000 1.000 -1.000 -1.000 (正的向下取整,负的向上取整,都往0这个方向靠拢)

ex: floor 针对real数据类型

1.000 1.000 -2.000 -2.000 (向下取整)

ex: nint 针对real数据类型

1.000 2.000 -1.000 -2.000 (四舍五入)

ex: int 针对数据类型有real,integer,complex

1.000 1.000 -1.000 -1.000 (正的向下取整,负的向上取整,都往0这个方向靠拢)

ex: ceiling 针对real数据类型

2.000 2.000 -1.000 -1.000 (向上取整)

我是工科学生,想知道为什么让我们学fortran,而不学其他的c或c++之类的语言,他们各自有什么特点?

rt
对于工科学生来说学习一种语言主要是用来编制程序进行科学运算的。Fortran语法简明且严谨,易学,更大特性是接近数学公式的自然描述,可以直接对矩阵和复数进行运算,在计算机里具有很高的执行效率。因此Fortran非常适合科学计算,至今仍然是最主要的科学计算语言,你由它的全称:Formula Translator就可以看出它最初本身就是针对科学计算开发的。现在很多的商用工程软件,如著名的有限元软件MSC.Nastran就是用Fortran编制的核心算法。
所以作为工科学生学好Fortran很有用,而C语言语法过于复杂(它实际是中级语言,更接近于底层,而Fortran是高级语言),不易掌握,运算效率不如Fortran,不如Fortran适于科学计算。
其实各种语言的语法都大同小异,只要掌握了一种,再学习其它语言就很容易了,而且语言只是一种工具,更重要的是算法,对于你来说就是你的专业知识。
同时,在科学计算时具体使用哪一种语言也没有规定,应根据需要和问题的特点选取合适的语言,经常会多种语言混编。C和C++,或者C#都是很好的语言,掌握好也很有用处。
现在还有一种更为高级的语言(有人甚至将其成为软件)MATLAB,非常方便好用(几乎是傻瓜式的),是专门针对科学计算开发的,目前在学术界运用非常广,只是运行速度相对慢一些。建议你也学学,非常有用。

PS:我学机械的,主要使用MATLAB和Fortran,偶尔使用C++。

fortran语言,能否帮我解读一下这个程序,更好每行都有注释,非常感谢

PROGRAM MAIN
DOUBLE PRECISION A,AA,XX,XX1,XX2,TYY0,TYX0,YY0,YX0
DIMENSION A(101),AA(101)
OPEN(10,FILE='OUTPUT.TXT',STATUS='UNKNOWN')
WRITE(*,*)'此程序用于求解一元N次方程最接近给定的X0的一个解。'
WRITE(*,*)'请输入N(≤100,0=EXIT):'
2 READ(*,*)N
IF(N.EQ.0) THEN
GOTO 10000
END IF
IF((N.Lt.0).OR.(N.GT.100)) THEN
WRITE(*,*)'请重新输入N(≤100,0=EXIT):'
GOTO 2
ENDIF
WRITE(*,*)'请依次输入各项系数AN~A0(高次幂~低次幂)。'
WRITE(*,*)'每个数据后回车:'
DO 5 I=1,N+1
READ(*,*) A(I)
5 CONTINUE

IF(MOD(N,2).EQ.0) THEN
WRITE(*,*)' '
WRITE(*,*)'对N为偶数的情况,请仔细校核。'
WRITE(*,*)' '
END IF

WRITE(*,*)'请输入X0:'
READ(*,*) X0

DO 10 I=1,N
AA(I)=(N-I+1)*A(I)
10 CONTINUE

ICOUNT=0
XX=X0

DO 30 I=1,1000000

ICOUNT=ICOUNT+1
YY0=0.
YX0=0.

DO 40 J=1,N
TYY0=A(J)*(XX**(N-J+1))
YY0=YY0+TYY0
40 CONTINUE
YY0=YY0+A(N+1)

DO 50 K=1,N-1
TYX0=AA(K)*(XX**(N-K))
YX0=YX0+TYX0
50 CONTINUE
YX0=YX0+AA(N)

IF(YX0.EQ.0) THEN
XX=XX+1
ICOUNT=ICOUNT-1
GOTO 30
END IF

IF(MOD(I,2).EQ.1)THEN
XX1=XX-YY0/YX0
XX=XX1
ELSE
XX2=XX-YY0/YX0
XX=XX2
END IF

XX=.5*((XX1+XX2)-(-1)**I*(XX1-XX2))

IF(ICOUNT.GE.1000) THEN
WRITE(*,*)' '
WRITE(*,*)'此方程无实数解。'
GOTO 10000
END IF

IF((ABS(XX2-XX1).LE.1.D-15).AND.(ICOUNT.GT.1)) THEN
IF((ABS(XX).GT.1.D-6).AND.(ABS(XX).LT.9.D6)) THEN
GOTO 1000
ELSE
GOTO 1001
END IF
END IF

30 CONTINUE

1000 WRITE(*,100)XX
GOTO 1010
1001 WRITE(*,101)XX
100 FORMAT(8X,'X=',F25.6)
101 FORMAT(8X,'X=',D25.6)
1010 WRITE(*,*)' '
WRITE(*,*)'本程序计算结果仅供参考。'
WRITE(*,*)' '

PAUSE
10000 STOP
END
PROGRAM MAIN !主程序
DOUBLE PRECISION A,AA,XX,XX1,XX2,TYY0,TYX0,YY0,YX0!定义双精度变量
DIMENSION A(101),AA(101)!定义数组
OPEN(10,FILE='OUTPUT.TXT',STATUS='UNKNOWN')!建立输出文件通道
WRITE(*,*)'此程序用于求解一元N次方程最接近给定的X0的一个解。'!屏幕提示
WRITE(*,*)'请输入N(≤100,0=EXIT):'!屏幕提示
2 READ(*,*)N !从屏幕读取N
IF(N.EQ.0) THEN !判定如果N=0则程序转去标识符号10000处
GOTO 10000
END IF
IF((N.Lt.0).OR.(N.GT.100)) THEN !判定如果N小于0或N大于100 则屏幕提示重新输入N
WRITE(*,*)'请重新输入N(≤100,0=EXIT):'
GOTO 2 !转到 标识2句处执行
ENDIF
WRITE(*,*)'请依次输入各项系数AN~A0(高次幂~低次幂)。'屏幕提示
WRITE(*,*)'每个数据后回车:'屏幕提示
DO 5 I=1,N+1 输入数组A(I)
READ(*,*) A(I)
5 CONTINUE

IF(MOD(N,2).EQ.0) THEN
WRITE(*,*)' '
WRITE(*,*)'对N为偶数的情况,请仔细校核。'
WRITE(*,*)' '
END IF

WRITE(*,*)'请输入X0:'
READ(*,*) X0

DO 10 I=1,N 输入数组AA(I)
AA(I)=(N-I+1)*A(I)
10 CONTINUE

ICOUNT=0 给ICOUNT赋值
XX=X0给XX赋值

DO 30 I=1,1000000 对I循环从1到10000000

ICOUNT=ICOUNT+1 每循环一次计数加一
YY0=0.给YY0赋值
YX0=0.给YX0赋值

DO 40 J=1,N
TYY0=A(J)*(XX**(N-J+1)) 计算TYY0,YY0
YY0=YY0+TYY0
40 CONTINUE
YY0=YY0+A(N+1) 计算YY0

DO 50 K=1,N-1 套另一个循环 对K循环从1到N-1
TYX0=AA(K)*(XX**(N-K))
YX0=YX0+TYX0
50 CONTINUE
YX0=YX0+AA(N) 计算YX0

IF(YX0.EQ.0) THEN 判别 YX0如果=0 则
XX=XX+1 XX加1
ICOUNT=ICOUNT-1 计数减1
GOTO 30 结束I这一步大循环开始I的下一步循环
END IF

IF(MOD(I,2).EQ.1)THEN 判别。。。
XX1=XX-YY0/YX0
XX=XX1
ELSE
XX2=XX-YY0/YX0
XX=XX2
END IF

XX=.5*((XX1+XX2)-(-1)**I*(XX1-XX2)) 计算赋值

IF(ICOUNT.GE.1000) THEN 判别 如果计数大于等于1000则结束程序
WRITE(*,*)' ' 屏幕输出提示
WRITE(*,*)'此方程无实数解。'屏幕输出提示
GOTO 10000 则结束程序
END IF

IF((ABS(XX2-XX1).LE.1.D-15).AND.(ICOUNT.GT.1)) THEN
IF((ABS(XX).GT.1.D-6).AND.(ABS(XX).LT.9.D6)) THEN
GOTO 1000
ELSE
GOTO 1001
END IF
END IF

30 CONTINUE

1000 WRITE(*,100)XX
GOTO 1010
1001 WRITE(*,101)XX
100 FORMAT(8X,'X=',F25.6)
101 FORMAT(8X,'X=',D25.6)
1010 WRITE(*,*)' '
WRITE(*,*)'本程序计算结果仅供参考。'
WRITE(*,*)' '

PAUSE
10000 STOP
END

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文链接:http://www.370seo.com/14718.html

“用fortran怎么编程?如何安装fortran” 的相关文章

求动漫男生头像 要帅气一些的(动漫头像 我是坏人 男生的 跪求)

求动漫男生头像 要帅气一些的(动漫头像 我是坏人 男生的 跪求)

本文共计1619个文字,预计阅读时间需要5分15秒,由作者编辑整理创作于2023年08月09日 12点12分33秒。求动漫男生头像 要帅气一些的 内容如下:看的QQ动漫男头像,如下图试试。看的QQ动漫男头像,如下图试试。看的QQ动漫男头像,如下图试试。看的QQ动漫男头像,如下图试试。看的QQ动漫男头...

哪个星座的男生更看重一个人的样貌?哪个星座男生受欢迎

哪个星座的男生更看重一个人的样貌?哪个星座男生受欢迎

本文共计4955个文字,预计阅读时间需要16分22秒,由作者编辑整理创作于2023年08月09日 22点50分49秒。哪个星座的男生更看重一个人的样貌? 一个人的颜值是不是真的很重要,到底是哪个星座的男生更看重呢? 每一个人都有自己的一个择偶标准,有的人喜欢性格好的,有的人喜欢颜值好的,毕竟长得好...

哪些星座男生的爱情最难消受(哪些星座总是爱哭穷,其实很能存钱?)

哪些星座男生的爱情最难消受(哪些星座总是爱哭穷,其实很能存钱?)

本文共计3235个文字,预计阅读时间需要10分38秒,由作者编辑整理创作于2023年08月11日 13点41分16秒。哪些星座男生的爱情最难消受   第一名:天蝎男   天蝎座的男人具有让其他星座男生自愧不如的性感,他拥有完美的体魄、忧郁的眼神、性感的嘴唇……很多女人见了这样的极品男人都会忍...

关于及物动词与不及物动词的缩写(不及物动词的缩写形式有哪些?)

关于及物动词与不及物动词的缩写(不及物动词的缩写形式有哪些?)

本文共计958个文字,预计阅读时间需要3分2秒,由作者编辑整理创作于2023年08月12日 13点00分18秒。关于及物动词与不及物动词的缩写 vt及物动词vi不及物动词肯定是你印刷错误,我上学的书本都是vt,vi,老师也是这么写的。不及物动词的缩写形式有哪些? 不及物动词缩写形式分别为vt和v...

老公的100种叫法有哪些?老公老婆的100种叫法?

老公的100种叫法有哪些?老公老婆的100种叫法?

本文共计3404个文字,预计阅读时间需要11分12秒,由作者编辑整理创作于2023年08月13日 11点01分51秒。老公的100种叫法有哪些? 1、良人古时叫丈夫“良人”,好听吧!从中我们不难看到古代丈夫们光辉高大的形象,估计那时的男人们是说有贪污腐败,泡小蜜的吧。古诗里就有“妾家高楼连苑起,良人...

莫西莫西是什么意思 莫西莫西的解释(莫西莫西是什么意思勒)

莫西莫西是什么意思 莫西莫西的解释(莫西莫西是什么意思勒)

本文共计2739个文字,预计阅读时间需要8分58秒,由作者编辑整理创作于2023年08月14日 05点13分12秒。莫西莫西是什么意思 莫西莫西的解释 1、莫西莫西,日语电话用语,相当于中文的“喂”、“你好”。 2、很少有人会在第一句话就说“莫西、莫西”的。只有在接听电话时,听不到声音或者...