所以问题是要我写一个代码,该代码将在哈希键中搜索与数字匹配的任何值(该数字由用户输入)。
第一个哈希由两个键组成,而值是一个数组。第二个哈希由5个键组成,而值是一个数组。
我的问题主要是关于.find_all
。
基本上,我被要求搜索哈希以查看用户要调查的数字是否在哈希中。
请帮忙!
puts "give me a number you want information about:"
number_info= gets.chomp
puts "Using only the first hash:"
if first_hash[random_numbers].find_all { |e| e== number_info }
puts "the number #{number_info} shows up #{random_numbers.count(e)}
time(s) in the randomly generated numbers"
elsif first_hash[user_input].find_all { |e| e==number_info }
puts "the number #{number_info} was provided #{user_input.count(e)}
time(s)by the user"
elsif first_hash[random_numbers].find_all { |e| e!= number_info }
puts "the number #{number_info} does not show up in the randomly
generated numbers"
elsif first_hash [user_input].find_all { |e| e!=number_info }
puts "the number #{number_info} was not provided by the user
earlier"
end
如果您感到困惑,这些就是哈希...
rand_1= rand(12..21)
rand_2= rand(12..21)
rand_3= rand(12..21)
rand_4= rand(12..21)
rand_5= rand(12..21)
puts "Please provide five integer values between 12 and 21, both
inclusive:
what's number 1?"
number_1 =gets.chomp
puts "What's number 2?"
number_2 =gets.chomp
puts "What's number 3?"
number_3 =gets.chomp
puts "what's number 4?"
number_4 =gets.chomp
puts "What's number 5?"
number_5 =gets.chomp
第一个哈希
first_hash={
random_numbers: [rand_1, rand_2, rand_3, rand_4, rand_5],
user_input: [number_1, number_2, number_3, number_4, number_5]
}
user_input= [number_1, number_2, number_3, number_4, number_5]
random_numbers= [rand_1, rand_2, rand_3, rand_4, rand_5]
第二次哈希
second_hash= {
number_1: [user_input.count(number_1),
random_numbers.count(number_1)],
number_2:
[user_input.count(number_2),random_numbers.count(number_2)],
number_3: [user_input.count(number_3),
random_numbers.count(number_3)],
number_4:
[user_input.count(number_4),random_numbers.count(number_4)],
number_5: [user_input.count(number_5),
random_numbers.count(number_5)]
}