小编ste*_*uck的帖子

编写此代码的更"红宝石"是什么?

这是我的学生(我是一名助教)的家庭作业,我正在努力学习Ruby,所以我想我会编写代码.目标是从重定向文件中读取整数并打印一些简单信息.文件中的第一行是元素的数量,然后每个整数都驻留在它自己的行上.

这段代码可以工作(尽管效率可能不高),但是如何使代码更像Ruby呢?

#!/usr/bin/ruby -w

# first line is number of inputs (Don't need it)
num_inputs = STDIN.gets.to_i

# read inputs as ints
h = Hash.new
STDIN.each do |n|
  n = n.to_i
  h[n] = 1 unless h[n] and h[n] += 1      
end

# find smallest mode
h.sort.each do |k,v|
  break puts "Mode is: #{k}", "\n" if v == h.values.max
end

# mode unique?
v = h.values.sort
print "Mode is unique: "
puts v.pop == v.pop, "\n"

# print number of singleton …
Run Code Online (Sandbox Code Playgroud)

ruby coding-style

4
推荐指数
1
解决办法
571
查看次数

标签 统计

coding-style ×1

ruby ×1