- •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
6. Введение в алгоритмизацию
Программирование – интересная, живая, быстро развивающаяся наука. Первые шаги при обучении программированию для многих оказываются очень нелегкими. Главное качество программиста – хорошее логическое мышление – развивается только в упорной и кропотливой работе.
Алгоритмический язык Паскаль был разработан в 1973 г. швейцарским математиком Никлаусом Виртом для обучения студентов структурному программированию. Язык получил свое название в честь французского математика Блеза Паскаля (1623-1662 гг.). В 1984 г. бывший студент Никлауса Вирта, французский математик Филип Кан, основал фирму Borland International и начал продавать по почте разработанную им программу - среду программирования Turbo-Pascal для ПК. Предлагаемый им продукт был настолько удачен, что только за первый месяц продаж поступили заказы общей стоимостью 150 000$. Турбо-Паскаль вскоре вывел фирму Borland в ряды основных производителей программного обеспечения.
Общеизвестна роль вычислительной техники в различных сферах человеческой деятельности. Особенно популярны персональные компьютеры (ПК), обладающие высокой производительностью и не требующие от пользователя глубокого знания процессов, происходящих в компьютере во время вычислений. Без преувеличения можно сказать, что появление ПК в середине 70-х годов и бурное их распространение в наше время открыло новую эру в массовом использовании вычислительной техники людьми всех рангов и профессий. Человечество заметно переходит от экономики, основанной на тяжелой промышленности, к экономике с компьютеризированной технологией, средствами связи и услугами.
Выбор Паскаля для обучения программированию объясняется рядом его достоинств. В частности, этот язык полно отражает идеи структурного программирования. Во-вторых, Паскаль предоставляет гибкие возможности в отношении используемых структур данных. Большое внимание в языке уделено вопросу повышения надежности программ: средства языка позволяют осуществлять достаточно полный контроль правильности использования данных различных типов и программных объектов, как на этапе трансляции программ, так и на этапе их выполнения. Благодаря перечисленным возможностям, Паскаль широко применяется не только в области обучения, но и в практической работе.
7. Знакомство со средой Турбо Паскаль
7.1. Общие сведения
Большую часть мирового парка ПК составляют компьютеры, у которых внутренний язык микропроцессора совместим с набором команд первых персональных компьютеров фирмы IBM (IBM PC), что позволять выполнять на них одни и те же программы. Такие компьютеры называют IBM-совместимые. Их насчитывается сотни миллионов, и благодаря своей массовости они стали стандартом ПК. Массовость IBM-совместимых ПК обусловило то, что фирмы-разработчики программ стали ориентировать свою продукцию на эти компьютеры, и в результате программное обеспечение, ориентированное для использования на IBMсовместимых ПК, также стало стандартом и используется во всем мире. Примером таких программ, ставших мировым стандартом, является система программирования Турбо-Паскаль.
Поясним понятие «система программирования». Как известно, программа, написанная на каком-либо алгоритмическом языке, перед выполнением на компьютере должна быть транслирована в машинные коды, для чего используются программы-переводчики (трансляторы). В середине 80-х годов разработчики программного обеспечения перешли от создания чистых трансляторов к более удобным для пользователей системам программирования, включавшим в себя, помимо транслятора, удобные средства написания, редактирования и отладки программ. К наиболее известным системам программирования относятся Turbo-Pascal, Turbo-C, Turbo-Basic, Quick Basic и др. Система программирования
38
может рассматриваться как компилятор соответствующего языка, дополненный инструментальной оболочкой для быстрой разработки программ.
7.2. Запуск Турбо-Паскаля на выполнение
Турбо-Паскаль – это многофайловая программа, состоящая из одного главного файла и нескольких вспомогательных, подключаемых к работе по мере необходимости. Обычно все файлы, относящиеся к Турбо-Паскалю, хранятся на диске в каталоге под произвольным именем: Pascal, T_Pascal, TP55, TP70 и т.п. Файлы системы должны сохранять имена, данные им фирмой-разработчиком. Основные файлы, обеспечивающие работу Турбо-Паскаля, достаточно малы, что позволяет хранить их на одной дискете. Как минимум, требуются 2 файла
– Turbo.exe и Turbo.tpl. Это базовый набор для разработки программ, не использующих графический режим. Для работы Турбо-Паскаля требуется не менее 512 Кбайт оперативной памяти.
Главный файл, TURBO.EXE, хранит ядро системы Турбо-Паскаль. Вспомогательный файл TURBO.TPL содержит резидентную библиотеку модулей.
Чтобы инициировать работу Турбо-Паскаля, надо запустить программу из файла Turbo.exe на выполнение. Это можно сделать, либо введя с клавиатуры имя TURBO в командной строке DOS, либо с помощью Norton Cоmmander'a. В последнем случае надо в текущем каталоге поместить курсор на имя файла Turbo.exe и нажать клавишу «Enter». При запуске ТурбоПаскаля, на экране появляется следующее изображение:
Вид основного экрана Турбо-Паскаля Экран Турбо-Паскаля содержит 4 основные части, сверху вниз:
•главное меню (File, Edit, Run, Compile, Options, Debug, Break/Watch);
•окно редактирования (Edit) со служебной информацией редактора вверху;
•окно просмотра (Watch) для отладки программ;
•строку подсказки о назначении функциональных клавиш (F1..F10).
7.3.Назначение функциональных клавиш системы Турбо-Паскаль
Функциональные клавиши, помеченные надписями F1...F10, занимают на клавиатуре верхний ряд. С каждой из этих клавиш связана определенная команда, управляющая средой (например, считывание информации с диска или запись ее на диск). Поскольку число потребных команд может быть больше имеющегося количества функциональных клавиш, назначение F-клавиш можно разнообразить при помощи двух специальных клавиш: Alt (Alternative, дополнительная) и Ctrl (Control, управление). Клавиши Alt и Ctrl используются в
39