Pour obtenir les multiples communs maximum et minimum des entiers «a» et «b» dans Ruby, utilisez respectivement Integer # gcd. /i/gcd.html), Entier # lcm
#Engagement maximum (GCD: Greatest Common Divisor)
a.gcd(b)
#Multiple commun minimum (LCM: Least Common Multiplier)
a.lcm(b)
Faire.
Par exemple, les multiples communs maximum et minimum de 4 et 6 sont
puts 4.gcd(6) # => 2
puts 4.lcm(6) # => 12
Etc.
Alors, quels sont les multiples communs maximum et minimum des trois entiers «a», «b» et «c»? Puisque les engagements maximums de $ a $, $ b $ et $ c $ sont "les engagements maximums de $ a $ et $ b $" et les engagements maximums de $ c $.
a.gcd(b).gcd(c)
Obtenu à. Il en va de même pour le multiple commun minimum
a.lcm(b).lcm(c)
Obtenu à.
Et si un ensemble d'entiers était donné dans un tableau? Vous pouvez écrire comme suit.
numbers = [30, 20, 15]
#Engagement maximum
puts numbers.inject(:gcd) # => 5
#Multiple commun minimum
puts numbers.inject(:lcm) # => 60
Enumerable # inject avait pour usage de donner des symboles sans donner de blocs.
Recommended Posts