На главную Самоучитель pascal Форум программистов онлайн Решение задач pascal Задачи pascal Поиск
03 Июл 13

Логический (boolean) тип данных в Паскаль


Комментарии :  1        Просмотры :  4818



В языке программирования паскаль существует логический тип данных , который позволяет решать разного рода задачи.

Все мелочи и нюансы мы рассмотрим в данной статье.

Логический тип данных используется в разных целях , но в основном это "флаги". Переменная такого типа может принимать в себя только два значения True и False ( истина и ложь соответственно ).
Значения переменных логического типа

Изначально ( после объявления переменной в блоке var ) логическая переменная имеет значение false.

Задавать значение логическим переменным можно подобным образом :
f:= 3 > 5;
f1:= 3 < 5;

В данном случае логическая переменная "f" примет ложное значение ( false ) , так как 3 меньше 5. А переменная f1 примет истинный результат ( true ) , так как 3 меньше 5.

Операции с логическими переменными :

С логическими переменными можно применять разные операции ( например : > , < и т.п )

ОбозначениеЗначение
<Меньше
>Больше
<=Меньше либо равно
>=Больше либо равно
=Равно
<>Не равно

f:= 3 <> 4;

Данная переменная примет значение true ( истина ) , так как 3 не равно 4.

Логические операции :

В языке паскаль также предусмотрены логические операции , с помощью которых можно объединять некоторые условия . Например 3 <> 4 и 6 > 4 - данное условие примет истинный результат , так как 3 не равно 4 и 6 больше 4.

Конъюнкция :

С данным видом логических операции сопряжено понятие и ( and ). В данном случае условие принимает истинное значение , когда все под условия являются истинными. А если хоть одно под условие принимает ложное значение , то всё условие принимает ложное значение.
f:= (8 > 5) and (7 = 7) and (7 <> 8);
f1:= (3 < 5) and (3 <> 3) and (9 = 9);

В данном случае переменная f будет истинной , так как все под условия ( в скобках ) истинные. А переменная f1 будет ложной , так как 3 = 3.

Дизъюнкция :

С этим выражением можно связать логическую связку или ( or ). В этом случае условие принимает истинное значение , когда хотя бы одно под условие истинное.
f:= (3 > 5) or (3 = 7) or (7 < 8);

В этом случае переменная f принимает истинные результат , так как 7 меньше 8.

Инверсия :

Инверсия включает в себя логическую связку не ( not ). В этом случае выражение принимает истинный результат , когда условие ложно . Например :
f:= not(3 = 7);

Переменная f будет истинной ( true ) , так как 3 не равно 7.

Возможно , вы задались вопросом о том , что такое флаг и как его использовать. Перед вами пример его использования. Нам нужно определить есть ли в последовательности из 3 чисел отрицательные.
program mypascal;
uses
crt;
var
a: array[1..3] of integer;
i:byte;
flag:boolean;
begin

randomize;
for i:= 1 to 3 do
a[i]:= random(21)-10;
for i:= 1 to 3 do
write(a[i],' ');
writeln(' ');
for i:= 1 to 3 do
if ( a[i] < 0 ) then
flag:= true;

if ( flag ) then
writeln('Есть отрицательные числа')
else
writeln('Нет отрицательных чисел');

end.


Рейтинг материала : ( 4 / 4 )
Сообщить об ошибке
Комментарии :  1        Просмотры :  4818

Поиск

Решение задач

Если вас интересует решение какой-либо задачи , то вы можете опубликовать
её условие на нашем сайте или форуме. И в скором времени другие пользователи помогут вам.

Опубликовать на сайте

Опубликовать на форуме

Опрос

Знаете ли вы другие языки программирования ?