![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
как написать: если A>2 и А<5 тогда
mpdasa © (2010-01-18 21:16:00)Здравствуйте.
Почему выдаёт ошибку в такой строке:
if massive1[i] = 'a' or 'i' or 'u' then//если убираю or то начинает работать.
if massive1[i] = 'a' and massive1[i+1] = 'b' then //та же проблема
Как правильно писать такие строки?
Заранее благодарен, Владислав
KilkennyCat (2010-01-19 04:31:00) [1]если массив, то i стоит еще проверить на границы, особенно в if (massive1[i] = 'a') and (massive1[i+1] = 'b')
Германн (2010-01-19 02:41:00) [2]
> Юрий Зотов © (19.01.10 02:30) [5]
Шпаргалка. Имхо.
Но неполная. Ибо на сам сабж так никто и не ответил. :) То бишь не дал код!
:)
Юрий Зотов (2010-01-19 02:30:00) [3]Если массив символьный, то так:
if massive1[i] in ['a', 'i', 'u'] then
Дмитрий Белькевич (2010-01-18 22:44:00) [4]С not, кстати, из-за этого часто приколы бывают:
not i = 10 <> not (i = 10)
Дмитрий Белькевич (2010-01-18 22:43:00) [5]>Как правильно писать такие строки?
Правило простое: у логических операций в Delphi приоритет выше чему у операций отношения. Поэтому скобками приходится менять приоритеты.
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1172
2.4.6. Очередность выполнения операций
Virgo_Style (2010-01-18 21:24:00) [6]if (massive1[i] = 'a') and (massive1[i+1] = 'b')
DVM (2010-01-18 21:23:00) [7]if (massive1[i] = 'a') or (massive1[i] ='i') or (massive1[i] ='u') then