Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.27;
Скачать: CL | DM;

Вниз

Можно ли в операторе if задавать несколько условий?   Найти похожие ветки 

 
Lobach ©   (2007-05-08 12:10) [0]

Например есть переменная str. Она может иметь разные значения.
Если str=petya нужно выполнить одно действие
Если str=vasya нужно выполнить другое действие
Если str не petya и на vasya вывести сообщение
Не могу сообразить как это сделать


 
Elen ©   (2007-05-08 12:14) [1]

if (str<>petya) and (str<>vasya) then ...


 
Neket   (2007-05-08 12:14) [2]

Используй оператор case ... of ... else


 
iXT ©   (2007-05-08 12:16) [3]

так и делаешь
if str="petya" then

или про case почитай


 
iXT ©   (2007-05-08 12:17) [4]

> [1] Elen ©   (08.05.07 12:14)
> if (str<>petya) and (str<>vasya) then ...


И чего???


 
Ega23 ©   (2007-05-08 12:22) [5]

if (str="1") then
begin
 ShowMessage("1")
end
else
if (str="2") then
 begin
   ShowMessage("2")
 end
else
 begin
   ShowMessage("not 1 and not 2")
 end;


 
Amoeba ©   (2007-05-08 12:31) [6]


> Neket   (08.05.07 12:14) [2]
>
> Используй оператор case ... of ... else
>

Какой, нафиг case если переменная строковая.


 
Elen ©   (2007-05-08 12:37) [7]


> И чего???

и "вывести сообщение" :)


 
Elen ©   (2007-05-08 12:39) [8]


> И чего???

и "вывести сообщение" :)


 
Kostafey ©   (2007-05-08 13:04) [9]

Щас опять пинать будут:

type

TParamKind = (ComboBox_, Data_, Text_);

var
 ParamKind: array[TParamKind] of string = (
   "ComboBox",
   "Data",
   "Text"
   );

...
case ParamKind[i] of
 ComboBox_: ;
 Data_: ;
 Text_: ;
end;


P.S. И оперчаток уже не лопусить :)


 
Kostafey ©   (2007-05-08 13:08) [10]

> лопусить

допустить


 
Lobach ©   (2007-05-08 13:30) [11]


> [5]

Спасибо


 
Loginov Dmitry ©   (2007-05-08 16:16) [12]

> Какой, нафиг case если переменная строковая.


Легко :)

case List.IndexOf(S) of
 0: ShowMessage("vasya");
 1: ShowMessage("petya");
else
 ShowMessage("not vasya and not petya");
end;


 
Игорь Шевченко ©   (2007-05-08 17:00) [13]

Ega23 ©   (08.05.07 12:22) [5]

Вот же пальцы ты развиваешь - любо-дорого смотреть


 
Ega23 ©   (2007-05-08 17:09) [14]


> Вот же пальцы ты развиваешь - любо-дорого смотреть


я ещё и на машинке вышивать могу...   :)


 
{RASkov} ©   (2007-05-08 17:17) [15]

> Lobach ©
if, then, else могут иметь неограниченную вложенность, и используется правило:
очередной then относится к ближайшему if, очередной else относится к ближайшему "свободному" then.
Пример:
if условие1 then
if условие2 then Это else
 if условие3 then Это else То
else To <//if условие1 then


 
{RASkov} ©   (2007-05-08 17:26) [16]

> [0] Lobach ©   (08.05.07 12:10)

Т.е. твой пример можно записать несколькими разными вариантами:
Вариант1:
if str="vasya" then <Делаем что с Васей(м)>
else //Не Вася
if str="petya" then <Делаем что с Петей(м)>
 else // Ни тот ни другой
  <Что-то делаем если не Вася и не Петя>
Вариант2:
if Str<>"vasya" then
if str<>"petya" then <Не Вася и не Петя>
else <Делаем что с Петей>
else <Делаем что с Васей>
Остальные варианты могут зависить от условий.


 
McSimm_ ©   (2007-05-08 17:29) [17]


> P.S. И оперчаток уже не лопусить :)

Похоже, актуальная проблема :)))



Страницы: 1 вся ветка

Текущий архив: 2007.05.27;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.042 c
2-1178584148
dreamse
2007-05-08 04:29
2007.05.27
Подскажите функцию стандартную для проверки и добавления


6-1163759207
Gavrila
2006-11-17 13:26
2007.05.27
TIdMessage - определить, что письмо помечено на удаление?


15-1177699000
koha
2007-04-27 22:36
2007.05.27
Кто пользуется Process Monitor от www.sysinternals.com?


3-1173432573
Sapos
2007-03-09 12:29
2007.05.27
Права пользователя


15-1176890619
Ломброзо
2007-04-18 14:03
2007.05.27
Ещё один гвоздик в гробик