顺序结构

 

program ex06_02 
implicit none    !希望后面用到的变量,先声明后使用,并且取消I-N规则
real r11,r12,r13,r14,r15,total11,av11   !还没有学习到数组和循环,所以说对所用到的数据都要用变量来存放,即使是已知的数据要用到变量,后面要输出的数据也要用到变量,因此设计了26个变量来存放数据资料
real r21,r22,r23,r24,r25,total21,av21
real r31,r32,r33,r34,r35,total31,av31
real av1,av2,av3,av4,av5      !一般对于降水这些气象要素来说,我们在定义它们时用实型
write(*,"(28x,'5月 6月 7月 8月 9月')")   !有格式输出
write(*,"(1x,'输入江阴气象站五个月的雨:',\)") !\指光标从下一行开始不换行
read(*,*) r11,r12,r13,r14,r15
write(*,"(1x,'输入定波闸气象站五个月的雨量:',\)")
read(*,*) r21,r22,r23,r24,r25
write(*,"(1x,'输入肖山气象站五个月的雨量:',\)")
read(*,*)r31,r32,r33,r34,r35
! 100 format(F5.1,F5.1,F5.1,F5.1,F5.1,F5.1)  (原来可能想用,但是现在不想用,so把它设置为一个注释行)
total11=r11+r12+r13+r14+r15
av11=total11/5
total21=r21+r22+r23+r24+r25
av21=total21/5
total31=r31+r32+r33+r34+r35
av31=total31/5
av1=(r11+r21+r31)/3
av2=(r12+r22+r32)/3
av3=(r13+r23+r33)/3
av4=(r14+r24+r34)/3
av5=(r15+r25+r35)/3
write(*,"(26x,'5月 6月 7月 8月 9月 总雨量 平均雨量')")
write(*,200)'江阴气象站五个月的雨量:',r11,r12,r13,r14,r15,total11,av11
write(*,200)'定波闸气象站五个月的雨量:',r21,r22,r23,r24,r25,total21,av21
write(*,200)'肖山气象站五个月的雨量:',r31,r32,r33,r34,r35,total31,av31
200 format(1x,A22,5(F5.1,2x),F6.1,2x,F7.3)   !如果你要输出的变量形式同时有好几句输出都是要用同一个输出格式,那建议用format格式,如果仅仅是输出一次变量,就写到write*里面
Write(*,300)'5月',av1,'6月',av2,'7月',av3,'8月',av4,'9月',av5
300 format(1x,A4'平均雨量:',F7.3)
end

例题:

人体对气候条件感觉的舒适与否,首先取决于气温,其次湿度和风速等因素也起着重要作用。本次作业请根据给出的人体舒适度计算公式,计算2月23日,武汉,深圳,温州,北京,哈尔滨重点疫情城市的人体舒适度。计算结果建议采用有格式输出,第一行为城市名,第二行为各城市人体舒适度数值,数值保留小数点后一位。

 1、人体舒适度计算公式:

 

 其中:温度T设定为日平均气温,RH为相对湿度*100,V日平均风速

2、2月23日五个城市日平均气温、RH为相对湿度,V日平均风速:

 

武汉

深圳

温州

北京

哈尔滨

日平均气温

14.5

21.5

12.0

5.5

-7.0

相对湿度

47.%

45.%

42.%

29.%

58.%

日平均风速(m/s)

2.45

2.45

0.9

2.45

4.4

 

 

 

 

 

 

程序源码:

PROGRAM hello
IMPLICIT NONE
REAL T1,T2,T3,T4,T5 REAL R1,R2,R3,R4,R5
REAL V1,V2,V3,V4,V5
REAL I1,I2,I3,I4,I5
READ(*,*)T1,T2,T3,T4,T5
READ(*,*)R1,R2,R3,R4,R5
READ(*,*)V1,V2,V3,V4,V5
I1=(1.8*T1+32)-0.55*(1-R2/100)*(1.8*T1-26)-3.2*(V1**(1./2.))
I2=(1.8*T2+32)-0.55*(1-R2/100)*(1.8*T2-26)-3.2*(V2**(1./2.))
I3=(1.8*T3+32)-0.55*(1-R3/100)*(1.8*T3-26)-3.2*(V3**(1./2.))
I4=(1.8*T4+32)-0.55*(1-R4/100)*(1.8*T4-26)-3.2*(V4**(1./2.))
I5=(1.8*T5+32)-0.55*(1-R5/100)*(1.8*T5-26)-3.2*(V5**(1./2.))
WRITE(*,"(14X,'武汉 深圳 温州  北京  哈尔滨')")
WRITE(*,200)'舒适度:',I1,I2,I3,I4,I5
 200 FORMAT(1X,A22,5(F5.1,2X))
END

运行截图:

标准答案:

程序1:
program main
    implicit none
    real t1,t2,t3,t4,t5 
    real rh1,rh2,rh3,rh4,rh5
    real v1,v2,v3,v4,v5
    real ichb1,ichb2,ichb3,ichb4,ichb5
! 1-5依次为武汉,深圳,温州,北京,哈尔滨
    data t1,t2,t3,t4,t5/14.5,21.5,12.0,5.5,-7.0/ 
    data rh1,rh2,rh3,rh4,rh5/47.,45.,42.,29.,58./
    data v1,v2,v3,v4,v5/2.45,2.45,0.9,2.45,4.4/     
    
    ichb1=(1.8*t1+32.)-0.55*(1-rh1/100.)*(1.8*t1-26.)-3.2*sqrt(v1)
    ichb2=(1.8*t2+32.)-0.55*(1-rh2/100.)*(1.8*t2-26.)-3.2*sqrt(v2)  
    ichb3=(1.8*t3+32.)-0.55*(1-rh3/100.)*(1.8*t3-26.)-3.2*sqrt(v3) 
    ichb4=(1.8*t4+32.)-0.55*(1-rh4/100.)*(1.8*t4-26.)-3.2*sqrt(v4)
    ichb5=(1.8*t5+32.)-0.55*(1-rh5/100.)*(1.8*t5-26.)-3.2*sqrt(v5)
    write(*,'(8x,5a6)')'武汉 ','深圳 ','温州 ','北京 ','哈尔滨 '
    write(*,'(a6,1x,5f6.1)')'舒适度',ichb1,ichb2,ichb3,ichb4,ichb5  
    
End
 程序2:
program main
    implicit none
    real:: t1=14.5,t2=21.5,t3=12.0,t4=5.5,t5=-7.0 
    real:: rh1=47.,rh2=45.,rh3=42.,rh4=29.,rh5=58.
    real:: v1=2.45,v2=2.45,v3=0.9,v4=2.45,v5=4.4
    real ichb1,ichb2,ichb3,ichb4,ichb5
! 1-5依次为武汉,深圳,温州,北京,哈尔滨
    ichb1=(1.8*t1+32.)-0.55*(1-rh1/100.)*(1.8*t1-26.)-3.2*sqrt(v1)
    ichb2=(1.8*t2+32.)-0.55*(1-rh2/100.)*(1.8*t2-26.)-3.2*sqrt(v2)
    ichb3=(1.8*t3+32.)-0.55*(1-rh3/100.)*(1.8*t3-26.)-3.2*sqrt(v3)
    ichb4=(1.8*t4+32.)-0.55*(1-rh4/100.)*(1.8*t4-26.)-3.2*sqrt(v4)
    ichb5=(1.8*t5+32.)-0.55*(1-rh5/100.)*(1.8*t5-26.)-3.2*sqrt(v5)
    write(*,'(8x,5a6)')'武汉 ','深圳 ','温州 ','北京 ','哈尔滨 '
    write(*,'(a6,1x,5f6.1)')'舒适度',ichb1,ichb2,ichb3,ichb4,ichb5  
    end

          

 

posted @ 2020-03-16 09:37  李欣玲  阅读(397)  评论(0编辑  收藏  举报