Back

情報科学概論 Aクラス 小テスト 2003.7.22 解答例


実習作業のBのスクリプトを作成し,メールに添付して提出すること.
解答例

data = []
sum_e = 0
sum_m = 0
sum_p = 0
sum = 0

i = 0
while line = ARGF.gets
  data[i] = line.chomp.split(/,/)
  i += 1
end

data[0][4] = "Average"

for i in 0..4
  printf "%11s\s", data[0][i]
end

printf "\n"

for i in 1..10
  data[i][4] = 0
end

for i in 1..10
  printf "%-11s\s", data[i][0]
  for j in 1..3
    data[i][4] += data[i][j].to_f
    printf "%11s\s", data[i][j]
  end
  printf "%11.1f\n", data[i][4] / 3
end

for i in 1..10
  sum_e += data[i][1].to_f
  sum_m += data[i][2].to_f
  sum_p += data[i][3].to_f
  sum += data[i][4].to_f
end

printf "%-11s\s%11.1f\s%11.1f\s%11.1f\s%11.1f\n", data[0][4], sum_e/10, sum_m/10, sum_p/10, sum/30


情報科学概論 Bクラス 小テスト 2003.7.22 解答例


実習作業のBのスクリプトを作成し,メールに添付して提出すること.
解答例

data = []
sum_e = 0
sum_m = 0
sum_p = 0
sum = 0

i = 0
while line = ARGF.gets
  data[i] = line.chomp.split(/,/)
  i += 1
end

data[0][4] = "Average"

for i in 0..4
  printf "%11s\s", data[0][i]
end

printf "\n"

for i in 1..10
  data[i][4] = 0
end

for i in 1..10
  printf "%-11s\s", data[i][0]
  for j in 1..3
    data[i][4] += data[i][j].to_f
    printf "%11s\s", data[i][j]
  end
  printf "%11.1f\n", data[i][4] / 3
end

for i in 1..10
  sum_e += data[i][1].to_f
  sum_m += data[i][2].to_f
  sum_p += data[i][3].to_f
  sum += data[i][4].to_f
end

printf "%-11s\s%11.1f\s%11.1f\s%11.1f\s%11.1f\n", data[0][4], sum_e/10, sum_m/10, sum_p/10, sum/30


Back