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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.08.2011, 18:38   #1
antoxann
 
Регистрация: 25.08.2011
Сообщений: 9
По умолчанию Знак логической операции

Добрый день, возникла проблема , не могу понять, можно ли использовать OR c String?
Вот код:
Код:
var a : String ;
begin
ReadLn (a);
if a='Привет' then WriteLn ('Привет')
     else if a='Здравствуйте' OR a='Здорово'
     then WriteLn ('Здравствуйте')
     else if a='Добрый день' OR a='Приветик'OR a='Салют'
     then WriteLn ('Салют')
     else if a='Здравия желаю' then WriteLn ('Вольно')
end.
antoxann вне форума Ответить с цитированием
Старый 27.08.2011, 18:42   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Вроде надо использовать скобки в таких случаях. А string или не string тут не имеет значения.
if (a='Здравствуйте') OR (a='Здорово') и т.д.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 27.08.2011, 18:55   #3
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Логические операции, в частности OR, служат для объединения логических выражений. Логическое выражение может быть каким угодно, главное, чтобы оно было записано верно. Таким образом, String использовать можно, но, Alex11223 правильно заметил, если логические выражения объединяются логическими операциями (OR, AND, XOR), то их надо заключать в скобки, например
Код:
// a и b - строки
if (a = 'ПРЕВЕД') OR (b = 'МЕДВЕД') then //....
Если же вы не напишете скобок, то есть

Код:
// a и b - строки
if a = 'ПРЕВЕД' OR b = 'МЕДВЕД' then //....
вы получите сообщение об ошибке "Несоответствие типов"
Вадим Мошев вне форума Ответить с цитированием
Старый 27.08.2011, 18:59   #4
antoxann
 
Регистрация: 25.08.2011
Сообщений: 9
По умолчанию

точно ведь)
спасибо)
antoxann вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Описание логической функции ПОТОМОК(А,Б) Boomhauer Помощь студентам 2 03.04.2011 20:28
Ассемблер for windows. Осуществление логической операции Маришка_Курносова Помощь студентам 5 10.11.2010 12:56
Построение эквивалентной логической функции (C++) Anastasiya209 Помощь студентам 5 03.06.2009 20:28
Значение логической переменной Shevali Помощь студентам 2 17.03.2009 22:41
Есть чат на яваскрипте.не могу поставит знак +;Хотя люди его как то ставят, просто мой знак + заменяется maksim1983 JavaScript, Ajax 4 23.02.2009 07:55