Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: if условие Добавлено: 21.01.09 13:54  

Автор вопроса:  amentis
можно ли в if записать несколько условий?
пробовал
if условие1 & условие2 then end
и
if условие1, условие2 then end
оба не работают..может как-то по-другому?
собственно вариант
if условие1 then
 if условие2 then end
end if
 

тоже вариант..но хотелось в 1 строку

Ответить

  Ответы Всего ответов: 15  

Номер ответа: 1
Автор ответа:
 VβÐ



Вопросов: 15
Ответов: 194
 Web-сайт: www.homacosoft.com
 Профиль | | #1
Добавлено: 21.01.09 14:04
  1. if условие1 and условие2 and условие3 then ' выполняются все три условия
  2. if условие1 or условие2 or условие3 then ' выполняются одно из условий
  3. if (условие1 or условие2) and условие3 then ' выполняются одно из первых двух условий и третье
  4. if (условие1 and условие2) or условие3 then ' либо выполняются два первых условия, либо последнее

Можно комбинировать

Ответить

Номер ответа: 2
Автор ответа:
 amentis



Вопросов: 6
Ответов: 31
 Профиль | | #2 Добавлено: 21.01.09 14:09
странно..and тоже писал но ничего не вышло

Ответить

Номер ответа: 3
Автор ответа:
 Skywalker



ICQ: 300-70-6пятьЪ 

Вопросов: 62
Ответов: 545
 Web-сайт: iSkywalker.ru
 Профиль | | #3
Добавлено: 21.01.09 14:36
включив дар экстрасенса, я предполагаю, ты пытаешься написать что-то типа:
if x = 3 and 4 then end
а нада:
if x = 3 and x = 4 then end

Ответить

Номер ответа: 4
Автор ответа:
 Imperial Kashak



ICQ: 479713821 

Вопросов: 10
Ответов: 57
 Профиль | | #4 Добавлено: 21.01.09 14:54
Лучшим способом (точнее, надёжным) прописывать условия в скобках - меньше шансов потеряться среди значений. С многоуровневыми условиями также. Лучше сначала где-нибудь отдельно напиши, да скобки посчитать, чем потом страдать от ругани исполнителя. Ну, и как сказал Skywalker, Нужно в каждом условии ставить переменную и её значение, а иначе это дело не заработает.

Ответить

Номер ответа: 5
Автор ответа:
 amentis



Вопросов: 6
Ответов: 31
 Профиль | | #5 Добавлено: 21.01.09 16:11
не не...все нормально, писал я как надо..но не там где надо =) не в том операторе

Ответить

Номер ответа: 6
Автор ответа:
 amentis



Вопросов: 6
Ответов: 31
 Профиль | | #6 Добавлено: 21.01.09 16:23
вобщем дело такое:
пишу такую игруху(тренируюсь в написании кодов):
а-ля лабиринтик
1 картинка бегает 2 при нажатии на command1,2,3,4 соответственно вправо, влево, вверх и вниз
таймер проверяет не зашла ли она за рамки картинки 2

но должны же быть хоть какие-то стены в лабиринте..вот
в кнопке направо код такой:
  1.  
  2. Private Sub Command1_Click()
  3. If Picture2.left + "10" = stena Then
  4. Else
  5. Picture2.left = Picture2.left + 10
  6. End If
  7.  
  8.  
  9. End Sub


так вот как мне объявить эту самую стену с 2мя параметрами picture1.left=10 и picture2.top=0
чтобы 1я картинка не смогла зайти на эти самые координаты
и конечно же стена будет не одна...придется вводить переменных чтоли столько сколько стен?
как бы мне задать все стены сразу?

Ответить

Номер ответа: 7
Автор ответа:
 amentis



Вопросов: 6
Ответов: 31
 Профиль | | #7 Добавлено: 21.01.09 16:30
конечно как вариант можно в таймере прописать для каждой ячейки хода в лабиринте
  1.  
  2. if picture2.left=0 and picture2.top=0 then command1.enabled=false

но чтото не нравится мне этот вариант..

Ответить

Номер ответа: 8
Автор ответа:
 amentis



Вопросов: 6
Ответов: 31
 Профиль | | #8 Добавлено: 21.01.09 16:45
или может можно сделать чтото вроде :
прописать в таймере все эти стены а-ля
if picture2.left=x and picture2.top=y then предыдущее значение х и у
только как задать это предыдущее значение? можно конечно при его перемещении записывать его в текстбокс..но может другой вариант есть?

Ответить

Номер ответа: 9
Автор ответа:
 Imperial Kashak



ICQ: 479713821 

Вопросов: 10
Ответов: 57
 Профиль | | #9 Добавлено: 21.01.09 18:21
Зачем текстбокс? Переменных ещё объяви, только в General, да и пользуйся промежуточно. Просто обнуляй,когда потребуется, чтобы проблем не было со значениями.

Ответить

Номер ответа: 10
Автор ответа:
 Imperial Kashak



ICQ: 479713821 

Вопросов: 10
Ответов: 57
 Профиль | | #10 Добавлено: 21.01.09 20:41
Хотя в коде потом чёрт голову сломит...

Ответить

Номер ответа: 11
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #11 Добавлено: 01.02.09 11:28
посмотри документацию на тему операторов And, Or, AndAlso, OrElse, XOr, Not может еще что-то лень вспоминать

Ответить

Номер ответа: 12
Автор ответа:
 SergeyZuzic



ICQ: 474690219 

Вопросов: 5
Ответов: 155
 Web-сайт: vsedlysita.narod.ru
 Профиль | | #12
Добавлено: 31.03.09 08:37
If A=1 And B=1 And C=1 And D=1 then Zuzic=10

Ответить

Номер ответа: 13
Автор ответа:
 SHDZ



ICQ: 209382104 

Вопросов: 39
Ответов: 244
 Профиль | | #13 Добавлено: 31.03.09 11:50
отправил тебе пример игрушки - червяк лазит и хавает, потом растет, моя первая прога 15-летней давности :))

Ответить

Номер ответа: 14
Автор ответа:
 SHDZ



ICQ: 209382104 

Вопросов: 39
Ответов: 244
 Профиль | | #14 Добавлено: 31.03.09 11:51
ну - не 15 - а лет 7 назад гдето точно

Ответить

Номер ответа: 15
Автор ответа:
 Smith



ICQ: adamis@list.ru 

Вопросов: 153
Ответов: 3632
 Профиль | | #15 Добавлено: 31.03.09 17:57
Я лабиринт писал на турбобейсике, даже на икстюхе гонял, помню эту миниклаву и дос 5 с дискеты пятерки.
Уж непомню в каком году это было :)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам