- •1. Системы счисления
- •Десятичная система счисления
- •Двоичная система счисления
- •Восьмеричная и шестнадцатеричная системы счисления
- •Перевод чисел из любой системы счисления в десятичную
- •Перевод чисел из десятичной системы счисления в любую другую
- •2. Алгебра логики
- •2.1. Логические операции
- •Инверсия
- •Конъюнкция
- •Дизъюнкция
- •Эквиваленция (равнозначность)
- •Импликация
- •Антиконъюнкция
- •Антидизъюнкция
- •2.2. Нормальные формы
- •Конъюнктивная нормальная форма
- •Дизъюнктивная нормальная форма
- •3. Применение средств алгебры логики для описания функционирования устройств компьютера
- •Логические схемы
- •Построение логических схем
- •4. Практическая работа 1. Системы счисления
- •Вопросы для самоконтроля
- •5. Практическая работа 2. Алгебра логики
- •Решение логических задач средствами алгебры логики
- •Индивидуальное задание к модулю 1. Построение логических схем по заданным булевым выражениям
- •Приложение 1. Практическое занятие 1 «Системы счисления»
- •Приложение 2. Практическое занятие 2 «Алгебра логики»
- •Приложение 3. Индивидуальное задание. Модуль №1
- •Приложение 4
- •6. Введение в алгоритмизацию
- •7. Знакомство со средой Турбо Паскаль
- •7.1. Общие сведения
- •7.2. Запуск Турбо-Паскаля на выполнение
- •7.4. Работа с текстовым редактором Турбо-Паскаля
- •Клавиши перемещения курсора
- •Работа с блоками текста
- •8. Основы алгоритмизации
- •8.1. Алгоритм
- •8.2. Алгоритмические структуры
- •Самоконтроль
- •9.1. Алфавит языка
- •9.2. Арифметические выражения и правила их записи
- •Знаки операций
- •Операции div и mod
- •9.3. Типы данных
- •Целые типы
- •Логический тип
- •Символьный тип
- •Строковый тип
- •Вещественный тип
- •9.4. Стандартные функции
- •9.5. Структура программы на языке Паскаль
- •9.6. Описательная часть программы
- •9.7. Исполнительная часть программы
- •9.8. Оператор присваивания
- •9.9. Операторы ввода-вывода
- •Оператор ввода
- •Оператор вывода
- •9.10. Комментарии в программе
- •Самоконтроль
- •Задание
- •Пример программы линейной структуры
- •Приложение 1. Таблица вариантов задания №2
- •10. Ветвления
- •10.1. Операторы условия и перехода
- •Логический оператор
- •Операции отношения
- •Логические операции
- •10.2. Оператор выбора
- •Самоконтроль
- •Задание
- •Пример программы разветвленной структуры
- •Приложение 1. Таблица вариантов задания 3
- •11.2. Оператор цикла с постусловием
- •11.3. Оператор цикла с предусловием
- •11.4. Вложенные циклы
- •11.5. Оператор прерывания цикла
- •Самоконтроль
- •Задание
- •Пример программы циклической структуры
- •Приложение 1. Таблица вариантов задания 4
- •12. Операции с индексированными переменными
- •12.1. Массивы одномерные
- •12.2. Описание массивов
- •Ввод элементов массива
- •Вывод элементов массива
- •12.3. Обработка одномерных массивов
- •Самоконтроль
- •Задание
- •Пример программы обработки одномерного массива
- •Приложение 1. Таблица вариантов задания 5
- •13. Двумерные массивы
- •13.1. Матрицы
- •13.2. Описание двумерного массива
- •Ввод элементов двумерного массива
- •Вывод элементов двумерного массива
- •13.3. Обработка двумерных массивов
- •Самоконтроль
- •Задание
- •Пример программы обработки двумерного массива
- •Приложение 1. Таблица вариантов задания 6
- •Структура программы, содержащей процедуру (функцию)
- •14.2. Процедуры
- •14.3. Вложенные процедуры
- •Директива forward
- •14.4. Функции
- •Самоконтроль
- •Задание
- •Пример программы с использованием подпрограмм
- •Приложение 1. Таблица вариантов задания 7
- •15. Обработка строк текста
- •15.1. Символьные переменные
- •Фрагмент таблицы ASCII-кодов букв латинского алфавита
- •Фрагмент таблицы ASCII-кодов букв русского алфавита
- •15.2. Функции обработки символьных переменных
- •15.3. Строковые переменные
- •15.4. Функции обработки строковых переменных
- •15.5. Процедуры обработки строковых переменных
- •15.6. Примеры обработки строковых переменных
- •Самоконтроль
- •16. Структурированные типы данных
- •Записи
- •Самоконтроль
- •Задание
- •Пример программы использования массива записей
- •Приложение 1
- •Приложение 2. Таблица вариантов ИДЗ 2
9.2. Арифметические выражения и правила их записи
Арифметические выражения строятся из простых операндов связанных знаками арифметических операций:
y = a + b*2
Знаки операций
div – деление нацело; mod – остаток от деления; * - умножение; / - деление; - - вычитание; + - сложение.
Операции div и mod
Целочисленное деление div отличается от обычной операции деления тем, что возвращает целую часть частного, а дробная часть отбрасывается.
Например: 17 div 3 = 5 8 div 2 = 4 1 div 5 = 0
Взятие остатка от деления mod вычисляет остаток, полученный при выполнении целочисленного деления.
Например: 17 mod 3 = 2 8 mod 2 = 0 1 mod 5 = 1
При выполнении арифметических операций соблюдаются следующие правила:
1.два знака не могут следовать один за другим;
2.при выполнении арифметических операций соблюдается следующая иерархия (приоритет выполнения):
•стандартные функции;
•div, mod;
•*, /
•+, -
3.изменить иерархию можно с помощью скобок.
9.3.Типы данных
Переменные на языке Паскаль задаются своими именами (63 символа).
Имена переменных могут содержать малые и большие буквы латинского алфавита, арабские цифры и знак подчеркивания. Переменные, используемые в программе, обязательно должны
48
быть описаны. При описании переменных задаются имена и типы переменных. Тип – определяет объем оперативной памяти, выделяемой под хранение переменной. Для описания стандартных типов переменных используют зарезервированные английские слова. Помимо стандартных типов, можно строить и пользовательские типы данных, которые базируются только на стандартных типах.
Паскаль производит предварительную, инициализацию переменных. Все переменные, описанные в программе, обнуляются.
Целые типы
Название целого типа |
Диапазон значений |
Память |
|
|
(байт) |
||
|
|
||
|
|
|
|
Shortint |
-128 ÷ 127 |
1 |
|
(короткие целые) |
|||
|
|
||
|
|
|
|
Longint |
-231 ÷ 231-1 |
4 |
|
(удвоенные целые0 |
|||
|
|
||
|
|
|
|
Integer |
-32768 ÷ 32767 |
2 |
|
(обычные целые) |
|||
|
|
||
|
|
|
|
word |
0 ÷ 65535 |
2 |
|
(целые положительные) |
|||
|
|
||
|
|
|
|
Byte |
0 ÷ 255 |
2 |
|
(целые короткие положител.) |
|||
|
|
||
|
|
|
Верхнее граничное значение целочисленных переменных задано в Паскале как константа и имеет соответствующее имя:
Maxint = 32767 (215-1) Maxlongint = 231-1
Логический тип
boolean - логические переменные занимают 1 байт памяти, могут принимать 2 значения:
•True (истина)
•False (ложь)
Логические переменные могут использоваться только в логических выражениях.
Над данными логического типа нельзя выполнять обычные арифметические операции, для них определены логические операции и операции сравнения.
Для идентификаторов имеет место: True> False
Над логическими переменными возможны следующие логические операции: and (и)
Or (или) not (не)
49