Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Оценка 5
Книги
doc
информатика
10 кл—11 кл +1
30.04.2018
Методические указания по дисциплине «Информатика и информационно-коммуникационные технологии» (Информатика и ИКТ) разработаны для изучения темы "Turbo Pascal" в учреждениях среднего профессионального образования 1 курса специальностей технического профиля. Методические указания охватывают изучение темы "Turbo Pascal" и полностью обеспечивает учебный процесс лекционным и практическим материалом.
Методичка.doc
Лекция 1..............................................................................................................................................3
Раздел 1. Основы алгоритмизации.................................................................................................3
§1. Понятие алгоритма. Свойства.................................................................................................3
Лекция 2.............................................................................................................................................5
§2. Способы записи алгоритма......................................................................................................5
Лекция 3..............................................................................................................................................8
§3. Типы алгоритмов.......................................................................................................................8
Лекция 4............................................................................................................................................11
§4. Метод пошаговой детализации..............................................................................................11
Лекция 5............................................................................................................................................12
Раздел 2..........................................................................................................................................12
§1. Критерий качества программы..............................................................................................12
Лекция 6............................................................................................................................................13
§ 2. Основные этапы подготовки задачи к решению на компьютере........................................13
Лекция 7............................................................................................................................................16
Раздел 3. Язык программирования Turbo Pascal........................................................................16
§1. Элементы языка. Структура программы..............................................................................16
Лекция 8............................................................................................................................................18
Структура программы..................................................................................................................18
Лекция 9............................................................................................................................................21
Выражения, операции, операнды.................................................................................................21
Лекция 10..........................................................................................................................................23
Типы данных в Turbo Pascal ........................................................................................................23
Лекция 11..........................................................................................................................................26
Задачи:...........................................................................................................................................26
Стандартные функции Turbo Pascal............................................................................................27
Лекция 12..........................................................................................................................................29
Тождественность и совместимость типов..................................................................................29
Лекция 13..........................................................................................................................................31
Вводвывод данных в Turbo Pascal..............................................................................................31
Управление символьным выводом на экране.............................................................................33
Лекция 14..........................................................................................................................................35
Операторы Turbo Pascal. Простые операторы. Составной........................................................36
Лекция 15..........................................................................................................................................39
Условный оператор IF..................................................................................................................39
Лекция 16..........................................................................................................................................42
Оператор выбора Case..................................................................................................................42
Лекция 17..........................................................................................................................................45
Циклические операторы Turbo Pascal.........................................................................................45
Лекция 18..........................................................................................................................................48
Применение циклических операторов для решения задач........................................................48
Лекция 20..........................................................................................................................................52
Массивы.........................................................................................................................................52
Инициализация массива................................................................................................................53
Заполнения массива по формуле.................................................................................................53
Задание массивов случайным образом........................................................................................54
Лекция 21..........................................................................................................................................55
Ввод массива с клавиатуры..........................................................................................................55
Вывод массива...............................................................................................................................56
Лекция 22..........................................................................................................................................57
Основные задачи по теме.............................................................................................................57
Лекция 23..........................................................................................................................................60 Сортировка массива.....................................................................................................................60
Лекция 24..........................................................................................................................................63
Итоговое занятие по массивам....................................................................................................63
Лекция 25..........................................................................................................................................64
Строки в Turbo Pascal...................................................................................................................64
Лекция 26..........................................................................................................................................66
Основные задачи по теме строки:................................................................................................66
Лекция 27..........................................................................................................................................68
Процедуры и функции пользователя...........................................................................................68
Лекция 28..........................................................................................................................................72
Основные задачи по теме подпрограммы:..................................................................................72
Лекция 29..........................................................................................................................................75
Лекция 31..........................................................................................................................................79
Множества в Turbo Pascal............................................................................................................79
Лекция 32..........................................................................................................................................82
Основные задачи по теме множества:.........................................................................................82
Лекция 33..........................................................................................................................................84
Записи в Turbo Pascal....................................................................................................................84
Лекция 34..........................................................................................................................................86
Задача по теме записи. Оператор With.......................................................................................86
Лекция 35..........................................................................................................................................89
Файлы.............................................................................................................................................89
Лекция 36..........................................................................................................................................92
Средства обработки файлов........................................................................................................92
Лекция 37..........................................................................................................................................96
Текстовые файлы..........................................................................................................................96
Лекция 38........................................................................................................................................102
Типизированные файлы..............................................................................................................102
Лекция 40....................................................................................................................................106
Графика в турбо паскале............................................................................................................106
Лекция 41........................................................................................................................................108
Модуль graph...............................................................................................................................108
Лекция 43........................................................................................................................................110
Основные процедуры модуля graph..........................................................................................110
Лекция 44........................................................................................................................................112
Основные процедуры модуля graph для построения графических фигур.............................113 Лекция 1.
Раздел 1. Основы алгоритмизации.
§1. Понятие алгоритма. Свойства.
Слово алгоритм появилось еще в 9в. Когда на латинский язык переводились
труды великого восточного ученого Мухаммеда Аль Хорезми. Он занимался
математикой и первым написал четкие, краткие указания, следуя которым
можно было решить уравнения первой и второй степени. На латынь имя Аль
Хорезми перевели как Алгоритм. И учителя, обучая решению уравнений первой
и второй степени, говорили: «Следуйте указаниям алгоритма», а потом просто :
«Следуйте алгоритму».
Теперь, алгоритм четкое предписание выполнить какие либо действия.
Если приглядеться, то алгоритмы окружают нас повсюду в жизни. Начиная
со школьной математики (алгоритм деления углов, приведения к общему
знаменателю и т.д.) до инструкции по пользованию микроволновой печью.
С алгоритмом обязательно связаны понятия исполнителя, и СКИ.
Исполнитель
алгоритма, тот, кто выполняет данный алгоритм.
Исполнителем может быть человек, компьютер, ЯП.
СКИ (система команд исполнителя) та совокупность действий, которые
может делать исполнитель.
Возникает вопрос: любая ли последовательность действий (или инструкция)
является алгоритмом?
Конечно, нет. Не всякая инструкция алгоритм, а только та, которая
обладает определенными свойствами.
Свойства алгоритма:
1. Понятность все шаги алгоритма должны содержатся в СКИ.
2. Дискретность алгоритм разбивается на последовательность отдельных
шагов, четко отделенных друг от друга. Только выполнив шаг можно
перейти к следующему.
3. Определенность не должно содержаться шагов с неоднозначным
смыслом.
4. Результативность алгоритм должен заканчиваться через конечное
5.
число шагов определенным результатом.
Массовость алгоритм создается не для одной конкретной задачи, а для
целого блока однотипных задач.
Привести примеры алгоритмов, не удовлетворяющих свойствам.
Исполнитель: робот;
СКИ: вперед, вправо, влево, назад;
Алгоритм «перехода к заданному месту»:
Вправо;
Вперед;
Влево;
Вперед; Вверх;
Влево.
Данный алгоритм не удовлетворяет свойству понятности, так как в
СКИ нет команды Вверх.
Алгоритм «взятия ручки с синей пастой с парты»
Зайти в класс;
Подойти к парте;
Взять ручку с синей пастой.
Данный алгоритм не удовлетворяет свойству определенности, так как
в не указано к какой именно парте подойти.
Алгоритм нахождения суммы двух чисел.
Прибавить 2+3;
Результат вывести на экран.
Данный алгоритм не удовлетворяет свойству массовости.
Алгоритм вывода на печать квадратов натуральных чисел от 1 до 15.
Задать х значение 1;
Пока х меньше 15 выводить на экран х2;
Данный алгоритм не удовлетворяет свойству результативности, так
как получили бесконечный цикл.
Алгоритм является основным фундаментальным понятием
информатики. Можно выделить три крупных класса алгоритмов:
вычислительные, информационные, управляющие.
Вычислительные алгоритмы, как правило, работают со сравнительно
простыми типами данных (числа, матрицы), но сам процесс вычисления
может быть долгим и сложным.
Информационные алгоритмы
представляют собой набор
сравнительно простых процедур (поиск, замена) но работают с большими
объемами информации.(базы данных)
Управляющие алгоритмы характеризуются тем, что данные к ним
поступают от внешних процессов, которыми они управляют. Результаты
работы данных алгоритмов представляют собой различные управляющие
воздействия. Лекция 2.
Вопросы: (отвечаем по цепочки, начиная с первой парты первого ряда)
Что такое алгоритм?
Перечислить все свойства алгоритма.
1. Охарактеризовать каждое свойство, привести примеры алгоритмов, не
удовлетворяющие этим свойствам.
§2. Способы записи алгоритма.
Существует четыре способа записи алгоритма.
1. Словесный
2. Псевдокод
3. Блоксхема (графический способ или символьная схема)
4. Язык программирования
Рассмотрим подробнее каждый способ.
Словесная запись используется чаще всего для исполнителя человека.
Проста понятна. Команды могут быть пронумерованы, для возможной ссылки на
них.
Пример: Кулинарный рецепт, инструкция.
Псевдокод система обозначений и правил для единообразной записи
алгоритма. Существуют специальные слова, смысл которых определен раз и
навсегда.
Пример:
Нач
Ввод(а, с);
У:=а+с;
Вывод(‘у=’,у);
Кон.
Блок схема графически способ записи алгоритма. Наиболее наглядна.
Команды алгоритма помещаются внутрь графических блоков, которые
соединяются линиями, указывающими порядок выполнения действий.
Рассмотрим основные графические блоки.
Символ процесса.
приводящих к изменению значений некоторых величин.
Отображает выполнение операций,
Символ, отображающий ввод вывод данных
Терминатор, Отображает начало или коней блоксхемы Символ, имеющий 1 вход и два альтернативных выхода. Внутри
ромба записывается условие, и, в зависимости от его
истинности, алгоритм проходит по той или иной ветвивыхода
Соединитель
Символ подпрограммы,
внутри указывается имя
подпрограммы (процедуры, функции) к которой необходимо
обратится.
Символ ввода с клавиатуры.
Символ дисплея.
Символ магнитного диска.
Символ вывода на печать
Пример:
Написать на блоксхеме алгоритм нахождения суммы двух чисел.
начало
Ввест
и
А,С
У:=А+С
вывес
ти У
конец Язык программирования совокупность символов, правил, обозначений для
описания алгоритма.
Пример: Turbo Pascal, Си и т.д. Лекция 3.
§3. Типы алгоритмов.
Все алгоритмы можно разделить на три типа.
1. Линейные
2. Разветвляющиеся
3. Циклические
К линейным алгоритмам относятся алгоритмы, все команды которых идут
последовательно друг за другом, не содержат условия и повторений.
Пример:
Написать алгоритм нахождения суммы (произведения, разности и т.д) двух
чисел.
К разветвляющимся относятся алгоритмы, в которых в зависимости от
какогото условия выполняется два или больше альтернативных действий.
Пример:
Написать алгоритм вычисления частного двух целых чисел.
Зам! На ноль делить нельзя!
Нель
зя де.
На 0
начало
Ввес
ти
А,
С
С
=0
У:=А/С
у
конец
К циклическим относятся алгоритмы, в которых одно или несколько
действий повторяются.
Эту повторяющуюся часть в алгоритме называют циклом, а операторы,
которые повторяются, называют телом цикла. Циклы бывают простые и
сложные.
Цикл называется сложным, если он содержит в себе еще один или несколько
циклов. Цикл находящийся внутри называется вложенным (внутренним), а цикл,
содержащий в себе др. циклы называется охватывающим (внешним). Чтобы
сложные циклы работали нормально, необходимо чтобы внутренний цикл
заканчивался раньше внешнего.
Все циклы можно разделить еще на циклы с заранее известным количеством
шагов (повторений) и циклы с неизвестным количеством шагов (итерационные) К первому типу относится цикл:
ДЛЯ им.пер.:=нач.зн. ДО кон.зн. ПОВТОРЯТЬ
НАЧЦИКЛА
Действия
КОНЦИКЛА
Пример: выводить на экран значение функции y=x2 для х из (0,15), где х
целое число.
Дано: целые числа от 0 до 15.
Результат: на экран вывести значение функции от данных аргументов, т.е.
должны получить
0 1 4 9 16 25 36 49… 225.
Алгоритм:
Присвоить х 0;
Вычислить y=x2
Вывести у
Присвоить х 1
Вычислить y=x2
Вывести у
…
Присвоить х 15
Вычислить y=x2
Вывести у
Алгоритм получился очень большим, что не удобно. Кроме того, он
содержит практически одни и те же действия. Рациональнее переписать
алгоритм следующим образом.
Начало
ДЛЯ Х:=0 ДО 15 ПОВТОРЯТЬ
НАЧЦИКЛА
У:=Х*Х;
ВЫВОД(У);
КОНЦИКЛА;
Конец
Итерационные циклы реализуются при помощи циклов ПОКА,
ПОВТОРЯТЬ ДО.
Рассмотрим цикл ПОКА.
ПОКА усл ПОВТОРЯТЬ
НАЧЦИКЛА
Действие
КОНЦИКЛА
Действие повторяется пока условие истинно, при ложном условии
происходит выход из цикла.
Пример: дана функция у=1/х, где х натуральное число. Выводить у, пока он
больше 0,066.
Алгоритм:
Присвоить х 1 Вычислить у
Вывести у, если он больше0,066
Присвоить х 2
Вычислить у
Вывести у, если он больше0,066
Присвоить х 3
Вычислить у
Вывести у, если он больше0,066
Когда закончится этот алгоритм, не знаем, следовательно, написанный
таким образом алгоритм не удовлетворяет свойству результативности, поэтому
перепишем его следующим образом:
Начало
Х:=1;
У:=х*х;
ПОКА у>0.066 Повторять
НАЧЦИКЛА
Вывод(у);
х:=х+1;
у:=х*х;
КОНЦИКЛА;
Конец
Дома Записать на псевдокоде и блок схеме:
1.Вычислить у=3х2+2а=7, где а=8.
2.Найти площадь прямоугольника со сторонами х, у. обратить внимание, что
стороны не могут быть отрицательными.
3.Протабуллировать функцию у=х3, для целого х из интервала (4;4).
4.Протабуллировать функцию у=1/х, для х из интервала (0,10) с шагом 0,1. Лекция 4.
Вопросы: (отвечаем по цепочки, начиная с первой парты первого ряда)
1. Какие типы алгоритмов вы знаете(перечислить)
2. Охарактеризовать каждый тип
В это же время 4 человека у доски показывают домашнее задание.
§4. Метод пошаговой детализации.
Развитие индустрии создания ПО приводит к более высоким требованиям к
программному продукту. Значительное увеличение сложности решаемых задач
приводит к увеличению размеров и сложности программ, что порождает
дополнительные трудности при их разработки и отладке.
Для разрешения возникших проблем в практике программирования выработан
ряд приемов и методов, которые принято называть методами структурного
программирования.
Под структурным программированием понимают такие методы разработки и
записи программ, которые ориентированы на максимальное удобство для
восприятия и понимания ее человеком. В связи с этим некоторые отдельные
фрагменты программы представляют собой некоторые логические структуры,
которые определяют порядок выполнения действий. Любая программа
получается построенная из стандартных логических структур.
Следование Последовательность групп операторов, выполн
Ветвление
Повторения (циклы)
Существенной особенностью всех этих структур являются то, что каждая из них
имеет только один вход и один выход, что и обеспечивает логически
последовательную структуру программы. Все эти структуры могут
располагаться в произвольном порядке и включать в себя друг друга.
При создании алгоритмов программ при структурном программировании
используют метод пошаговой детализации. Основа метода сначала
формулируются самая крупная (грубая) модель, потом она уточняется,
разбиваясь на более мелкие отдельные задачи. Решение основной задачи
сводится к соединению всех решений маленьких задач.
Пример,
Сравнить два числа.
1.Ввести а, в
2. Сравнить.
1.Ввести а, в
2.1 а=в
1.Ввести а, в
2.1 а=в
2.2 а=в
2.11 а>в
2.12 в<а Лекция 5.
Раздел 2.
§1. Критерий качества программы.
Компьютер универсальное средство обработки информации любого вида.
Качество работы компьютера зависит от слаженной работы аппаратной части и
программного обеспечения.
Аппаратная часть (hard were) монитор, системный блок со всеми своими
составляющими, принтер и т.д.
Программное обеспечение (soft were) совокупность программ, необходимых
для работы компьютера. Это и системное ПО, и прикладное. Системное По
управляет аппаратной частью, распределяет ресурсы, обеспечивает взаимосвязь
программ и т.д. Примером системного ПО являются ОС, утилиты, системы
тестирования. Прикладное ПО совокупность программ, которые выполняют
основную работу по преобразованию информации. Это всевозможные редакторы
(текстовые, графические), экспертные системы, игры и т.д.
Мы будем заниматься разработкой прикладных программ.
Программа это
Разработанная нами программа будет называется качественным, если он
удовлетворяет всем требованиям заказчика и следующим характеристикам:
1. Функциональность способность программы выполнять набор функций,
удовлетворяющих заданным или подразумеваемым потребностям
пользователя.
2. Надежность способность программы безотказно выполнять определенные
функции при заданных условиях в течение заданного периода времени.
3. Удобство включает в себя характеристики программы, которые
позволяют минимизировать усилия пользователя по применению
программного продукта, оценки результата.
4. Эффективность
отношение уровня услуг,
предоставляемых
пользователю к объему используемых ресурсов (времени, памяти)
5. Сопровождаемость это характеристики, позволяющие минимизировать
усилия по внесению изменений в программу, устранению ошибок.
6. Переносимость способность программного продукта быть перенесенным
из одной среды в другую (в частности, с одной аппаратной архитектуры
на другую)
7. Добротность программа должна быть добротно и рационально
организована, не слишком переусложнена.
Следует заметить, что создание программы, которая удовлетворяет всем
критериям, дело достаточно сложное, не всегда выполнимое. Однако, при
написании программ, необходимо максимально приблизить программу к
идеальному варианту. Лекция 6.
§ 2. Основные этапы подготовки задачи к решению на компьютере.
При написании программы, следует учитывать ряд факторов:
1. Какую работу должна выполнять программа.
2. Какими должны быть входные и выходные данные.
3. На каком языке должна быть написана программа.
Для написания программы, необходимо ее сконструировать собрать воедино
все требования к программе, решить, какие процессы необходимы для
преобразования входных данных в выходные, в каком порядке должны
выполнятся эти процессы.
Основные этапы конструирования программы:
1. Внешняя спецификация (постановка задачи).
Спецификация достаточно точное и полное описание задачи, которое человеку
понять легче, чем программу, написанную на языке программирования.
Определить назначение программы(что будет делать, как)
Определить входные данные.
Определить выходные данные.
После выполнения всех подпунктов составляем таблицу, в которой
описаны все возможн6ые ситуации и действия ЭВМ в каждом случае.
Ситуация Эффек
т
2. Разработка алгоритма.
Разрабатывается алгоритм методом пошаговой детализации, обязательно
необходимо следить за тем, чтобы алгоритм удовлетворял всем свойствам,
был рациональным.
3. Описание внутренней спецификации.
Уточнение алгоритма, выявление взаимосвязи между входной и выходной
информацией, исключение лишних входных данных.
4. Кодирование программы.
Перевод готового алгоритма на язык программирования, учитывая
особенности языка и структуры программы.
5. Тестирование и отладка программы.
Тестирование запуск программы на контрольных примерах. Контрольных
примеров может быть несколько, необходимо выбирать так, чтобы при
выполнении программа прошла все пути блок схемы алгоритма.
Отладка сложный и нестандартный процесс, приводящий к исключению
ошибок, рационализации программы. Сложные программы отлаживаются
отдельными фрагментами, кроме того, существуют специальные программы отладчики, которые позволяют выполнить программу по шагам и наблюдать
за изменением значений переменных.
Пример. Написать программу, которая реализует применения компьютера в
книжном магазине. Компьютер запрашивает стоимость книг, сумму денег,
внесенную покупателем, если сдачи не требуется, печатает «СПАСИБО!»,
Если денег внесено больше, то печатает «ВОЗЬМИТЕ СДАЧУ» и указывает
сумму, если денег не достаточно, то пишет об этом, указывая сколько
доплатить.
1. Внешняя спецификация (постановка задачи).
Программа предназначена для использования в книжном магазине, она
запрашивает стоимость книг, сумму денег, внесенную покупателем, если сдачи
не требуется, печатает «СПАСИБО!», если денег внесено больше, то печатает
«ВОЗЬМИТЕ СДАЧУ» и указывает сумму, если денег не достаточно, то пишет
«Доплатите», указывая сколько.
Входными данными являются стоимость покупки(stoim) и сумма
денег(summa), внесенная покупателем.
Выходные данные это сообщение на экране монитора («Спасибо»,
«Возьмите сдачу___ руб.», «Доплатите_____ руб.»).
Ситуация
Stoim=summa
Summa> stoim
Summa stoim
то вывод(Возьмите сдачу summastoim руб.)
иначе вывод(Доплатите stoim summa руб);
Кон. Начало
Stoim,
summa
(Sum
ma<
=0)
or(st
oim<
=0)
Не
коррек
тный
ввод.
Вводи
те
внимат
ельно!
3. Описание внутренней спецификации.
Связь входной и выходной информации, выявляется в формулах
summastoim
stoim –summa
Алгорит простой, понятный, уточнения не требует.
4. Кодирование программы.
Program KASSA;
Var stoim, summa: real;
Begin
Write(‘Введите стоимость покупки’);
Readln(stoim);
Write(‘Введите вносимую сумму’);
Readln(summa);
while (Summa<=0) or(stoim<=0) do
writeln(‘Не корректный ввод. Вводите внимательно!’)
if Summa=stoim
then writeln(‘Спасибо за покупку!’)
else if Summa>stoim
then writeln(‘Возьмите сдачу’, summastoim)
else Writeln(‘Доплатите’, stoim summa)
End.
5. Тестирование и отладка программы.
Контрольные примеры:
(stoim summa ):(12,12); (12,12); (23,23); (12,50); (50, 10) Лекция 7.
Раздел 3. Язык программирования Turbo Pascal.
§1. Элементы языка. Структура программы.
Одой из форм записи алгоритма является ЯП.
Любой компьютер работает по программе, записанной на ЯП искусственно
созданном языке, алфавит, словарный запас, структура которого удобны для
человека и понятны компьютеру.
ЯП совокупность символов, соглашений и правил, используемая для описания
алгоритма, данных.
ЯП
Низкого
высокого
(машинноориентированные языки)
(приближенные к естественным,
но полностью формализованы)
при записи алгоритма на ЯП необходимо четко знать правила написания и
использования элементарных языковых единиц.
Основа любого языка алфавит, синтаксические и семантические правила.
ЯП Turbo Pascal разработал в 196871гг.Николас Вирт.
Алфавит Turbo Pascal состоит из букв, цифр, специальных символов
Буква26 латинских строчных и 26 латинских прописных букв (НЕ различает!),_
подчеркивание
Цифра арабские цифры: 0 1 2 3 4 5 6 7 8 9
Специальные символы:
знаки операций:
+ * / = <> < > <= >= := @
ограничители:
. , ' ( ) [ ] (. .) { } (* *) .. : ;
спецификаторы:
^ # $
Буквы алфавита образуют слова. Существуют зарезервированные (служебные)
слова, имеющие определенный смысл и назначение Их нельзя менять, любая
неточность в их написании приводит к ошибке, их нельзя использовать в
качестве имен своих переменных, постоянных. Существует около 80 служебных
слов.
AND
ARRAY
BEGIN
CASE
FILE
FOR
FUNCTION
GOTO
OF
OR
PACKED
PROCEDURE
Чтобы программа обладала свойством массовости, в ней используются и
пользовательские слова имена переменных, постоянных, самой программы,
написанных функций и процедур и т.д. Для обозначения любого имени в программе, используется понятие
идентификатора.
Идентификатор это имя переменной, постоянной, функции, процедуры, типа,
самой программы и т.д.
Существуют стандартные идентификаторы(sin, cos, byte, integer и т.д.) и
идентификаторы пользователя.
Зам! Идентификатор в программе должен быть уникальным! (Иначе ошибка
duplicate identifier)
При написании идентификаторов, необходимо придерживаться следующих
правил:
Идентификатор начинается только с буквы или знака _.(исключение метки!)
Идентификатор может состоять из латинских букв, цифр, знака _
Наибольшая длина идентификатора 127 символов, но значащими являются
только 63.
Назначать идентификатор лучше по смыслу
Пример,
Является ли идентификатором?
Metka 12
2graph
Blok_56
Nomer.doma
сумма
Главными элементами любой программы являются операторы, переменные и
постоянные.
Оператор предложение ЯП, задающее полное описание некоторого действия,
которое необходимо выполнить.
Переменная это ячейка (или несколько) оперативной памяти, которой
присвоено определенное имя, и значение которой может меняться в течение
программы.
Постоянная это ячейка (или несколько) оперативной памяти, которой
присвоено определенное имя, и значение которой не меняться в течение
программы. Лекция 8.
Структура программы.
Каждая программа, написанная на ЯП Turbo Pascal, имеет определенную
структуру.
Program <имя программы>;
Раздел описания:
<Раздел подключения модулей>;
<Раздел описания типов>;
<Раздел описания меток>;
<Раздел описания постоянных>;
<Раздел описания переменных>;
<Раздел описания процедур и функций>;
begin
<Раздел операторов>;
end.
Любая программа начинается служебным словом Program, после которого
следует идентификатор пользователя имя программы.
Сама программа состоит из двух разделов: раздела описания и раздела
операторов.
Первый раздел может присутствовать в программе не всегда. Он включает в
себя описание всего того, чем мы будем пользоваться в программе. Это разделы
описания типов, меток, постоянных, переменных, процедур и функций и раздел
подключения модулей. Все эти разделы могут присутствовать не всегда и
располагаться в произвольном порядке, кроме раздела подключения модулей.
Если этот раздел есть, то он обязательно первый!
Рассмотрим подробнее каждый раздел.
<Раздел подключения модулей>;
МодульЭто библиотека в которой содержится библиотека описания типов,
постоянных, функций и процедур сгруппированных по нескольким признакам.
Модуль расширяет возможности программ.
В Turbo Pascal существуют следующие стандартные модули:
System стандартный модуль
Crt модуль управления звуком и отображением информации на экране
Graph графический модуль
Кроме того, пользователь может создать и свой собственный модуль.
При запуске среды программировании Turbo Pascal автоматически
подключается только модуль System . Для того чтобы использовать
возможности других модулей, необходимо эти модули подключить:
Uses < через запятую список подключаемых модулей>;
Пример,
Uses crt;
Uses crt, graph; <Раздел описания типов>;
Тип данных это совокупность всевозможных значений, которые могут
принимать данные.
ЯП Turbo Pascal имеет разветвленную систему типов, но, кроме того он
позволяет описывать пользователю и свои типы в разделе описания типов:
Type <имя типа >=<определение>;
Пример,
Type day=1..31;
Vector= array[1..12] of real;
<Раздел описания меток>;
В программе любой оператор можно пометить меткой для перехода на него в
определённый момент. Метка это имя и следующее за ним :. Все метки
используемые в программе должны быть описаны в разделе описания меток:
Label<имена используемых меток через запятую>;
Пример,
….
Label M1,M2;
…..
begin
…
M1:<оператор1>;
….
M2<оператор2>;
….
End.
<Раздел описания постоянных>;
Постоянные, используемые в программе описываются по следующим правилам:
Const <имя постоянной>=<значение>;
Пример,
Const n=100;
M=7;
<Раздел описания переменных>;
Переменные, используемые в программе, должны быть описаны по
следующим правилам:
Var <имя переменной>:<тип>;
Пример,
Var x, y: real;
Z: byte;
D,g,h: array [1..5] of string;
<Раздел описания процедур и функций>; В Turbo Pascal пользователь может создавать и использовать свои функции и
процедуры, которые необходимо описать в разделе описания функций и
процедур.
Procedure <имя процедуры>(список формальных параметров);
Type ..;
Var…;
Const …;
Begin
<раздел операторов>;
End;
Function <имя функции>( список формальных параметров):<тип результата>;
Type …;
Var …;
Const … ;
Begin
< раздел операторов >;
End;
Раздел операторов это основной блок программы, в нем описано все, что будет
делать программа. Этот раздел обязательно присутствует в каждой программе.
Раздел начинается служебным словом begin, далее следует список операторов.
Каждый оператор (кроме последнего) заканчивается ; и для удобства
записывается с новой строки. Раздел операторов заканчивается служебным
словом end. В конце программы обязательно ставится точка.
Для лучшего понимания программы в ней допустима запись комментариев
пояснений. Комментарии можно записывать в любом месте программы, где
допустим пробел, они пишутся на любом языке и обязательно заключаются в {}
или (* *).
Зам! Внутри комментарии не могут содержать знаки ограничители
{{так нельзя!}}
{и {так} нельзя!} Лекция 9.
Выражения, операции, операнды
Выражением называется конструкция ЯП, задающая порядок выполнения
действий над элементами данных.
Выражение состоит из операндов и операций.
Операнды величины и выражения, над которыми производятся действия
(переменные, постоянные, обращение к функциям).
Операции определяют действие, которое надо выполнить (+,,*,/ и д.т.)
Пример, х+у10
х, у, 10 операнды
+,
операции
Скобки не являются операцией, они расставляются для управления порядком
выполнения действий.
Пример,
(a+b)*c
a+b *c
Операции могут быть унарными (имеют один операнд, например, (у)) и
бинарными (имеют два операнда, например, х+у)
Все операции в Turbo Pascal делятся на : арифметические (+ * / div mod)
отношения(< > <= >= = <>)
логические(or, xor, and, not )
строковые
Все выражения в Turbo Pascal тоже делятся на арифметические, отношения,
логические, строковые.
Арифметическим называется выражение, составленное из операндов
арифметического типа, использующее только арифметические операции. Тип
значения выражения зависит от типа операндов и операций.
Выражением отношения называется словосочетание языка, в котором два
выражения связаны операциями отношения. Сравниваемые выражения могут
принадлежать любым скалярным типам, тип значения выражения всегда
Boolean.
Логическим называется выражение, составленное при помощи логических
операций. Тип значения выражения всегда Boolean.
Рассмотрим подробнее логические операции.
And соединяет два или больше операнда, имеет значение истина, если все
операнды истины.
Пример,
Const x=3;
Y=4;
Z=6;
(x>10) and (y+z<9) ложь
(x=3) and (y<=4) and (z>0) истина Or соединяет два или больше операнда, имеет значение истина, если хотя бы
один из операндов истинен, и значение ложь, если все ложны.
Пример,
Const x=3;
Y=4;
Z=6;
(x>10) or (y+z<19) истина
(x=3) or (y<=4) or (z>0) истина
(y=9) or (z<0) ложь
Xor соединяет два или больше операнда, имеет значение ложь, если все
операнды ложны или истины.
Пример,
Const x=3;
Y=4;
Z=6;
(x>10) xor (y+z<9) ложь
(x=3) and (y<=4) ложь
(y=9) or (z>=0) истина
Not унарная операция. имеет значение истина, если операнд ложен, и наоборот.
Пример,
Z=100;
Not(z>100) истина
Not(z>=10)ложь
Записать условия.
Хє(а,б);
х,у переменные разного знака
х,у переменные одного знака
хє(∞, 5][10, +∞);
Огромную роль в выражениях играет приоритет операций.
Приоритет операций очередность выполнения.
В Turbo Pascal операции имеют следующий приоритет операций.
Not
*, /, div, mod, and
+,, or, xor
=, <>, <, >, <=, >= Лекция 10.
Типы данных в Turbo Pascal .
Тип данных это множество величин, объединенных совокупностью допустимых
операций.
Каждый тип имеет свое диапазон значений и зарезервированное слово для своего
описания.
В языке Turbo Pascal существует развитая система стандартных (описанных в
модуле System) типов. Кроме того, пользователь может сам создать свой
собственный тип, используя служебное слово Type. Формат записи нового типа,
определенного пользователем следующий:
Type <имя типа>=<описание типа>;
Рассмотрим стандартные типы.
Типы данных Turbo Pascal.
Простые(скалярные)
Структурированные:
Вещественные
Порядковые:
Целые
логический
символьный
перечисляемые
интервальный
строковый string
регулярный array
записи record
множества set
файлыfile, text
К скалярным типам данных относятся типы, которые не содержат составных
частей.
Порядковые типы типы данных, для которых всегда можно назвать число,
непосредственно следующее за данным.
Целые типы представляют собой совокупность данных, которые могут быть
использованы в арифметических выражениях и занимают в памяти от 1 до 4
байт.
Идентификатор
типа
Byte
Word
Shotint
Integer
longint
Диапазон
Требуемая
память
1
[0..255]
2
[0..65535]
1
[128..127]
2
[32768..31767]
[2’147’483’648.. 2’147’483’647] 4
Над данными целого типа определены следующие арифметические операции:
+, , *, div, mod. Результатом всегда является целое число.
Над данными целого типа всегда определены следующие операции отношения:
<, >, <=, >=, <>, =.
Char символьный тип, представляет собой набор символов кодовой таблицы
ASCII. Во внутреннем представлении он занимает 1 байт, множество значений этого типа фиксировано и упорядочено. Все символы считаются
перенумерованными, от 0 до 255.
Константой символьного типа является один из допустимых символов, взятый в
апострофы. Если апостроф сам является символом, то апостроф, являющийся
значением константы, записывается дважды, например ‘7’ , ‘+’ , ‘F’ , ‘’’’ , ‘j’ ,
‘?’ .
Над данными символьного типа можно производить операции сравнения. Тот
символ больше, чей порядковый номер в ASCII больше.
Зам! В таблицы ASCII прописаны сначала управляющие символы, затем
специальные, потом идут цифры, латинские заглавные, потом маленькие буквы,
русские заглавные, русские маленькие буквы.
Пример.
‘A’<’a’
‘5’<’b’
5 <’b’НЕДОПУСТИМО!
‘A’<’A’
часто, при работе с символьным типом, применяются следующие стандартные
функции:
chr(x) преобразует выражение типа byte в символ, соответствующий выражению
по коду.
Chr(65)‘A’
Chr(7) писк
ord(ch) возражает ASCII код символа
ord(‘A’)=65
ord(‘A’)=128
pred(ch) возвращает предыдущий ch символ
pred(‘5’)=’4’
pred(‘a’)=’Z’
pred(‘о’)=’н’
pred(‘9’)=8 НЕДОПУСТИМО!
succ(ch) возвращает следующий за ch символ.
Boolean логический тип, определяет диапазон логических значений, который
содержит два элемента False (ложь) и True (истина). Во внутреннем
представлении он занимает 1 байт. Применяется в операциях отношения и
логический операциях. Над данными типа можно производить операции
сравнения.
False . .<максимальное значение>
При определении интервального типа нужно руководствоваться следующими
правилами:
".." рассматриваются как один символ, поэтому между точками пробелы
недопустимы;
левая граница не должна превышать правую границу.
Пример: Type month = 1 ..12;
lat = ’a’ .. ’z’;
var mo: month;
a,b:lat;
Переменные mo может принимать любые значения из диапазона 1..12, a,b из
’a’ .. ’z’. Выход из диапазона приведет к программному прерыванию.
Вещественный тип, строго говоря, имеет конечное число значений, которое
определяется форматом внутреннего представления вещественного числа.
Однако количество возможных значений вещественного числа настолько велико,
что сопоставить с каждым из них целое число не представляется возможным .
Во внутреннем представлении он занимает от 4 до 10 байт, диапазон возможных
значений от 1.5E45 до1.1E4932, точность представления данных 7..20 значащих
цифр.
Тип
Real
Single
Double
Extended
Вещественные числа
Диапазон
Знач. цифры
Размер в байтах
2.9Е39 ..1.7Е+38
1.5E45 .. 34E38
5E324 .. 1.7E308
1.6E4951..1.1E4932
1112
78
1516
1920
6
4
8
10
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Методические указания по теме «Turbo Pascal» (Информатика и ИКТ)
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.