ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 3) онлайн
Логическое ИЛИ
Введем в нашу приключенческую игру новых персонажей — драконов, которые будут обитать на западных и восточных землях и ограничат свободное передви- жение нашего героя. Следующая программа, ADVENOR, с помощью операции ло- гического ИЛИ реализует нашу задумку:
// advenor.cpp
// применение операции логического ИЛИ #include <iostream> using namespace std;
#include <process.h> // для exit()
#include <conio.h> // для getche()
int main() {
|
Операция |
Название |
|
&& |
Логическое И |
|
|| |
Логическое ИЛИ |
|
! |
Логическое НЕ |
char dir='a';
int x=10, y=10;
while( dir != '\r' ) //выход при нажатии Enter
{
cout << "\n\nВаши координаты: " << x << ", " << y;
if( x<5 || x>15 ) //если x меньше 5 или больше 15
cout << "\nОсторожно – драконы!";
cout <<"\nВыберите направление (n,s,e,w): ";
dir = getche(); //выбор направления
switch(dir)
{
case 'n': y--; break; // обновление координат
case 's': y++; break;
case 'e': x++; break;
case 'w': x--; break;
} // конец switch
} // конец while
return 0;
} // конец main()
Выражение x<5 || x>15
является истинным как в случае, если x меньше 5 (герой находится на западных землях), так и в случае, если x больше 15 (герой находится на восточных зем- лях). Аналогично предыдущей программе, логическая операция || имеет более низкий приоритет, чем операции отношения < и >, поэтому дополнительные скобки в выражении не требуются.
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
