Sie können mehrere Bedingungen verwenden, um einen bestimmten Wert in einem Array zu finden.
Beispiel) Leiten Sie aus den Zahlen 1 bis 10 die Zahl 5 oder weniger ab, die durch 2 geteilt wird. Sie können solche Probleme lösen.
Verwenden Sie jeweils Array # und Array # select.
numbers = (1..10).to_a
rule = [["<", 5],["%", 2]]
rule.each do |b|
numbers.select! do |a|
if b[0] == "<"
a <= b[1]
else
a % b[1] == 0
end
end
end
p numbers # [2,4]
Es ist notwendig, die Bedingung (diesmal regieren) mit jeder zu drehen und diejenige, die Sie bestimmen möchten (diesmal nummerieren), darin zu platzieren. Früher hatte ich im Gegenteil Probleme, und vor kurzem habe ich diese Methode bemerkt, also habe ich sie zusammengefasst.
Ich würde mich freuen, wenn es eine Lösung für jemanden sein könnte, der mit dem gleichen Problem feststeckt.