fortran第二章.docx

上传人:b****1 文档编号:2417674 上传时间:2022-10-29 格式:DOCX 页数:24 大小:257.05KB
下载 相关 举报
fortran第二章.docx_第1页
第1页 / 共24页
fortran第二章.docx_第2页
第2页 / 共24页
fortran第二章.docx_第3页
第3页 / 共24页
fortran第二章.docx_第4页
第4页 / 共24页
fortran第二章.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

fortran第二章.docx

《fortran第二章.docx》由会员分享,可在线阅读,更多相关《fortran第二章.docx(24页珍藏版)》请在冰豆网上搜索。

fortran第二章.docx

fortran第二章

第二章

1.

PROGRAMMAIN

IMPLICITNONE

REALA,B,C,D

REAL,PARAMETER:

:

PI=3.1415926/180

PRINT*,"PLEASEINPUTA,B,C"

READ*,A,B,C

D=SIN(ABS(A+B)*PI)/SQRT(COS(ABS(A)*PI+ABS(B)*PI))+TAN(C*PI)

PRINT*,"D=",D

ENDPROGRAMMAIN

2.

PROGRAMMAIN

IMPLICITNONE

REAL:

:

R=6.4,H=5,L,S,SS,VS,SH,VH

REAL,PARAMETER:

:

PI=3.1415926

L=2*PI*R

S=PI*R**2

SS=4*PI*R**2

VS=(4.0/3.0)*PI*R**3

VH=S*H

SH=2*S+L*H

PRINT*,"圆周长为",L

PRINT*,"圆面积为",S

PRINT*,"圆球表面积为",SS

PRINT*,"圆球的体积为",VS

PRINT*,"圆柱的表面积为",SH

PRINT*,"圆柱的体积为",VH

ENDPROGRAMMAIN

3.

PROGRAMMAIN

IMPLICITNONE

REALA,B,C,D,E

PRINT*,"请输入三个小数"

READ*,A,B,C

PRINT*,"A=",A,"B=",B,"C=",C

D=A+B+C

PRINT*,"D=",D

E=INT(D)

IF(D-E>=0.5)THEN

E=INT(D)+1

ENDIF

PRINT*,"四舍五入后为",E

ENDPROGRAMMAIN

4.

PROGRAMMAIN

IMPLICITNONE

REAL:

:

L1=10,L2=20,L3=18,L4=15,L5=21,L6=14,L7=30,L8=36,L9=28,S1,S2,S3,S4,AREA1,AREA2,AREA3,AREA4,AREA

S1=(L3+L7+L4)/2

AREA1=SQRT(S1*(S1-L3)*(S1-L4)*(S1-L7))

S2=(L7+L2+L8)/2

AREA2=SQRT(S2*(S2-L7)*(S2-L2)*(S2-L8))

S3=(L8+L1+L9)/2

AREA3=SQRT(S3*(S3-L8)*(S3-L9)*(S3-L1))

S4=(L5+L6+L9)/2

AREA4=SQRT(S4*(S4-L9)*(S4-L6)*(S4-L5))

AREA=AREA1+AREA2+AREA3+AREA4

PRINT*,"六边形的面积为",AREA

ENDPROGRAMMAIN

5.

PROGRAMMAIN

IMPLICITNONE

INTEGERA,B,C,D,E

PRINT*,"请输入一个四位十进制整数"

READ*,E

A=MOD(E,10)

B=MOD(E-A,100)/10

C=MOD(E-A-10*B,1000)/100

D=(E-A-10*B-100*C)/1000

WRITE(*,"('该整数个位,十位,百位,千位分别为:

',I2,I2,I2,I2)"),A,B,C,D

ENDPROGRAMMAIN

6.

PROGRAMMAIN

IMPLICITNONE

REALA,B

PRINT*,"请输入原成绩"

READ*,A

IF(A<0)THEN

PRINT*,"输入错误"

STOP

ENDIF

PRINT*,"调整成绩前成绩为:

",A

B=SQRT(A)+10

PRINT*,"调整后的成绩为:

",B

ENDPROGRAMMAIN

第三章

1.

PROGRAMMAIN

IMPLICITNONE

REAL:

:

S,W1=0.03,W2=0.10,W3=0.15,T

PRINT*,"请输入工资数"

READ*,S

IF(S<0)THEN

PRINT*,"输入错误"

STOP

ELSEIF(S<=1000)THEN

T=S*W1\

ELSEIF(S<=5000)THEN

T=1000*W1+(S-1000)*W2

ELSE

T=1000*W1+4000*W2+(S-5000)*W3

ENDIF

PRINT*,"该员工应交纳的税金为:

",T

ENDPROGRAMMAIN

2.

PROGRAMMAIN

IMPLICITNONE

CHARACTER(LEN=6)A,B

PRINT*,"请输入星期几"

READ*,A

IF(A=='星期一'.OR.A=='星期四')THEN

B='新闻'

ELSEIF(A=='星期二'.OR.A=='星期五')THEN

B='电视剧'

ELSEIF(A=='星期三'.OR.A=='星期六')THEN

B='卡通片'

ELSEIF(A=='星期日')THEN

B='电影'

ELSE

PRINT*,'输入错误,程序结束'

STOP

ENDIF

PRINT*,A,'的节目为',B

ENDPROGRAMMAIN

3.

PROGRAMMAIN

IMPLICITNONE

REAL:

:

S,T

INTEGERAGE

PRINT*,'请输入该员工的年龄'

READ*,AGE

PRINT*,'请输入该员工的工资'

READ*,S

IF(AGE<=0)THEN

PRINT*,'输入年龄错误'

STOP

ELSEIF(AGE<50)THEN

IF(S<0)THEN

PRINT*,"输入收入错误"

STOP

ELSEIF(S<=1000)THEN

T=S*0.03

ELSEIF(S<=5000)THEN

T=1000*0.03+(S-1000)*0.10

ELSE

T=1000*0.03+4000*0.10+(S-5000)*0.15

ENDIF

ELSE

IF(S<0)THEN

PRINT*,'输入收入错误'

STOP

ELSEIF(S<1000)THEN

T=S*0.05

ELSEIF(S<5000)THEN

T=1000*0.05+(S-1000)*0.07

ELSE

T=1000*0.05+4000*0.07+(S-5000)*0.10

ENDIF

ENDIF

PRINT*,'年龄为',AGE,'月收入为',S,'元的员工应缴纳的税为:

',T,'元'

ENDPROGRAMMAIN

4.

PROGRAMMAIN

IMPLICITNONE

INTEGERYEAR

LOGICALLEAPYEAR

PRINT*,'请输入年份'

READ*,YEAR

IF(MOD(YEAR,100)==0)THEN

IF(MOD(YEAR,400)==0)THEN

LEAPYEAR=.TRUE.

ELSE

LEAPYEAR=.FALSE.

ENDIF

ELSE

IF(MOD(YEAR,4)==0)THEN

LEAPYEAR=.TRUE.

ENDIF

ENDIF

IF(LEAPYEAR)THEN

PRINT*,YEAR,'年有366天'

ELSE

PRINT*,YEAR,'年有365天'

ENDIF

ENDPROGRAMMAIN

5.

PROGRAMMAIN

IMPLICITNONE

INTEGERI

REALA,B,C,D,TEMP

PRINT*,'请输入四个数'

READ*,A,B,C,D

IF(A

TEMP=B

B=A

A=TEMP

ENDIF

IF(A

TEMP=C

C=A

A=TEMP

ENDIF

IF(A

TEMP=D

D=A

A=TEMP

ENDIF

IF(D>B)THEN

TEMP=D

D=B

B=TEMP

ENDIF

IF(D>C)THEN

TEMP=D

D=C

C=TEMP

ENDIF

IF(B>C)THEN

PRINT*,'四个数由大到小为',A,B,C,D

ELSE

PRINT*,'四个数由大到小为',A,C,B,D

ENDIF

ENDPROGRAMMAIN

6.

PROGRAMMAIN

IMPLICITNONE

INTEGERA,I

I=2

PRINT*,'请输入一个正整数'

READ*,A

IF(A==1.OR.A==2)THEN

PRINT*,'这个正整数是素数'

ENDIF

DOI=2,A-1

IF(MOD(A,I)==0)THEN

PRINT*,'这个正整数不是素数'

STOP

ENDIF

ENDDO

PRINT*,'这个正整数是素数'

ENDPROGRAMMAIN

7.PROGRAMMAIN

IMPLICITNONE

LOGICAL:

:

FLAG=.TRUE.

INTEGER:

:

I=4,J=1,N=0

DOI=4,1000,2

DOJ=1,I/2,2

CALLTEST(J,FLAG)

IF(FLAG)THEN

CALLTEST(I-J,FLAG)

IF(FLAG)THEN

PRINT*,I,"=",J,"+",I-J

N=N+1

ENDIF

ENDIF

ENDDO

PRINT*,I,'有',n,'种分解方法'

N=0

ENDDO

CONTAINS

SUBROUTINETEST(K,F)

INTEGERK,I

LOGICAL:

:

F

F=.TRUE.

DOI=2,K-1

IF(MOD(K,I)==0)THEN

F=.FALSE.

EXIT

ENDIF

ENDDO

ENDSUBROUTINE

ENDPROGRAMMAIN

8.

PROGRAMMAIN

IMPLICITNONE

INTEGERM

INTEGER:

:

I=2

PRINT*,'请输入一个正整数'

READ*,M

WRITE(*,"('=1',\)")

DOWHILE(I<=M)

IF(MOD(M,I)==0)THEN

WRITE(*,"('X',I3,\)"),I

M=M/I

ENDIF

DOWHILE(MOD(M,I)==0)

M=M/I

WRITE(*,"('X',I3,\)"),I

ENDDO

I=I+1

ENDDO

IF(M/=1)THEN

WRITE(*,"('X',I3)")M

ELSE

WRITE(*,*)""

ENDIF

ENDPROGRAMMAIN

第四章

1.PROGRAMMAIN

IMPLICITNONE

INTEGERI

DOI=1,5

PRINT*,"Fortran"

ENDDO

ENDPROGRAMMAIN

2.PROGRAMMAIN

IMPLICITNONE

INTEGER:

:

I,SUM=0

DOI=1,99,2

SUM=SUM+I

ENDDO

PRINT*,"1+3+5+7+9+...+99=",SUM

ENDPROGRAMMAIN

3.PROGRAMMAIN

IMPLICITNONE

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1