Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 07.09.2011, 20:49   #1
celovec
Форумчанин
 
Регистрация: 15.06.2007
Сообщений: 182
По умолчанию Вопрос из разряда чайник - if or if else

Код:
if (* = *) and (* = *) then begin
***
end or if (* = *) and (* = *) then begin
***
end else begin
***
end;
Появляется ошибка Operator not applicable ot thid operand type.

Тоесть необходимо сделать такое условие:
Если * = * и * = * тогда ***
или если * = * и * = * тогда ***
если неравно всему этому то ***
celovec вне форума
Старый 07.09.2011, 20:59   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

логичиски вы забыли "иначе" с точки зрения delphi.
Код:
if (* = *) and (* = *) then begin
***
end else
begin
if (* = *) and (* = *) then begin
***
end else begin
***
end;
end;
Человек_Борща вне форума
Старый 07.09.2011, 21:02   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

1) нет такого оператора if then or if .....

2)
вы зря ввели звёздочки. Ибо непонятно, в каких случаях звёдочки означают одно и тоже, а в каких - разное...

Вы, скорее всего хотели такое:
Код:
if ((условие1) and (условие2))
   or ((условие3) and (условие4)) then ВыполнитьДействие1
else ВыполнитьДействие2;
Serge_Bliznykov вне форума
Старый 07.09.2011, 21:09   #4
celovec
Форумчанин
 
Регистрация: 15.06.2007
Сообщений: 182
По умолчанию

Serge_Bliznykov, да прошу прощенья, нет мне нужно немного другое:

Код:
if (* = *) and (* = *) then begin
Выдаем одно
end or if (* = *) and (* = *) then begin
Выдаем другое
end else begin
Выдаем третие
end;
Человек_Борща, да наверное вы правы, сейчас проверю.

Последний раз редактировалось celovec; 07.09.2011 в 21:13.
celovec вне форума
Старый 07.09.2011, 21:14   #5
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

Вам уже дали ответ, будьте внимательнее:
Цитата:
if (* = *) and (* = *) then begin
Выдаем одно
end {or} else if (* = *) and (* = *) then begin
Выдаем другое
end else begin
Выдаем третие
end;
З.Ы. Пришлось оформить не кодом, чтобы цвет был виден
asmodey1 вне форума
Старый 07.09.2011, 21:17   #6
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Код:
end or if
Компилятрор не разделяет вашего понимания этого. Вообще, никак, никогда!
end означает конец блока метода, единственное, что может стоять тпосле end это else и то в логических операциях
Код:
if then 
begin
<b1>
end else
begin
<b2>
end;
or if - этого компилятор тоже не понимает.
or - может быть только внутри лог. блоков, циклов if then,while do,repeat until.

Думайте как машина, когда пишите программу.
Человек_Борща вне форума
Старый 07.09.2011, 21:24   #7
celovec
Форумчанин
 
Регистрация: 15.06.2007
Сообщений: 182
По умолчанию

Всем большой спасибо. Особенно Человек_Борща.
Разобрался.

Возможно кто-то из вас может помочь разобраться в этой тебе: http://programmersforum.ru/showthread.php?t=164991
celovec вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Присвоение разряда и коэффициента по полученным процентам Print Microsoft Office Excel 2 07.04.2011 12:29
Я чайник nasirus Паскаль, Turbo Pascal, PascalABC.NET 1 02.03.2011 17:41
Как отсортировать данные начиная с восьмого разряда? Дмитрий177 Microsoft Office Excel 7 29.01.2011 04:43
бд, делфи и чайник m0dE^ БД в Delphi 2 11.08.2010 15:03
Роботостроение. (Чайник) Web-Gangsta Свободное общение 3 07.02.2010 19:11