#!/usr/koeki/bin/ruby
# -*- coding: utf-8 -*-
require 'kconv'
soft = Hash.new
while line = gets
if /(\S+)\s+(\d+)\s+(\d+)\s+(\d+)/ =~ line
kati = $2.to_f / ($2.to_f+$3.to_f)
soft[$1] = [$2.to_f,$3.to_f,$4,kati]
end
end
print"--チーム名------------+-勝ち-+-負け-+-引分--+-勝率---\n"
for team in soft.keys.sort {|a, b| soft[b][3] <=> soft[a][3]}
result = sprintf("%-23s%d%6d%6d%9.3f\n",
team.toeuc.force_encoding("binary"),
soft[team][0], soft[team][1], soft[team][2],
soft[team][0]/(soft[team][0]+soft[team][1])).toutf8
puts result
end
結果
--チーム名------------+-勝ち-+-負け-+-引分--+-勝率---
ドラゴンフライズ 77 51 8 0.602
アンツ 78 53 5 0.595
ブックウォームス 75 52 9 0.591
モスキートーズ 65 65 6 0.500
スネイルズ 52 82 2 0.388
クリケッツ 50 83 3 0.376
説明
配列のなかに勝率を表わす"kati"という変数を作り勝率で並べ換えれるようにし
まし?た。
課題は1番までです。