Newer
Older
Ruby / kokugo-rank.rb
@mktao2 mktao2 9 days ago 758 bytes upload all files
#!/usr/bin/env ruby
# coding: utf-8
require "./kprintf.rb"
require 'csv'

# ja-math.csv: 氏名,国語,数学
score = CSV.read("ja-math.csv", headers:true)

puts "元の並び:"
print "--氏名--------------+-国語-+-数学-+-合計--\n"
score.each do |row|
  name, ja, math = row["氏名"], row["国語"], row["数学"]
  total = ja.to_i + math.to_i
  printf("%-20s %5d  %5d  %5d\n", name, ja.to_i, math.to_i, total)
end
puts "-"*42

puts "国語上位から:"
print "--氏名--------------+-国語-+-数学-+-合計--\n"
score.sort_by{|x| x["国語"].to_i}.reverse.each do |row|
  name, ja, math = row["氏名"], row["国語"], row["数学"]
  total = math.to_i + ja.to_i
  printf("%-20s %5d  %5d  %5d\n", name, ja.to_i, math.to_i, total)
end
puts "-"*42