Учебно-методическое пособие для студентов специальности 1-08 01 01 «Профессиональное обучение
Лабораторная работа № 7 ПРОГРАММИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ
Download 0.99 Mb. Pdf ko'rish
|
Osnovy algoritmizacii i programmirovaniya
94 Лабораторная работа № 7 ПРОГРАММИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ ПОЛЬЗОВАТЕЛЬСКИХ ПРОЦЕДУР И ФУНКЦИЙ Цель работы: получить практические навыки в написании под- программ в виде процедур и функций, изучить механизм передачи параметров в процедурах и функциях. Теоретические сведения В практике программирования часто встречаются случаи, когда по ходу выполнения программы приходится выполнять одни и те же действия но при различных исходных данных. Чтобы исключить повторение одинаковых записей и сделать тем самым программу проще и понятнее, можно выделить эти повторяющиеся действия в самостоятельную часть программы – подпрограмму, которая мо- жет быть использована многократно по мере необходимости. Подпрограммой называют обособленную, оформленную в виде отдельной синтаксической конструкции и снабженную именем часть программы. Использование подпрограмм позволяет, сосредо- точив в них подробное описание некоторых операций, в остальной программе только указывать имена подпрограммы, чтобы выпол- нить эти операции. Возможны неоднократные вызовы подпрограмм из разных участков программы, причем при вызове подпрограмме можно передать некоторую информацию (различную для разных вызовов), чтобы одна и та же подпрограмма выполняла решение подзадачи для разных случаев. За наличие подпрограмм как средства структурирования про- грамм язык программирования Pascal называется процедурно- ориентированным. Подпрограммы в ПаскальАВС реализованы по- средством процедур и функций. Процедуры и функции различаются назначением и способом их использования. Процедура – это независимая именованная часть программы, которую можно вызвать по имени для выполнения определенных действий. Структура процедуры повторяет структуру программы. Процедура не может выступать в качестве операнда в выражении. 95 Упоминание имени процедуры в тексте программы приводит к акти- визации процедуры и называется ее вызовом. Например, Read(F) чи- тает с клавиатуры некоторое значение и присваивает его переменной F, Delay(5) вызывает задержку выполнения программы на 5 мс. Функция аналогична процедуре, но имеются два отличия: функция передает в точку вызова скалярное значение; имя функции может входить в выражение в качестве операнда. Например, функция Сhr(б5) возвращает в точку вызова символ А (код ASCII – 65), Sqr(X) – возводит в квадрат значения целого или вещественного Х и возвращает в точку вызова вычисленное значение квадрата числа Х. Процедуры и функции в Паскале (как и во многих других языках программирования) являются удобным средством для однократного автономного описания тех фрагментов алгоритма, которые повто- ряются в разных его частях. Такие описания образуют раздел, кото- рый должен быть последним из числа разделов описаний програм- мы. Для выполнения описанных в этом разделе фрагментов алго- ритма в разделе операторов программы должны содержаться обращения к соответствующим процедурам и функциям. Все процедуры и функции языка ПаскальАВС делятся на две группы: встроенные (стандартные) и определенные пользователем. Встроенные входят в состав языка и вызываются для выполнения по строго фиксированному имени (например, Writeln(‘s=’,s); Readln(a,b,c);). Определенные пользователем процедуры разрабаты- ваются и именуются самим пользователем. Все стандартные средства располагаются в специализированных библиотечных модулях. Для использования стандартной процедуры или функции к программе подключается тот или иной специализи- рованный библиотечный модуль, в который входит данная стан- дартная процедура или функция, для чего имя специализированного библиотечного модуля указывается в разделе uses. Затем в про- грамме осуществляется вызов процедуры или функции, для чего записывается ее имя и указываются фактические параметры, например, Sin(Х), Chr(125), Inс(Х,5). До сих пор рассматривались стандартные процедуры и функции, которые входят в модуль Sys- tem. При выполнении программы к каждой программе этот модуль подключается автоматически, поэтому раньше не записывалась строка Uses. Так как после выполнения функции ее значение при- сваивается имени, то имя функции используется в выражении. |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling