$A="A"
$B="B"
$C="C"
$D="D"
class Employee
def initialize(empNo,empName,empScore)
@empNo=empNo
@empName=empName
@empScore=empScore
end
def empno
return @empNo
end
def empname
return @empName
end
def empscore
return @empScore
end
def getLevel(empScore)
case @empScore
when 90..100 then @level=$A
when 80...90 then @level=$B
when 65...80 then @level=$C
else
@level=$D
end
end
def level
return @level
end
end
# 排序过程
def bubble_sort(arr)
1.upto(arr.length-1) do |i|
(arr.length-i).times do |j|
if arr[j].empscore.to_f<arr[j+1].empscore.to_f
arr[j],arr[j+1] = arr[j+1],arr[j]
end
end
end
arr
end
$emps = Array.new
isexist = true
while isexist
puts "请输入员工信息的路径:"
filename = gets
if File.exist?(filename.chop!) then
file=File.new(filename)
file.readlines.each do |line|
tem = line.to_s.split("_")
emp = Employee.new(tem[0],tem[1],tem[2].to_f)
emp.getLevel(tem[2].to_f)
$emps << emp
end
isexist = false
end
end
bubble_sort($emps)
targetFile = "result.log"
file = File.new(targetFile,'w')
file.puts("排序结果")
file.puts("工号 姓名 分数 等级")
$emps.each do |i|
file.puts "#{i.empno} #{i.empname} #{i.empscore} #{i.level}"
end
$B="B"
$C="C"
$D="D"
class Employee
def initialize(empNo,empName,empScore)
@empNo=empNo
@empName=empName
@empScore=empScore
end
def empno
return @empNo
end
def empname
return @empName
end
def empscore
return @empScore
end
def getLevel(empScore)
case @empScore
when 90..100 then @level=$A
when 80...90 then @level=$B
when 65...80 then @level=$C
else
@level=$D
end
end
def level
return @level
end
end
# 排序过程
def bubble_sort(arr)
1.upto(arr.length-1) do |i|
(arr.length-i).times do |j|
if arr[j].empscore.to_f<arr[j+1].empscore.to_f
arr[j],arr[j+1] = arr[j+1],arr[j]
end
end
end
arr
end
$emps = Array.new
isexist = true
while isexist
puts "请输入员工信息的路径:"
filename = gets
if File.exist?(filename.chop!) then
file=File.new(filename)
file.readlines.each do |line|
tem = line.to_s.split("_")
emp = Employee.new(tem[0],tem[1],tem[2].to_f)
emp.getLevel(tem[2].to_f)
$emps << emp
end
isexist = false
end
end
bubble_sort($emps)
targetFile = "result.log"
file = File.new(targetFile,'w')
file.puts("排序结果")
file.puts("工号 姓名 分数 等级")
$emps.each do |i|
file.puts "#{i.empno} #{i.empname} #{i.empscore} #{i.level}"
end