Необходим еще один тип — логический!
Поговорим о философии, а именно — о логике.
Логика оперирует утверждениями. Любое логическое утверждение может быть либо истинным, либо ложным. При решении многих задач возникает ситуация, когда требуется проверить некоторое условие (сформулированное в виде утверждения) и в зависимости от результата проверки (истинности утверждения) произвести те или иные действия:
- если условие выполняется, то результатом будет «истина»,
- если условие не выполняется, то результатом будет «ложь».
Например, утверждение «4 > 3» является истинным, а утверждение «2 > 3» — ложным.
Такие выражения называются булевскими (по имени английского математика Джорджа Буля).
Область математики, которая изучает действия с булевскими выражениями, называется булевской алгеброй или алгеброй логики.
Логический тип данных (Boolean)
Для хранения результата проверки условия введен логический тип — Boolean.
Переменные такого типа называются булевскими переменными.
Пример 4.1. Булевские переменные в программе
Program Booll;
var X: integer;
Bol:Boolean;
begin
X: =4;
Bol :=X > 3; { Это утверждение истинно }
writeln(Bol);
Bol:=X < 3; { Это утверждение ложно }
writeln(Bol);
readln
end.
При выполнении программы на экране мы получим следующее:
TRUE
FALSE
Что такое TRUE и FALSE?
Это значения логического выражения: TRUE означает «истина», а FALSE — «ложь».
Операции отношения
В логических условиях используются операции отношения. Вот как они записываются на языке Паскаль (табл.4.1).
Таблица 4.1. Запись операций отношения на языке Паскаль
Операция отношения |
Запись на языке Паскаль |
Меньше |
< |
Меньше или равно |
<= |
Больше |
> |
Больше или равно |
>= |
Равно |
= |
Не равно |
<> |
Ввод-вывод булевских переменных
Булевские переменные можно выводить на экран, но нельзя вводить с клавиатуры. Для этого приходится вводить переменную другого типа, сравнивать ее с образцом и по результатам сравнения устанавливать значение логической переменной.
Пример 4.2. Как ввести с клавиатуры переменную булевского типа
program Booleanlnput;
var eat:boolean;
ch:char;
begin
write(‘Ты хочешь есть (y/n]?:');
readln(ch);
eat:= ch = 'y';
writeln('Твой ответ:',eat);
readln
end.
<< Назад В начало Далее >>
Комментарии: 2013-03-14 ответил Рейчел Грин
Спасибо за вашу статью. Если А, то Б.
Вы меня понимаете.
2013-09-25 ответил Альбус Персиваль Вульфрик Брайан Дамблдор
Спасибо большое, долго думал, в какой логической последовательности давать детям Pascal в школе, ваша статья очень помогла!
2015-04-07 ответил Иван
ерунда.
2016-07-19 ответил Андрей
Полностью скопированная книга "Паскаль для школьников". Автор Ушаков. Не хорошо воровать.
Добавить свой комментарий:
|
|