Проверка условия в цикле While и его остановка - C#

Узнай цену своей работы

Формулировка задачи:

Я пишу простенькую программку, где мне нужно крутить цикл while до тех пор, пока моя сила или сила моего противника не станет равна 0. То есть удовлетворение или одному или другому условию должно приводить к остановке цикла, но почему-то не получается. Пишу так:
While (x > 0 | y > 0)
{
...
}
По логике (человеческой), это означает, что надо остановить цикл или если x > 0 или если y > 0. Но так не работает. Ждёт пока у обоих переменных будет значение 0. На удивление правильно срабатывает вот это:
While (x > 0 & y > 0)
{
...
}
Но тут я вообще смысла понять не могу. По идее должны быть выполнены оба условия и x > 0 и y > 0, но цикл прекращает работу когда удовлетворено любое из условий. И как бы меня это натолкнуло на мысль, что кажется я чего-то не понимаю, или понимаю не так. ))) Кто знает, подскажите в чём проблема?

Решение задачи: «Проверка условия в цикле While и его остановка»

textual
Листинг программы
while((x>0) & (y>0))

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.875 из 5
Похожие ответы