Lazarus. And в большом условии

Рейтинг: 0Ответов: 0Опубликовано: 18.01.2023

Создаю пятнашки на паскаль, язык изучаю недавно Есть данное условие:

if(Button1.Top = 0) and (Button1.Left = 112) then begin
          if((Button2.Top <> 0) and (Button2.Left <> 0)) and
          ((Button3.Top <> 0) and (Button3.Left <> 0)) and
          ((Button4.Top <> 0) and (Button4.Left <> 0)) and
          ((Button5.Top <> 0) and (Button5.Left <> 0)) and
          ((Button6.Top <> 0) and (Button6.Left <> 0)) and
          ((Button7.Top <> 0) and (Button7.Left <> 0)) and
          ((Button8.Top <> 0) and (Button8.Left <> 0)) then begin
               Button1.Left := 0;
               end   

Оно в теории должно проверять есть ли на данной координате пятнашка. Но из-за того, что на координатной оси X или Y могут стоять другие пятнашки, он выдает FALSE.

Как скомбинировать условия ((Button2.Top <> 0) and (Button2.Left <> 0)), чтобы два условия считались вместе, а не проверялись программой по-отдельности?

Ответы

Ответов пока нет.