BREAKじゃない方の意味が、Aが2未満の場合を指すのであれば、Aに値を設定しているところを調べてはいかがでしょうか。 それとも、CONTINUEを指しているのであれば、これは、後の処理をやめてループの先頭から実行しなさいと言う意味なので、もしかしたら指示通り動いているのではありませんか。