小编eli*_*xir的帖子

在 Ruby 语言中的一个 if 语句中使用多个条件

我在 Ruby 中写了这样的东西:

if a.max == a[0] 
  brand = b[0]
elsif a.max == a[1]
  brand = b[1]
elsif a.max == a[2]
  brand = b[2]
elsif a.max == a[3]
  brand = b[3]
end
Run Code Online (Sandbox Code Playgroud)

a并且b两者都是唯一的数组。

有什么方法可以检查所有ifelsif的情况相同吗?

只有一个条件a[0], a[1],a[2]a[3]?

ruby arrays loops if-statement max

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

如果数组有两个最大元素?

在此代码中,如果用户键入 2,两次和 1,两次。然后有两个最大元素,应该打印 Kinder 和 Twix。但是怎么样?我可能可以使用 if 方法来做到这一点,但这会使我的代码更长。有没有很酷的版本?我可以只用一个 if 吗?

a = [0, 0, 0,]
b = ["Kinder", "Twix", "Mars"]

while true 
  input = gets.chomp.to_i
  if input == 1
    a[0] += 1
  elsif input == 2
    a[1] += 1
  elsif input == 3 
    a[2] += 1
  elsif input == 0 
    break
  end 
end

index = a.index(a.max)
chocolate = b[index] if index
print a.max,chocolate
 
Run Code Online (Sandbox Code Playgroud)

ruby arrays max

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

标签 统计

arrays ×2

max ×2

ruby ×2

if-statement ×1

loops ×1