Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Понятие типа данных в Турбо Паскаль




B110200 «Общественное здравоохранение»

B110400 «Медико-профилактическое дело»

B130100 «Общая медицина»

B130200 «Стоматология»

 

Предмет Информатика

 

Курс 1

 

ИНФОРМАЦИОННО –ДИДАКТИЧЕСКИЙ БЛОК

И МЕТОДИЧЕСКИЕ УКАЗАНИЯ

ДЛЯ СТУДЕНТОВ

К ПРАКТИЧЕСКМУ ЗАНЯТИЮ

Тема №

“ Данные логического типа в Turbo Pascal ”

 

Составитель

старший преподаватель Курманжанов А.Т.

 

Семей, 2011 г.

Информационно-дидактический блок и методические указания для студентов к практическому занятию на тему «Данные логического типа в Turbo Pascal»

 

обсуждена на заседании кафедры (курса) от 2011 года

Протокол №

 

Ответственный по курсу Буланова Р.К.

 

1. Тема: Данные логического типа в Turbo Pascal

2. Количество учебных часов: 3 академических часа (150 минут).

3. Актуальность темы (мотивация):

4. Цель занятия: Ознакомиться с логическими типами данных, значениями и логическими операциями Турбо Паскаль

5. Задачи обучения:

Изучить операций над логическими аргументами.

Рассмотреть пример программы на использование в Turbo Pascal типа данных Boolean

Составить простые программы с использованием логических операций.

6. Студент должен знать:

1) понятие типа данных, его предназначение и иерархию

2) логические типы данных, их размеры

3) логические выражения и операции отношения для них

4) правила для логических значении True (истина) и False (ложь)

Операции булевой алгебры над логическими типами

Простые программы с использованием логических операций

7. Студент должен уметь:

1) определять логические типы данных, их размеры и диапазон

2) приводить примеры логических выражений

3) составить простые программы с использованием логических операций

4) структурировано правильно распологать программу в Турбо Паскаль

5) проводить логические операции над логическими аргументами

8. Вопросы самопроверки:

а) по базисным знаниям:

б) по теме занятия:

1. Что определяет тип данных в Turbo Pascal?

2. Кто создал основу математической логики?

3. Какое название носит логический тип данных в Turbo Pascal?

4. Как записываются логические константы языка Turbo Pascal?

5. Какие операции используются для построения логических выражений?

Литература

 

Информационно-дидактический блок (аннотация, пособия)

Ι. Теоретическая часть

Язык программирования Паскаль популярен среди программистов по следующим причинам:

1. Прост для обучения.

2. Отражает фундаментальные идеи алгоритмов в легко воспринимаемой форме, что предоставляет программисту средства, помогающие проектировать программы.

3. Позволяет четко реализовать идеи структурного программирования и структурной организации данных.

4. Использование простых и гибких структур управления: ветвлений, циклов.

5. Надежность разрабатываемых программ.

Турбо Паскаль – это система программирования, созданная для повышения качества и скорости разработки программ (80-е гг.). Слово Турбо в названии системы программирования – это отражение торговой марки фирмы-разработчика Borland International (США).

Понятие типа данных в Турбо Паскаль

Для обработки ЭВМ данные представляются в виде величин и их совокупностей. С понятием величины связана такая важная характеристика, как ее тип.

Тип определяет:

· возможные значения переменных, констант, функций, выражений, принадлежащих к данному типу;

· внутреннюю форму представления данных в ЭВМ;

· операции и функции, которые могут выполняться над величинами, принадлежащими к данному типу.

В языке Паскаль тип величины задают заранее. Все переменные, используемые в программе, должны быть объявлены в разделе описания с указанием их типа. Обязательное описание типа приводит к избыточности в тексте программ, но такая избыточность является важным вспомогательным средством разработки программ и рассматривается как необходимое свойство современных алгоритмических языков высокого уровня.

Иерархия типов в языке Паскаль такая:

· Простые

o Порядковые

§ Целые

§ Логические

§ Символьные

§ Перечисляемые

§ Интервальные

o Вещественные

· Структуированные

o Массивы

o Строки

o Множества

o Записи

o Файлы

· Указатели

Логические типы данных

Прямое отношение к программированию имеет дисциплина, которая называется математической логикой. Основу математической логики составляет алгебра логики, или исчисление высказываний. Под высказыванием понимается любое утверждение, в отношении которого можно однозначно сказать, истинно оно или ложно. Например, «Луна - спутник Земли» - истинно; «5>3» - истинно; «Москва- столица Китая» - ложно; «1=0» - ложно. Истина или ложь являются логическими величинами. Логические значения приведенных выше высказываний однозначно определены; другими словами, их значения являются логическими константами. Логическое значение неравенства x < 0, где x – переменная, является переменной величиной. В зависимости от значения x оно может быть либо истиной, либо ложью. В связи с этим возникает понятие логической переменной.

Основы формального аппарата математической логики создал в середине XIX в. английский математик Джордж Буль. В его честь исчисление высказываний называют булевой алгеброй, а логические величины – булевскими.

Одиночные высказывания могут быть объединены в составные логические формулы с помощью логических операций.

Имеются три основные логические операции: отрицание, конъюнкция (логическое умножение) и дизъюнкция (логическое сложение).

Операция отрицания обозначается в математической логике значком и читается как НЕ. Это одноместная операция.

Например, (x = y) читается «не (x равно y)». В результате получится истина если x не равно y, и ложь, если x равно y. Отрицание изменяет значение логической величины на противоположное.

Операция конъюнкции обозначается значком & и читается как И. Это двухместная операция. Например, (x > 0) & (x < 1) читается «x больше 0 и x меньше 1». Данная логическая формула примет значение истина, если x Є (0,1), и ложь – в противном случае. Следовательно, результат конъюнкции – истина, если истинны оба операнда. Знак операции дизъюнкции V читается как ИЛИ. Например, (x = 0) V (x = 1) читается «x равно 0 или x равно 1». Формула дает истину, если x – двоичная цифра (0 или 1). Следовательно, дизъюнкция дает в результате истину, если хотя бы один операнд - истина.

В Турбо Паскале логические значения обозначаются служебными словами True (истина) и False (ложь), а логический тип данных носит название BOOLEAN.

Все реализации языка Pascal, в том числе и Turbo Pascal, вплоть до версии 6.0 содержали только один логический тип данных Boolean, элементы которого могут принимать лишь два вышеуказанных логических значения. В Turbo Pascal версии 7.0 добавлены еще три логических типа данных: ByteBool, WordBool и LongBool.

По аналогии с целыми и символьными типами, подразделяющимися на физические и логические, естественно предположить, что ByteBool, WordBool и LongBool — физические типы, Boolean — логический. Но в данном случае это не совсем так. Все четыре типа различны. Для Turbo Pascal логический тип Boolean более предпочтителен, так как он использует меньшее количество памяти, остальные типы были введены для обеспечения совместимости разрабатываемых программ с Windows, в которой значению False соответствует 0, а значению True – любое, отличное от 0, число.

 

Название логического типа данных Значению False соответствует Значению True соответствует Размер памяти для логического типа данных
Boolean Число 0   1 байт
ByteBool Число 0 Любое число, отличное от 0 1 байт
WordBool Число 0 в обоих байтах 2 байта
LongBool Число 0 во всех байтах 4 байта

Данные логического типа занимают один байт памяти. При этом значению false соответствует нулевое значение байта, а значению true соответствует любое ненулевое значение байта. Например: false всегда в машинном представлении: 00000000; true может выглядеть таким образом: 00000001 или 00010001 или 10000000.

Однако следует иметь в виду, что при выполнении операции присваивания переменной логического типа значения true, в соответствующее поле памяти всегда записывается код 00000001. В этих операциях операнды логического типа рассматриваются как единое целое - вне зависимости от битового состава их внутреннего представления. Кроме того, следует помнить, что результаты логического типа получаются при сравнении данных любых типов. Логические константы языка Turbo Pascal TRUE (истина) и FALSE (ложь) можно использовать в явном виде или обозначать именем в разделе CONST, например:

const

T=true;

F=false;

L=true;

Логическая переменная тоже может принимать два значения TRUE и FALSE. Логические переменные должны быть описаны предложением:

Var <имя_переменной>: boolean; (Variable переменная).

Например: var L,A,C:boolean;

Следует обратить внимание на то, что в разделе описания переменных необходимо определить тип переменных, используемых в программе. Например,

Var P,Q,R: Integer;

A,B: Char;

F1,F2: Boolean;

В разделе операторов логическому типу переменной можно присвоить значение логической константы, например:

L1:=true; L2:=false; L3:=L1;

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

Пример переменных с булевым значением

x:=true;

y:=5>3

Логические выражения

Логическое выражение есть логическая формула, записанная на языке программирования. Логическое выражение состоит из логических операндов, связанных логическими операциями и круглыми скобками. Результатом вычисления логического выражения является лишь одно из двух значений: true (истина) или false (ложь).

Логическими операндами могут быть логические константы, переменные, функции, операции отношения. Один отдельный операнд является простейшей формой логического выражения.

Для построения логических выражений используются операции отношения, которые обозначаются знаками:

· = (отношение на равенство),

· <> (отношение на неравенство),

· < (отношение меньше),

· > (отношение больше),

· <= (отношение меньше или равно),

· >= (отношение больше или равно).

Они необходимы для сравнения переменных, принимающих численные значения, т.е. операции отношения (рис.1) осуществляют сравнение двух операндов и определяют, истинно или ложно соответствующее отношение между ними.

 

 

Рис. 1.

 

Примеры записи отношений: Примеры вычисления отношений:

x<y;

Отношение Результат
12 >= 12 true
56 > 10 true
11 <= 6 false

a+h>=c/d;

abs(m-n)<=1

 

Операции отношения имеют самый низкий приоритет. Поэтому если операндами логической операции являются отношения, то их следует заключать в круглые скобки. Например, математическому неравенству 1 ≤ x ≤ 50 соответствует следующее логическое выражение: (1<=x) and (x<=50)

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

Над логическими типами возможны операции булевой алгебры (т.е.логические операции):

not - логическое отрицание «НЕ»

and - логическое «И»(логическое умножение - конъюнкция)

or - логическое «ИЛИ» (логическое сложение - дизъюнкция)

xor - логическое «исключающее ИЛИ» – она реализована для логического типа не во всех языках. Эта операция дает значение ИСТИНА, если оба операнда имеют логические значения.

Операции перечислены в порядке убывания приоритетов т.е. при вычислении логических выражений операции выполняются в следующем порядке: not, and, or, операции отношения, арифметические операции. Если порядок выполнения операций нужно изменить, то применяют скобки. Таким образом, сложные условия составляются из простых с помощью вышеуказанных логических операций. Логические операторы Not, And, Or и Xor работают, проверяя значения на 0 (False) или не 0 (True), но всегда возвращают результат с порядковым значением равным 0 или 1.

Результаты выполнения логических операций над переменными А и В логического типа приведены в таблице истинности:

A B not A A and B A or B A xor B
true true false true true false
true false false false true true
false true true false true true
false false true false false false

При составлении сложных условий операнды логического выражения берутся в скобки (это важно!).

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

  5>3; 2<=6; (x<2)and(x>=0); 2*x<>0. Следующий пример:
1) x<2*y; 2) true; 3) d; 4) odd (k); 5) not not d; 6) not (x>y/2); 7) d and (x<>y) and b; 8) (c or d) and (x = y) or not b,
здесь d, b, c – логические переменные; x, y – вещественные переменные; k – целая переменная.

 

Если d=true; b=false; c=true; x=3,0; y=0.5; k=5, то результаты вычисления будут следующими:

1) false; 5) true;

2) true; 6) false;

3) true; 7) false;

4) true; 8) true.

В примере использована логическая функция odd (k). Это функция от целого аргумента k, которая принимает значение true, если значение k нечетное, и false, если k четное.

Логический оператор присваивания имеет структуру, представленную на рис.2:

 

Рис. 2

Примеры логических операторов присваивания:

1) d:=true; x>y

2) b:=(x>y) and (k<>0);

3) c:=d or b and not (odd(k) and d).

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...