J'expliquerai le code créé lors de l'apprentissage de l'algorithme Ruby.
J'ai contesté la technologie suivante.
Utilisez deux tableaux de 10 nombres chacun. Comparez la 1ère, la 1ère à la 2ème somme, la 3ème somme, etc. de chaque tableau, Écrivez du code pour montrer ce qui est plus grand.
Tout d'abord, tout va bien, alors préparez deux tableaux.
a = [1,2,3,4,5,6,7,8,9,10]
b = [10,2,2,2,2,2,2,2,2,2]
prochain Créez une méthode pour trouver la somme des tableaux. Il existe différentes méthodes, mais ici nous utiliserons la méthode inject.
def sum(array,n)
sum = array[0,n].inject(:+)
return sum
end
Dans la partie de ʻarray [0, n] .inject (: +) `, la somme du 1er au n + 1e du tableau assigné en argument est calculée.
Enfin, le processus ci-dessus est exécuté pour tous les éléments du tableau et la grandeur est évaluée à chaque fois.
(1..10).each{|i|
if sum(a,i) > sum(b,i)
puts "#{i}: A est grand"
elsif sum(a,i) < sum(b,i)
puts "#{i}: B est grand"
else
puts "#{i}:égal"
end
}
Le total est le suivant.
a = [1,2,3,4,5,6,7,8,9,10]
b = [10,2,2,2,2,2,2,2,2,2]
def sum(array,n)
ans = array[0,n].inject(:+)
return ans
end
(1..10).each{|i|
if sum(a,i) > sum(b,i)
puts "#{i}: A est grand"
elsif sum(a,i) < sum(b,i)
puts "#{i}: B est grand"
else
puts "#{i}:égal"
end
}
c'est tout.
En plus d'apprendre à utiliser la méthode inject nouvellement dans ce code, J'ai réalisé qu'il était possible de comparer la taille des valeurs de retour de méthode. À l'avenir, j'aimerais continuer à acquérir de nouvelles connaissances et rechercher de nouvelles façons d'utiliser les connaissances que je connais déjà.
Recommended Posts