
- •Содержание
- •Раздел 2.Программирование на процедурном языке turbo pascal 3
- •Раздел 2.Программирование на процедурном языке turbo pascal Лабораторная работа №1. Знакомство с интегрированной средой Turbo Pascal 7.0. Разработка первой программы.
- •Лабораторная работа № 2. Разработка программ, реализующих линейный процесс в среде Turbo Pascal 7.0.
- •Лабораторная работа № 3. Разработка программы, включающей различные форматы ввода/вывода данных средствами языка Pascal.
- •Лабораторная работа № 4. Вычисление алгебраических выражений с использованием стандартных процедур и функций языка Pascal.
- •Лабораторная работа № 5. Разработка программы для решения текстовой задачи в среде Turbo Pascal 7.0.
- •Лабораторная работа № 6. Вычисление заданного выражения при произвольных значениях переменных с использованием нескольких окон на одном экране. Работа с цветом в текстовом режиме.
- •Лабораторная работа № 7. Использование языка программирования для разработки программ вычисления математических выражений с использованием оператора if.
- •If выражение then оператор1
- •Лабораторная работа № 8. Разработка программы для решения текстовых задач, содержащих ветвление
- •Лабораторная работа № 9. Использование языка программирования для реализации разветвляющихся алгоритмов с использованием выражения – селектора в среде Turbo Pascal 7.0.
- •Лабораторная работа № 10. Разработка программ для реализации простых циклических алгоритмов средствами языка Pascal.
- •Лабораторная работа № 11. Разработка программ, включающих алгоритмы работы с числом
- •Лабораторная работа № 12. Реализация задачи табулирования функции на заданном отрезке в среде Turbo Pascal.
- •Лабораторная работа № 13. Вычисление суммы бесконечного ряда с заданной степенью точности в среде Turbo Pascal.
- •Лабораторная работа № 14. Разработка программ, включающих циклический процесс средствами языка Turbo Pascal.
- •Лабораторная работа № 15. Разработка программы реализации текстовой задачи, содержащей условия и циклы.
- •Лабораторная работа № 16. Разработка программы реализации задачи, содержащей одномерный массив данных.
- •Лабораторная работа № 17. Разработка программы реализации задачи, содержащей двумерный массив данных.
- •Лабораторная работа № 18. Методы сортировки массива в среде Turbo Pascal
- •Лабораторная работа № 19. Разработка программы работы со строками в среде Turbo Pascal
Государственное бюджетное образовательное учреждение Астраханской области среднего профессионального образования
«Астраханский государственный политехнический колледж»
(ГБОУ АО СПО «АГПК»)
УТВЕРЖДАЮ
Руководитель УМО, ст.методист
________________ О.П. Жигульская
от «______»__________________2012г.
МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫПОЛНЕНИЮ
ЛАБОРАТОРНО-ПРАКТИЧЕСКИХ РАБОТ
по дисциплине |
Основы алгоритмизации и программирования |
|||
(наименование дисциплины) |
||||
для студентов специальности |
230401 Информационные системы (по отраслям) |
|||
(наименование специальности) |
||||
|
III, IV, V семестры обучения |
|
РАССМОТРЕНО |
|
СОСТАВИЛ |
||||||||||
на заседании предметно-цикловой комиссии |
|
|
||||||||||
информатики и вычислительной техники |
|
Гончар Н.В. |
|
|||||||||
|
|
|
||||||||||
Протокол |
№ |
|
|
|
|
|
||||||
|
|
|
||||||||||
от « |
|
» |
|
2012года |
|
|
||||||
Председатель |
|
|
||||||||||
|
А.А.Петрищева |
|
|
|||||||||
|
|
|
||||||||||
ОДОБРЕНО |
|
|
||||||||||
Ст.методист по УМР отделения ИТ и дизайна |
|
|
||||||||||
|
В.С.Сорока |
2013 г
Содержание
Раздел 2.Программирование на процедурном языке turbo pascal 3
Лабораторная работа №1. Знакомство с интегрированной средой Turbo Pascal 7.0. Разработка первой программы. 3
Лабораторная работа № 2. Разработка программ, реализующих линейный процесс в среде Turbo Pascal 7.0. 7
Лабораторная работа № 3. Разработка программы, включающей различные форматы ввода/вывода данных средствами языка Pascal. 13
Лабораторная работа № 4. Вычисление алгебраических выражений с использованием стандартных процедур и функций языка Pascal. 16
Лабораторная работа № 5. Разработка программы для решения текстовой задачи в среде Turbo Pascal 7.0. 22
Лабораторная работа № 6. Вычисление заданного выражения при произвольных значениях переменных с использованием нескольких окон на одном экране. Работа с цветом в текстовом режиме. 26
Лабораторная работа № 7. Использование языка программирования для разработки программ вычисления математических выражений с использованием оператора IF. 30
Лабораторная работа № 8. Разработка программы для решения текстовых задач, содержащих ветвление 33
Лабораторная работа № 9. Использование языка программирования для реализации разветвляющихся алгоритмов с использованием выражения – селектора в среде Turbo Pascal 7.0. 40
Лабораторная работа № 10. Разработка программ для реализации простых циклических алгоритмов средствами языка Pascal. 44
Лабораторная работа № 11. Разработка программ, включающих алгоритмы работы с числом 49
Лабораторная работа № 12. Реализация задачи табулирования функции на заданном отрезке в среде Turbo Pascal. 53
Лабораторная работа № 13. Вычисление суммы бесконечного ряда с заданной степенью точности в среде Turbo Pascal. 57
Лабораторная работа № 14. Разработка программ, включающих циклический процесс средствами языка Turbo Pascal. 64
Лабораторная работа № 15. Разработка программы реализации текстовой задачи, содержащей условия и циклы. 68
Лабораторная работа № 16. Разработка программы реализации задачи, содержащей одномерный массив данных. 77
Лабораторная работа № 17. Разработка программы реализации задачи, содержащей двумерный массив данных. 84
Лабораторная работа № 18. Методы сортировки массива в среде Turbo Pascal 93
Лабораторная работа № 19. Разработка программы работы со строками в среде Turbo Pascal 99
Раздел 2.Программирование на процедурном языке turbo pascal Лабораторная работа №1. Знакомство с интегрированной средой Turbo Pascal 7.0. Разработка первой программы.
Цель работы:
освоение работы с клавиатурой и порядка работы на ПК в среде TURBO PASCAL
Оборудование:
аппаратная часит - ПЭВМ IBM PC/XT
программная часть - интегрированная среда TURBO PASCAL
задание на выполнение работы в электронном варианте
Теоретическая часть
Среда включает в себя: экранный редактор, компилятор, компоновщик, отладчик. Среда позволяет объединить процесс написания, компиляции, компоновки, отладки и запуска программ в одном процессе. Управление вычислительным процессом в среде осуществляется с помощью клавиатуры и мышью через систему меню и диалоговых окон. Для входа вызывается файл TURBO.EXE . После ее запуска появляется основной экран, содержащий следующие строки: строка меню (вход мышкой или клавишей F10); рабочее поле экрана; строка состояния. Строка меню содержит имена меню. Поле экрана предназначено для размещения открываемых окон. Строка состояния содержит перечень клавиш быстрого управления, а также то действие, которое выполняется в данный момент.
Все операции в среде осуществляются с помощью окон – выделенных участков экрана, в которых размещается информация. Четыре категории окно, отличающихся функциями и средствами управления: редактирования, окна диалога, информационные и меню. Редактирования предназначены для размещения и редактирования в них текстов программ наверху имя программы или NONAME00.PAS, если новая. Окна диалога используются для просмотра и задания различных режимов работы или необходимых параметров. Например, открыть существующий файл. Информационные окна служат для размещения в них данных, получаемых программой. Например, окна отладки, регистров и т.д.
Основное меню содержит следующие поля:
FILE – работа с файлами
NEW – создать новый файл
OPEN – открыть существующий файл
SAVE – сохранить
SAVE AS – сохранить с новым именем
SAVE ALL – сохранить все измененные
CHANGE DIR – изменить каталог для поиска и записи файлов
PRINT – печать
PRINT SETUP – установит параметры принтера
DOS SHELL – выход временно в DOS , для возврата EXIT
EXIT – выход
EDIT - редактирование
UNDO – восстанавливает первоначальное содержимое текущей строки
REDO – восстанавливает изменения, удаленные UNDO
CUT – удалить фрагмент
COPY – скопировать
PASTE – вставить
CLEAR – удалить без занесения в буфер
SHOW CLIPBOARD – сделать активным буфер
SEARH – поиск
FIND – найти фрагмент, условия поиска задаются в диалоговом окне
REPLASE – заменить фрагмент, на который задается в окне
SEARCH AGAIN – найти следующий фрагмент, заданный командой FIND
GO TO LINE NUMBER – перейти к строке с заданным номером
SHOW LAST COMPILE ERROR – определить место последней ошибки компиляции и сообщение
FIND ERROR – место ошибки, выданной на этапе выполнения, задается 16 адрес
FIND PROCEDURE – найти подпрограмму, имя в окне диалога, только во время отладки
RUN – выполнение
RUN – запускает программу
STEP OVER – трассировка без захода в подпрограммы
TRASE INTO – с заходом п\п
GO TO CURSOR – выполнить до строки, помещенной курсором
PROGRAM RESET – делает программу готовой для запуска с начала
PARAMETERS – задает параметры программы, как в командной строке.
COMPILE – компиляция
MAKE – перекомпилируются измененные модули и основной модуль. Компонуется программа
BUILD – как MAKE, но перекомпилируются все
DESTINATION – задает где разместить исполняемый файл в памяти (memory) или на диске (disk)
PRIMARY FILE – устанавливает основной файл для MAKE и BUILD из любого места
CLEAR PRIMARY FILE – отказывается от основного файла, он считается в активном окне
INFORMATION – выводит информацию о текущем файле
DEBUG – отладка
BREAKPOINTS – работать с окном точек останова (стр.205)
CALL STECK – активизирует окно п\п, имена всех п\п вызванных в данный момент
REGISTER – окно регистров, значения регистров и флагов ЦП
WATCH – окно отладки, где размещает параметры, значения которых вычисляются во время выполнения
OUTPUT – выходных результатов, результаты работы, все команды и сообщения ОС
USER SCREEN – пользователя, почти повторяет окно выходных результатов
EVALUATE\MODIFY – вычислить\модифицировать переменную или выражение
ADD WATCH – добавить новый параметр в окно отладки
ADD BREAKPOINT – добавить точку и условия останова
TOOLS – инструментальные средства
MESSAGES – окно сообщений, где помещает результаты
GO TO NEXT – переход к следующей строке окна сообщений
GO TO PREVIOUS – к предыдущей
OPTIONS – устанавливает параметры среды
WINDOW – окна
TILE – размещение окон встык
CASCADE – каскадом
CLOSE ALL – очищает поле экрана
REFRSH DISPLAY – обновляет экран среды, если программа ее изменила
SIZE\MOVE – изменить размеры окна, переместить его по полю
ZOOM – размеры окна на весь экран, если раскрыто, то уменьшить
NEXT – активизирует следующее по номеру окно
PREVIOUS – предыдущее
CLOSE – закрыть активное окно
LIST – список открытых окон, которые можно активизировать или закрыть
HELP – помощь
Основные правила написания текста программы.
Возможны два варианта работы по созданию программы:
Первый сеанс работы по написанию новой программы. В этом случае надо войти в главное меню (F10), выбрать пункт "File", нажать "Enter", далее в подменю выделить слово "New", нажать "Enter". В этом случае составляемой программе будет автоматически присвоено имя "NONAME.PAS", которое будет высвечено в правом верхнем углу окна EDIT. Чтобы дать программе какое-либо иное имя, следует в пункте "File" главного меню выбрать подпункт "Write to" и в появившемся окне набрать желаемое имя программы с указанием имени диска и, если необходимо, имени каталога. Выполнив перечисленное, следует нажать "Enter", после чего окно EDIT очистится, в верхнем правом углу окна будет выведено заданное название программы, а в левом верхнем углу будет мерцать курсор, приглашая к вводу с клавиатуры текста новой программы.
Редактируется (модифицируется) старая программа. В этом случае надо в пункте "File" главного меню выбрать подпункт "Load" (можно просто нажать клавишу F3), после чего появится небольшое окно, в котором надо указать имя файла, содержащего текст редактируемой программы (при необходимости, кроме имени файла указывается имя диска и имя каталога). Если имя файла точно не известно, нужно задать имя диска и шаблон выбора группы файлов (например, C:*.PAS или A:*.*). На экране появится список хранящихся на диске файлов и светлый прямоугольник- указатель, который следует поместить клавишами управления курсора на нужное имя в списке файлов и нажать "Enter". В результате в окне EDIT появится текст вашей программы и мигающий курсор будет сигнализировать о готовности текстового редактора к модификации программы.
После окончания сеанса набора текста программы или его редактирования, надо сохранить текст на магнитном диске, нажав F2.
Представим, что мы находимся в полностью очищенном окне редактора и курсор расположен в верхнем левом углу. Наберем текст программы, нажимая "Enter" конце каждой строки:
Program First;
Const A=5; B=7;
Var C:integer;
Begin
C:=A+B;
Writeln('C= ',C)
End.
Сначала проанализируем форму представления текста программы.
В редакторе Турбо-Паскаля текст программы можно набирать строками по 126 символов, однако просматривать такую программу будет неудобно, поскольку экран текстового редактора вмещает не более 77 символов в строке. Рекомендуется длину строки назначать так, чтобы она была короткой и логически законченной.
При написании программы особое внимание следует уделять не компактности текста, а удобству его чтения, "читабельности". Для этого текст пишут не в один абзац, а выделяют логически связанные группы операторов, разнося участки текста по горизонтали.
Алфавит языка Турбо-Паскаль состоит из полного набора символов клавиатуры, при этом не различаются строчные и прописные буквы (компилятору безразлична высота букв). Пробел в Турбо-Паскале используется в качестве разделителя отдельных конструкций языка, поэтому слитное написание текста будет ошибочным.
В первой строке текста обычно объявляется имя программы. Для этого используется слово PROGRAM, которое не может далее использоваться в программе для других целей:
Program Имя программы;
";" - этот разделитель в Паскале означает конец оператора или описания, его использование позволяет размещать несколько операторов в одной строке.
Во второй строке нашей программы находится раздел определения констант. В нем перечисляются используемые в программе константы и их значения. Слово "CONST" означает, что сразу за ним следует определение одной или нескольких констант. "Определить константу" значит указать ее имя и значение, которое не будет меняться на всем протяжении работы программы. Константа определяется так:
Const имя константы=значение;
Имя константы и ее значение разделяются знаком равенства.
После значения константы обязательно ставится точка с запятой. Значение константы должно оставаться неизменным в ходе вычислений. Попытка изменить значение константы будет расцениваться как ошибка. Константы бывают числовые, символьные и логические.
В третьей строке программы имеется слово "Var". Оно означает, что раздел определения констант закончился и начинается раздел описания переменных. Переменные используются в для хранения и передачи данных внутри программы. Каждая переменная, используемая в программе, должна быть описана, т.е. в разделе "Var" должны быть указаны имена переменных и типы хранимых в них данных:
Var имя переменной: тип переменной;
В Турбо-Паскале имя переменной должно начинаться с латинской буквы, состоять из латинских букв, цифр или знака подчеркивания "_". Имя должно состоять не более чем из 63 символов (больше не воспринимает компилятор). В имени переменной нельзя использовать пробел.
4.1.2. Идентификаторы
Идентификатор - это имя объекта программы. Объектами являются сама программа, модули, процедуры, функции, типы данных, метки, константы, переменные. К идентификаторам (именам) всех перечисленных объектов предъявляются те же требования, что и к имени переменной. Нельзя использовать один и тот же идентификатор для разных объектов. Например, нельзя использовать в программе переменную с именем, которое уже присвоено ранее какой-нибудь константе, процедуре, либо другой переменной. Не допускается использовать в качестве идентификаторов служебные слова, зарезервированные в языке Паскаль для других целей, например названия стандартных функций и процедур Паскаля.
4.1.3. Общая структура программ на языке Паскаль
Программы на Паскале имеют такой общий вид:
Program Имя программы
Раздел описаний
Begin
Раздел операторов
End.
Слова PROGRAM, BEGIN и END выделяют 2 части программы: раздел описаний и раздел операторов. Такая структура обязательна. Любой объект, используемый в программе, должен быть учтен в разделе описаний. Иными словами, в разделе описаний должны быть перечислены имена всех используемых в программе меток, констант, нестандартных типов данных, переменных. Кроме того, в разделе описаний приводятся тексты функций и процедур. Раздел операторов - это основная часть программы, здесь содержатся команды, составляющие программу.
Программа, написанная по правилам стандартного языка Паскаль, должна иметь в своем полном варианте (когда в ней задействованы все виды программных объектов) следующую структуру:
Program имя программы;
Uses Список используемых модулей
Label Список меток из основного блока программы
Const Определение констант программы
Type Описание типов
Var Описание переменных
Procedure Текст процедуры
Function Текст функции
Begin
Основной блок программы
(раздел операторов)
End.
Некоторые из перечисленных блоков раздела описаний могут отсутствовать за ненадобностью, но оставшиеся должны следовать в указанной последовательности.
Практическая часть
Пример:
Program treyg (input, output);
Var a,b,c,p,s:real;
Begin
Read(a,b,c);
P:=(a+b+c)/2;
S:=sqrt(p*(p-a)*(p-b)*(p-c));
Write(‘s=’,s:4,’p=’,p);
End.
Задания для самостоятельного выполнения
Ознакомиться с порядком работы на ПК
Изучить инструкцию по технике безопасности при работе на ПК
С
оставить программу вычисления площади треугольника по формуле Герона
где p=(a+b+c)/2
Набрать программу на языке PASCAL, проверить и исправить ее при наличии ошибок;
Выполнить трансляцию программы. При наличии ошибок внести исправления;
Выполнить программу и проверить правильность работы программы на тестовом варианте исходных данных;
Ответить на контрольные вопросы.
Результаты выполнения практической работы оформить в виде отчета.
Контрольные вопросы
Что такое язык программирования? Какие языки программирования вы знаете?
Что такое интегрированная среда? Для чего она используется?
Какие команды входят в меню среды TURBO PASCAL?
Что такое транслятор? Как оттранслировать программу на языке PASCAL?
Как сохранить программу на внешнем носителе?