Erstellen Sie eine Methode, die eine gerade oder ungerade Anzahl von Werten im Array zählt.
Verwenden Sie die Methode gerade? </ Font> für gerade Werte und die Methode ungerade? </ Font> für ungerade Werte.
Ruby
number = 2
number.even?
//→ true wird zurückgegeben
Ruby
def count(number)
count = 0
number.each do |num|
if num.even?
count += 1
end
end
puts count
end
Um eine Methode zu erstellen, werden diesmal der Methodenname und die formale Argumentnummer in der ersten Zeile beschrieben.
Ruby
def count(number)
Wie oben erwähnt, gibt die gerade? -Methode nur wahr oder falsch zurück, sodass sie nicht alleine gezählt werden kann. Wenn Sie die gerade? -Methode für ein Array wie unten gezeigt verwenden, tritt daher ein Fehler auf.
Ruby
hairetsu = [1,2,6,8,10]
hairetsu.even?
// NoMethodError (undefined method `even?' for [1, 2, 6, 8, 10]:Array)
Obwohl count = o in der zweiten Zeile beschrieben ist, wird die Zählung durch Beschreiben vor der iterativen Verarbeitung initialisiert.
Um zu zählen, wird es von jeder Methode wiederholt. Wenn es als Fluss wahr ist, zählt es hoch, und wenn es falsch ist, tut es nichts und fährt mit der Beurteilung des nächsten Elements fort.
Ruby
number.each do |num|
if num.even?
count += 1
end
end
Ich verwende die Puts-Methode, um die zuletzt gezählte auszugeben.
Ruby
puts "count"
Sie haben jetzt eine gerade oder ungerade Zählmethode in einem generischen Array erstellt. Vergessen Sie beim Aufrufen einer Methode nicht, ein Array als tatsächliches Argument von außerhalb der Methode anzugeben.
Recommended Posts