Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Скалярные процедуры и функцииСодержание книги
Поиск на нашем сайте
Dec(X{,n}) — процедура уменьшает значение целочисленной переменной Х на величину n. При отсутствии необязательного параметра n значение Х уменьшается на единицу. Inc(X{,n}) — процедура увеличивает значение целочисленной переменной Х на n. При отсутствии необязательного параметра n значение Х увеличивается на единицу. Pred(S) — функция возвращает элемент, предшествующий S в списке значений типа. Тид результата совпадает с типом параметра. Если предшествующего S элемента не существует, возникает программное прерывание. Succ(S) — функция возвращает значение, следующее за S в списке значений типа. Тип результата совпадает с типом параметра. Если следующее за S значение отсутствует, возникает программное прерывание. Odd(I: integer): boolean — возвращает True, если I нечетное, и False, если I четное. Функции преобразования типов Chr(I:byte):char — возвращает символ стандартного кода обмена информацией с номером, равным значению I. Если значение параметра больше 255, возникает программное прерывание. Ord(S):longint — возвращает порядковый номер значения S в множестве, определенном типом S. Round(X:real):longint — возвращает значение X, округленное до ближайшего целого числа. Trunc(X:real):longint — возвращает ближайшее целое число, меньшее или равное X, если Х >= 0, и большее или равное X, если Х< 0. Процедуры управления программой Delay(I:word) — задержка выполнения программы на I мс. Exit — выход из выполняемого блока в окружающую среду. Если текущий блок является процедурой или функцией, выход производится во внешний блок. Если Exit указана в операторной части основной программы, программа прекращает работу, и управление передается системе программирования. Halt(N:word) — прекращение выполнения программы и передача управления системе программирования (если выполнялся.PAS-файл) или DOS (если выполнялся.ЕХЕ-файл). N — код завершения программы, передаваемый в операционную систему. RunError(ErrCode:word) — прекращение выполнения программы и генерация ошибки времени выполнения. ErrCode — параметр типа byte, содержащий номер ошибки. Специальные процедуры и функции FillChar(P,Dl,Z) — заполняет побайтно область основной памяти заданным значением (заполнителем). Является одной из самых быстродействующих процедур. Область начинается с первого байта указанной переменной Р и имеет размер, заданный параметром Dl. Р — переменная любого типа; Dl — целочисленное выражение, указывающее длину; Z — заполнитель, выражение литерного или байтового типа. Hi(I:integer):byte — выделяет старший байт значения I и помещает его в младший байт результата. Старший байт результата равен 0. Lo(I: integer): byte — выделяет младший байт значения I и помещает его в младший байт результата. Старший байт результата равен 0. SizeOf(IT:integer):word — вычисляет объем основной памяти в байтах, которую занимает указанная переменная или тип. IT — идентификатор переменной или типа данных. Swap(I: integer): integer — обменивает содержимое младшего и старшего байтов целочисленного выражения, заданного параметром I типа integer. Вызов стандартной процедуры или функции Для использования стандартной процедуры или функции к программе подключается тот или иной специализированный библиотечный модуль, в котором записана данная стандартная процедура или функция (исключение составляет модуль System, так как он подключается к программе автоматически), для чего имя специализированного библиотечного модуля указывается в разделе uses. Затем в программе записывается вызов процедуры или функции, для чего записывается ее имя и указываются фактические параметры, например: Pi, Sin(X), Chr(125), Inc(X,5). Так как после выполнения функции ее значение присваивается имени, то имя функции используется в выражении. Порядок выполнения работы 1. Изучить теоретические сведения по теме: “Написание программы на Паскале с использованием встроенных функций ”. 2. Разработать программу, в которой реализовать все описанные в работе стандартные (встроенные) функции и процедуры. 3. Показать работающую программу преподавателю. 4. Ответить на контрольные вопросы. Контрольные вопросы 1. Понятие структурного программирования. Определение подпрограмм. 2. Функции. Особенности использования. 3. Стандартные библиотечные модули. Понятие стандартных функций и процедур.
Лабораторная работа № 14 Написание программы на Паскале с использованием функций, определенных пользователем
Цель работы: формирование знаний и умений по работе с подпрограммами. Приобретение навыков написания программ с использованием функций. Краткие теоретические сведения Функция, определенная пользователем, состоит из заголовка и тела функции. Заголовок содержит зарезервированное слово function, идентификатор (имя) функции, заключенный в круглые скобки, необязательный список формальных параметров и тип возвращаемого функцией значения. Тело функции представляет собой локальный блок, по структуре аналогичный программе. В целом структура функции, определенной пользователем имеет вид: function <имя> (Формальные параметры): <тип результата>; const... type... var begin <операторы> end; В разделе операторов должен находиться, по крайней мере, один оператор, присваивающий имени функции значение. В точку вызова возвращается результат последнего присваивания. Обращение к функции осуществляется по имени с необязательным указанием списка аргументов. Каждый аргумент должен соответствовать формальным параметрам, указанным в заголовке, и иметь тот же тип. Пример программы с использованием функции, определенной пользователем Пусть требуется разработать программу вычисления выражения: Z=( + )/2* , в которой возведение в степень выполняется функцией Step. program DemoFunc; Var М: integer; А,Z,R: real; {Функция вычисления степени. N - степень, X – число, возводимое в данную степень. N, X — формальные параметры; результат, возвращаемый функцией в точку вызова, имеет вещественный тип} function Step(N: integer; X: real): real; Var I: integer; Y: real; begin Y:=1; for I:=1 to N do {Цикл вычисления N—й степени числа X) Y:=Y*X; Step:=Y; {Присваивание функции результата вычисления степени} end; {Конец функции} Begin {Начало основной программы} Write('Введите значение числа А и показатель степени М'); Readln(A,M); Z:=Step(5,А); {Вызов функции с передачей ей фактических параметров N=5, X=А} Z:=Z+ Step(3,l/A); {Вызов функции с передачей ей фактических параметров N=3, X=1/А} if M=0 then R:=l {если число возводится в нулевую степень, то результат всегда равен 1} else if M>0 then R:=Step(M,A) {Вызов функции Step с передачей ей фактических параметров М, А} else R:=Step(-M,A); { Вызов функции с передачей ей фактических параметров: - М, отрицательная степень} Z:=Z/(2*R); Writeln(' Для А= ',А,'М= ',М,' Значение выражения= ',Z); end. В начале программы описываются переменная целого типа М и переменные вещественного типа А, Z, R, после этого описывается функция вычисления степени числа Step с формальными параметрами N и X, результат, возвращаемый функцией в точку вызова, - вещественного типа. В описании функции вводятся две локальных (местных) переменных I и Y. Переменная I служит для подсчета числа повторений цикла, а в Y накапливается значение степени как произведения N одинаковых сомножителей. В заключение функции присваивается значение вычисленного произведения. В начале выполнения основной программы на экран выводится запрос "Введите значение числа А и показатель степени М" и считывается с клавиатуры значение вещественного числа А и целого числа М. Затем выполняется оператор: Z:=Step(5,A); Осуществляется вызов функции Step с передачей ей фактических параметров 5, А. Их значения присваиваются формальным параметрам функции N и X. По окончании вычисления степени числа значение функции Step, вычисленное для фактических параметров 5 и А, присваивается переменной Z. Аналогично в операторе: Z:= Z + Step(3,l/A); сначала осуществляется вызов функции Step с передачей ей фактических параметров 3, 1/A, после чего значение переменной Z увеличивается на величину возвращенного в основную программу результата вычисления функции Step. Операторы: if M=0 then R:=1 else if M>0 then R:=Step(M,A) else R:=Step(- M,A); проверяют условия М=0, М>0 и в зависимости от их соблюдения либо присваивает переменной R значение 1 (при М=О), либо выполняет вызов функции Step для фактических значений М, А или -М, А, а после вычисления значения функции Step присваивает его переменной R. Оператор: Z:=Z/(2*R); выполняет вычисление значения выражения, а затем присваивает вычисленное значение переменной Z. В заключение программы стандартная процедура Writeln выводит на экран сообщение о результате вычислений степени М числа А. Порядок выполнения работы 1. Изучить теоретические сведения по теме: “Написание программы на Паскале с использованием функций, определенных пользователем”. 2. Получить индивидуальное задание у преподавателя и разработать программу в соответствии с поставленной задачей. 3. Показать работающую программу преподавателю. 4. Ответить на контрольные вопросы. Контрольные вопросы 1. Структура функции, определенной пользователем. 2. Пример программы с использованием функции, определенной пользователем.
Лабораторная работа № 15
|
||||
Последнее изменение этой страницы: 2016-08-12; просмотров: 210; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.33.230 (0.01 с.) |