Eine Methode, die für numerische Objekte verwendet werden kann. Wiederholen Sie den in do ~ end
enthaltenen Vorgang für die Anzahl der Zahlen.
Ich wage es, mit der Schlussfolgerung zu beginnen.
・ ~~ Blockvariable ~~ Der Blockparameter ist nur im Block (Bereich) gültig.
Ich möchte, dass Sie dies in die Ecke Ihres Kopfes stecken und weiterlesen.
Der Bereich ist der Bereich, in dem die definierten Variablen verwendet werden können.
do~end
Oder{ }
(Wellen)Das Innere wird Block genannt. Außerdem im Block|Variablennamen|
||Variablen in (Pipeline)~~Blockvariable~~Es wird als Blockparameter bezeichnet.
STEP1
Beginnen Sie hier, um sicherzustellen, dass Sie es verstehen.
num = 1
puts num
#=>1
Ein solches Programm erscheint ganz am Anfang von Variablen. Um dies sorgfältig zu erklären, wird der Variablen num der numerische Wert 1 zugewiesen und durch Puts aufgerufen. Ich bin mir dessen nicht bewusst, aber da es sich um den Bereich (Bereich) der Variablen num handelt, kann er mit Puts aufgerufen werden.
STEP2
num = 1
3.times do
puts num
end
#=>1
# 1
# 1
Dies führte dazu, dass "Puts num" dreimal und eine "1" dreimal wiederholt wurde. Bemerkenswert ist der Umfang der Variablen num. Sie können Variablen verwenden, die außerhalb von "do ~ end" definiert sind.
STEP3
3.times do
num = 1
end
puts num
#=>NameError
Der Code ähnelt STEP2, aber ich erhalte eine Fehlermeldung. ↓
NameError (undefined local variable or method num for main:Object)
Die einfache Übersetzung lautet " num
von setzt num
ist nicht definiert".
Richtig, alles, was innerhalb von "do ~ end" definiert ist, kann nicht außerhalb von "do ~ end" aufgerufen werden.
Eigentlich ein Stolperpunkt! !!
STEP4
num = 1
3.times do|i|
num = num + i
end
puts num
#=>4
Zu lesende Punkte ① ~~ Blockvariable ~~ Blockparameter beginnen bei 0 und erhöhen sich um 1. Im obigen Beispiel wird angenommen, dass "0" in der ersten Woche ersetzt wird, "1" in der zweiten Woche ersetzt wird und "2" in der dritten Woche ersetzt wird.
(2) Die externen Variablen wurden neu geschrieben.
Wenn Sie es sorgfältig schreiben ↓
In Bezug auf die iterative Verarbeitung handelt es sich um einen Inhalt, den Sie in einem frühen Stadium programmieren und lernen. Selbst wenn Sie glauben, ihn zu verstehen, können Sie sich möglicherweise nicht an die Details erinnern. Nutzen Sie diese Gelegenheit, um ihn zu überprüfen.
Recommended Posts