BREAKが有効なのは一回だけです 今回の場合はDEF LOOP内のWHILEに対してBREAKが働き そこでBREAKの効果は終了します DEF LOOPから戻って来た後(関数や命令は必ず呼び出し元に戻ります)、次のWHILEに突入します LOOP内で押した結果を何らかの形で返却するように書けば 入ってほしくないWHILEの方に条件をつけられます