平成8年度 春期 第二種 午後 問9

                        [更新日]1996.06.04
問9 次のFortranプログラムの説明及びプログラムを読んで,設問に答えよ。 〔プログラムの説明〕 ある試験の成績処理を行い,総合点と偏差値を印字するサブルーチン副プログラム である。 (1) 試験は3教科からなり,総合点で成績処理を行い,成績順にM位までの印字を行 う。 (2) 受験者数N,受験番号Aj,3教科の成績Xjk(j=1,2…,N;k=1,2,3)及び 印字する順位の範囲Mは,引数としてサブルーチン副プログラムに引き渡される。 (3) 受験番号のAj受験者の総合点Yjは,次の式で計算する。 Yj=Xj1+Xj2+Xj3 (j=1,2,…,N) _ (4) 総合点の平均値Yと標準偏差SDは,次の式で計算する。 _ Y1 + Y2 + … + YN Y=───────────── N ________________ / / Y12 + Y22 + … + Yn2 SD= / _ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ − Y2 \/ N (5) 受験番号Ajの受験者の総合点Yjの偏差値Ujは,次の式で計算する。 _ Yj−Y Uj=50+10×──── (j=1, 2, … ,N) SD (6) 受験者数,総合点の平均値と標準偏差,成績順に1位からM位までの順位,受験 番号,総合点,偏差値を印字する。 (7) 受験者数N=350人のデータを処理し書成績順にM=20位までを印字した例は, 図のとおりである。 受験者数 総合点の平均値 標準偏差 ↓ ↓ ↓ ┌───────────────────┐ │ N=350 YBAR=149.4 SD=49.64 │ │ │ │ 1 A0258 268 73.9 │ │ 2 A0276 267 73.7 │ │ 3 A0266 263 72.9 │ │ 4 A0003 258 71.9 │ │ 5 A0155 252 70.7 │ │ 6 A0024 247 69.7 │ │ 7 A0016 246 69.5 │ │ 8 A0347 245 69.3 │ │ 9 A0096 243 68.9 │ │ 10 A0189 239 68.1 │ │ 10 A0314 239 68.1 │ │ 12 A0124 238 67.8 │ │ 13 A0052 235 67.2 │ │ 14 A0043 234 67.0 │ │ 15 A0084 233 66.8 │ │ 16 A0063 232 66.6 │ │ 16 A0105 232 66.6 │ │ 18 A0264 231 66.4 │ │ 18 A0332 231 66.4 │ │ 20 A0160 230 66.2 │ │ 20 A0181 230 66.2 │ │ 20 A0331 230 66.2 │ └───────────────────┘ ↑ ↑ ↑ ↑ 順位 受験番号 総合点 偏差値 図 印字例 [プログラム] 1 SUBROUTINE SEISEKI(NUM,BAN,TEN,MBAN) 2 INTEGER TEN(1000,3),WA(1000),N(1000),NN 3 REAL HEN(1000),HEI,SWA1,SWA2,SD,SDM,WAX 4 CHARACTER BAN(1000)*6 5 SWA1=0.0 6 SWA2=0.0 7 DO J=1,NUM 8 WA(J)=TEN(J,1)+TEN(J,2)+TEN(J,3) 9 SWA1=SWA1+WA(J) 10 SWA2=SWA2+WA(J)*WA(J) 11 N(J)=J 12 END DO 13 HEI=SWA1/REAL(NUM) 14 ┌ ┐ 15 └ a ┘ 16 DO J=1,NUM 17 HEN(J)=50.0+(REAL(WA(J))-HEI)*SDM 18 END DO 19 J=0 20 10 IS=0 21 J=J+1 22 DO K=1,NUM-J 23 IF(WA(N(K)).LT.WA(N(K*1))) THEN 24 L=N(K) 25 N(K)=N(K+1) 26 N(K+1)=L 27 IS=1 28 END IF 29 END DO 30 IF(IS.NE.0) GOTO 10 31 WRITE(*,3000) NUM,HEI,SD 32 3000 FORMAT(8X,'N=',I4,' YBAR=',F5.1,' SD=',F5.2/) 33 [ b ] 34 DO J=1,NUM 35 K=N(J) 36 IF(WA(K).LT.WAX) THEN 37 IF([ c ])EXIT 38 NN=J 39 [ d ] 40 END IF 41 WRITE(*,2000) NN,BAN(K),WA(K),HEN(K) 42 2000 FORMAT(5X,I6,2X,A,2X,I6,2X,F5.1) 43 END DO 44 END 設問 プログラム中の [ ] に入れる正しい答えを,解答群の中から選ベ。 aに関する解答群 ア SD=SQRT(SWA2/REAL(NUM)-HEI*HEI) SDM=1.0/SD イ SD=SQRT(SWA2/REAL(NUM)-SWA1*SWA1) SDM=1.0/SD ウ SD=SQRT(SWA2/REAL(NUM)-HEI*HEI) SDM=10.0/SD エ SD=SQRT(SWA2/REAL(NUM)-SWA1*SWA1) SDM=10.0/SD オ SD=SQRT(SWA2/REAL(NUM)-HEI*HEI) SDM=100.0/SD カ SD=SQRT(SWA2/REAL(NUM)-SWA1*SWA1) SDM=100.0/SD bに関する解答群 ア WAX=WA(MBAN) イ WAX=WA(MBAN)+1 ウ WAX=WA(N(1)) エ WAX=WA(N(1))+1 オ WAX=WA(N(MBAN)) カ WAX=WA(N(MBAN))+1 cに関する解答群 ア J.GE.MBAN イ J.GT.MBAN ウ J.LE.MBAN エ J.LT.MBAN オ K.GE.MBAN カ K.GT.MBAN キ K.LE.MBAN ク K.LT.MBAN dに関する解答群 ア WA(J)=WA(K) イ WA(K)=WA(J) ウ WA(J)=WAX エ WA(K)=WAX オ WAX=WA(J) カ WAX=WA(K)
戻る 次頁:問10