FORTRAN 90实验

2019-04-23 15:08

三、选择结构程序设计

1.开机;进入Fortran PowerStation4.0集成工作环境,了解工作环境及其菜单的使用,输入如下FORTRAN90源程序,并以A1.F90存盘。

PROGRAM EX1 IMPLICIT NONE PRINT *,'2+3=',2+3

PRINT *,'This is a program!' END PROGRAM EX1

编译、链接、运行后,结果是:2+3=5 This is a program!

2.输入并调试以下程序,查看运行结果。 PROGRAM EX2 IMPLICIT NONE INTEGER::A,B,C READ *,A,B C=A+B

PRINT *,'A+B=',C END PROGRAM EX2

运行时,输入2,3↙,则结果是:2+3=5 This is a program! 3.程序设计

2⑴ 已知一个球的半径,求它的表面积(4?R)、体积(432直径(2R)、周长(2?r)和面积(?R)。

?R3)及经过球心的横切面的

⑵求方程X2+3X-1=0的根

3.(1). (2)

PROGRAM EXAM3 PROGRAM EXAM4 IMPLICIT NONE IMPLICIT NONE REAL::R.H.C.S1.S2.S3.V.PI REAL::A.B.C

PI=3.1415926 X1=C-B+SQR+(B*B-Q*A*C)/(2*A) C=2*PI*R X2=C-B-SQR+(B*B-Q*A*C)/(2*A) SI=PI*R*R PRINI *X1*X2

S2=2*R END PROGRAM EXAM4 S3=R*PI*R*R 输入M:1,3,-1

V=4/3*RI*R*R*R 输出:3.027757E---0.1---3.302776 PRINT*,S1,S2,S3,V,C END PROGRAM EXAM3 输入M:3

输出:28.274330 6.000000 113.097300 84.823000

18.849560

实验4 选择结构程序设计

三、实验内容

1.运行下面程序: PROGRAM EXAM1

IMPLICIT NONE INTEGER::A,B,C A=5 B=3

C=A.AND.B PRINT *,C

END PROGRAM EXAM1 结果为:\

3.编写程序:

?0⑴ 编写计算分段函数:y??x?e2??1?2.运行下面程序: PROGRAM EXAM2

LOGICAL::L1,L2,L3 L1=.TRUE. L2=2>3

L3=.NOT.L2.AND.L1 PRINT *,L1,L2,L3

END PROGRAM EXAM2 结果为:\

(x??1)(?1?x?1) (x?1)

⑵ 由键盘输入学生成绩,要求输出该成绩的等级A, B, C, D, E。其中60分以下为E;60~70分为D;70~80分为C;80~90分为B;90~100分为A。要求分别用块IF和块SELECT CASE语句编写。

⑶求一元二次方程ax2?bx?c?0的根。

(2)、PROGRAM EXAM 2A

IMPLICIF NONE READ*,SCORE

SELECT(ASE(INICSCORE)) CASE(90:100) PRINT*,'A' CASE (80:89) PRINT*'B' CASE(70:79) PRINT*'C' CASE(60:69) PRINT*'D' CASE(0:59) PRINT*'E'

END SELECT

END PROGRAM EXAM 4A 输入65 输出D

3、(1)PRPGRAM EXAM1 IMPLICIF NONE REAL::X.Y READ*,X

IF(X<=-1) THEN Y=0

ELSE IF(X<1) THEN Y=1

END IF PRINT *,Y

END PROGRAM EXAM3 输入-1 输出0.000000E+00 输入1 输出1.000000

法2:PROGRAM EXAM 2B

IMPLICIT NONE INTEGER::SCORE

CHARACTER(LEN=1)::GRADE READ*,SCORE

IF(SCORE>=90)THEN GRADE='A'

ELSE IF (SCORE>=80) THEN GRADE='A'

ELSE IF(SCORE>=70) THEN GRADE='C'

ELSE IF(SCORE>=60) THEN GRADE='D' ELSE

GRADE='E' END IF

PRINT*,'SCORE=;

SCORE,GRADE=;GRADE

END PROGRAM EXAM 4B

输入SCORE=79 输出GRADE=C

(3) PROGRAM EXAM3 IMPLICIT NONE

REAL::A,B,C,D,X1,X2

READ*A,B,C D=B*B-4.0*A*C

IF(ABSCD)

PRINT*,'X1=X2='X1 ELSE

IF(D>0,0) THEN

X1=(-B+SQRTCD))/(2.0*A)

X1=(-B-SQRTCD))/(2.0*A) PRINT*,'X1=1',X1'X2='X2 ELSE

PRINT*,'X1=', -B/(2.0*A),'+',SQRT(ABSCD1)/(2.0*A),'I' PRINT,'X1=', -B/(2.0*A),'-',SQRT(ABSCD1)/(2.0*A),'I' END IF END IF

END PROGRAM EXAM3 输入 2,5,3

输出X1=-1.000000 X2=-1.500000

实验报告5

1.下面程序功能是求正整数M,N的最小公倍数。在标注行有错,请改正。 PROGRAM EXAMPLE IMPLICIT NONE INTEGER::M,N,K,T,I READ*,M,N I=1

IF (M

DO WHILE ( MOD(K,N) =0) !<==ERROR2 I=I+1

K=K*I !<==ERROR3

END DO

PRINT *,K

ERROR1处正确的语句是:IF(M

2.下面程序功能是判断一个三位正整数N是否是素数,若是则输出“YES”,否则输出“NO”。

在标注行有错,请改正。 程序如下:

PROGRAM EXAM IMPLICIT NONE INTEGER::N,I LOGICAL::L L=.TRUE.

READ(*,'(F3)') N !<==ERROR1 DO I=2,N/2

IF(MOD(N,I)=0) !<==ERROR2 PRINT *,'NO' L=.FALSE. EXIT END IF END DO

IF(L=.TRUE.) PRINT *,'YES' !<==ERROR3 END

ERROR1处正确的语句是:I3

ERROR2处正确的语句是:IF(MOD(N,I)= =0) THEN ERROR3处正确的语句是:IF(L) PRINT *,'YES'

1) 输入两个正数M、N,求最大公约数和最小公倍数。 PROGRAM EXAM1 IMPLICIT NONE

INTEGER::M,N,R,Y,B READ*,M,N B=M*N DO

R=MOD(M,N) IF(R= =0) EXIT M=N;N=R END DO Y=N B=B/Y

PRINT ‘(1X,”最大公约数是:”,I6)’,Y PRINT ‘(1X,”最小公倍数是:”,I6)’,B END PROGRAM EXAM1

(?1)/( N*( N+1 ) )的值,⑵ 求S=1-1/( 1*2 )+1/( 2*3 )+??+直到某项绝对值小于10为

PROGRAM EXAM2

IMPLICIT NONE INTEGER::N=0,F=1 REAL::S=0.0,T=1.0

DO WHILE(ABS(T)>=1E-5) N=N+1 F=F*(-1) S=S+T

T=1.0/(N*(N+1)) T=T*F END DO

PRINT*,”S=”,S

END PROGRAM EXAM2 运行结果 S=6.137006E-01

判断400到500之间的书是否为素数,并计算素数的个数 PROGRAM EXAM3 IMPLICIT NONE INTEGER::I,J,N=0 DO I=400,500 DO J=2,I/2

IF(MOD(I,J)= =0) EXIT END DO

IF(J>I/2) N=-N+1 END DO

PRINT ‘(1X,“素数的个数为:”,I3)’,N END PROGRAM EXAM3 素数个数为17个

N?5


FORTRAN 90实验.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:大学经济学考试题及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: