>>382
ありがとうございます。まあ、他の言語を試せばいいのでしょうけど、こうやってわからなかったら次の言語とやってると、同じことがあった時にまた引越しなきゃならなくなる
のでがんばってRubyをマスターすることにします。

さて、「Rubyの絵本」のループの中断まで勉強が進みましたが、以下のコードの違いがよくわかりません。どなたかご教授よろしくお願いします。#の部分は自分が理解しやすいように
かってにコメント文章をつけたものです。よろしく願します。

a = 0
while a < 5
if a == 2
a = 10
next
end
print(a, "")
a += 1
end

aの値がwhile文の条件に合致している間はループ。
(1回目ループ)aに0が入っているが、if文が成立しないのでnextの下へ行き、a0と表示されてaが1になり、2回目のループに入る。
(2回目ループ)aに1が入っているが、if文が成立しないのでnextの下へ行き、a1と表示されてaが2になり、3回目のループに入る。
(3回目ループ)aに2が入っているが、if文が成立するのでaの値が10になるが、nextが発動し今の処理はなかったものとされ、aの値は2のまま?

似たようなプログラムがredoでもあるのですが、そちらはまあなんとか理解できます。問題はnextのほうで、今一つ理解できません。a=2のままなら無限ループするんじゃないかと自分では思ったのですが、
実際の出力結果は
a0
a1
となっているので、何か勘違いをしているのだと思いますがそれがなんなのかわかりません。長文申し訳ありませんがよろしくお願いします。