Что-то тут не так:
выполняем №1
выполняем №2
условие №3 -> если вено, возврат к №1, потом №2 и опять условие №3 и тд...
-> если нет, то идем к №5, а после №5 снова возврат к №1, потом №2 и опять условие №3 и тд...
получается, что №4 и №6 никогда не будут учитываться.
Не верно составлен алгоритм.