#!/usr/koeki/bin/ruby # -*- coding: utf-8 -*- require 'csv' # CSVライブラリを呼び出す require './kprintf.rb' # printfの%Xsでの幅を合わせるため score=[] name =[] sum = 0 seiseki = CSV.read(ARGV[0]) # ./score.rb score.csv のように指定する想定 seiseki.each do |row| # 1レコードずつ取り出してrowに入れて繰り返す # rowには ["山田太郎", "50"] のような形式が順番に入る name << row[0] # 第0要素は氏名 score << row[1].to_i # 第1要素は得点の文字列なので .to_i で整数化 sum += row[1].to_i end average = sum.to_f/score.length i = 0 print "--氏名--------------+-得点-+-平均との差--\n" while i < score.length printf("%-20s %5d %5.1f\n", name[i], score[i], score[i]-average) i += 1 end