Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Логические операции и таблицы истинности



A B F

F = A & B.

Логическое умножение КОНЪЮНКЦИЯ - это новое сложное выражение будет истинным только тогда, когда истинны оба исходных простых выражения. Конъюнкция определяет соединение двух логических выражений с помощью союза И.

 

 

A B F

F = A + B

Логическое сложение – ДИЗЪЮНКЦИЯ - это новое сложное выражение будет истинным тогда и только тогда, когда истинно хотя бы одно из исходных (простых) выражений. Дизъюнкция определяет соединение двух логических выражений с помощью союза ИЛИ

 

A Не(А)

Логическое отрицание: ИНВЕРСИЯ- если исходное выражение истинно, то результат отрицания будет ложным, и наоборот, если исходное выражение ложно, то результат отрицания будет истинным/ Данная операция означает, что к исходному логическому выражению добавляется частица НЕ или слова НЕВЕРНО, ЧТО

 

 

A B F

Логическое следование: ИМПЛИКАЦИЯ - связывает два простых логических выражения, из которых первое является условием (А), а второе (В)– следствием из этого условия. Результатом ИМПЛИКАЦИИ является ЛОЖЬ только тогда, когда условие А истинно, а следствие В ложно. Обозначается символом " следовательно" и выражается словами ЕСЛИ …, ТО …

 

 

A B F

Логическая равнозначность: ЭКВИВАЛЕНТНОСТЬ - определяет результат сравнения двух простых логических выражений А и В. Результатом ЭКВИВАЛЕНТНОСТИ является новое логическое выражение, которое будет истинным тогда и только тогда, когда оба исходных выражения одновременно истинны или ложны. Обозначается символом " эквивалентности"

 

 

Порядок выполнения логических операций в сложном логическом выражении:

1. инверсия

2. конъюнкция

3. дизъюнкция

4. импликация

5. эквивалентность

Для изменения указанного порядка выполнения операций используются скобки.

 

Условный оператор if

Условный оператор задает выбор выполнения операторов в зависимости от какого-либо условия.

Общий вид:

1 форма:

if логическое выражение then оператор;

да
нет
логическое выражение
оператор1

 

 


Действие if..then: вычисляется логическое выражение; если его значение TRUE, то выполняется оператор1, если его значение FALSE – продолжается программы.

2 форма:

if логическое выражение then оператор1 else оператор2;

да
нет
логическое выражение
оператор1
оператор2

 

 


Действие оператора if..then..else: вычисляется логическое выражение; если оно TRUE, то выполняется оператор1, если FALSE – выполняется оператор2.

Правило:

  1. Перед else точка с запятой не ставится.
  2. После then и после else должен стоять только один оператор. Если надо поместить туда несколько операторов, то используют составной оператор. Составной оператор – это совокупность операторов, заключенных в операторные скобки begin.. end;

 

Задание:

1. Написать блок-схему и программу для вычисления значение y по формуле:

2. Написать блок-схему и программу, по которой меньшее из двух чисел будет умножено на большее, а большее разделено на меньшее.

3. Написать блок-схему и программу для вычисления значение y по формуле:

4. Написать блок-схему и программу, которая сообщает, принадлежит ли вводимая точка с координатами (x, y) указанной области.

 


Оператор безусловного перехода.

Оператор безусловного перехода служит для изменения порядка выполнения действий; часто используется с оператором if.

Общий вид:

goto< метка>;

Действия: оператор goto передает управление на оператор, помеченный меткой.

Метка – это идентификатор или число, стоящее перед оператором и отделенное от него двоеточием. Метка должна быть обязательно описана перед использованием. Для описания используют оператор label.

Особенности меток:

1. Описание метки должно располагаться в разделе описания данных.

2. Цифровая метка может быть целым числом в диапазоне от 0 до 9999

3. Нельзя переходить по метке внутрь структурных операторов (условных операторов, циклов).

Например: Написать программу для нахождения корня уравнения ax+b=0.

uses crt;

label 1;

var a, b, x: real;

begin

clrscr;

writeln('Введите a, b');

read(a, b);

if a=0 then

begin

writeln('Неправильный ввод данных a=0');

goto 1;

end;

writeln('x=', -b/a);

1:

end.

 

Условный оператор case..of

 

Условный оператор case..of используется, когда требуется большое количество ветвлений.

Общий вид:

Case переменная of

значение1: оператор1;

значение2: оператор2;

..

значение n-1: оператор n-1;

else операторn;

end;

Действие оператора: выполняется первый оператор из списка, значение которого совпало со значением переменной; если же нет совпавших значений – выполняется операторn, стоящий за else.

Правила:

1. Веткаelse оператор n; может отсутствовать.

2. Если после: необходимо выполнить несколько операторов, то они группируются в составной оператор с операторными скобками begin..end;.

 

Задание: Написать блок-схему и программу для выполнения простейших операций (+, -, *, /).

 

program j;

uses crt;

var a, b, rez: real; op: char;

begin

clrscr;

writeln('Введитеоперацию');

read(op);

writeln('Введите 2 числа');

read(a, b);

case op of

'+': begin rez: =a+b; writeln('Результат=', rez); end;

'-': begin rez: =a-b; writeln('Результат=', rez); end;

'*': begin rez: =a*b; writeln('Результат=', rez); end;

'/': begin rez: =a/b; writeln('Результат=', rez); end;

else writeln('Неизвестная операция');

end;

end.

 

Операторы цикла.

Цикл – это конструкция, позволяющая организовать выполнение блока операторов определенное количество раз. Бывают циклы с заранее известным числом повторений и неизвестным числом повторений.


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-07-12; Просмотров: 614; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.031 с.)
Главная | Случайная страница | Обратная связь