Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Б. Заголовок процедуры со списком формальных параметров.Стр 1 из 6Следующая ⇒
Б1. Заголовок процедуры, состоящий из зарезервированного слова procedure, имени процедуры и списка параметров, за которым следует идентификатор типа элементов списка (служебное слово var отсутствует): procedure имя_процедуры (< сп.ф.п.>: тип п. [; < сп.ф.п.>: тип п. [; < сп.ф.п.>: тип п.]]); где < сп.ф.п.> – список формальных параметров, тип п. – тип параметров. Параметры процедуры в этом случае называют " параметры-значения". Если в заголовке процедуры отсутствует слово var, то изменение параметров-значений не будет передано в основную программу или охватывающую подпрограмму, так как подпрограмма получает не сам фактический параметр, а его значение, то есть копию. Б2. Заголовок процедуры, состоящий из зарезервированного слова procedure, имени процедуры, служебного слова var и списка параметров, за которым следует идентификатор типа элементов списка: procedure имя_процедуры ( var < сп.ф.п.>: тип п. [; var < сп.ф.п.>: тип п. [; var < сп.ф.п.>: тип п.]]); Параметры процедуры в этом случае называют " параметры-переменные". Использование параметров-переменных позволяет уменьшить объём программы. Б3. Заголовок процедуры, состоящий из зарезервированного слова procedure, имени процедуры, служебного слова var и списка параметров без указания их типа: procedure имя_процедуры ( var < сп.ф.п.> ); Параметры процедуры в этом случае называют " параметры-переменные". Ответственность за совпадение типов формальных и фактических параметров в этом случае берёт на себя программист. В список формальных параметров в подпрограмме можно включать только стандартные или ранее объявленные типы данных. Поэтому, например, нельзя объявлять объект типа массива в виде: procedure имя_процедуры (< сп.ф.п.> : array [1.. 15] ofreal ); так как здесь объявляется тип-диапазон, указывающий границы индексов массива. Правильным в этом случае будет предварительно описать тип объекта в основной программе, а затем этот тип ввести в заголовок процедуры: Program Primer; ....... Type a = array [1.. 15] of real; ....... procedure Primer (b: a); ....... end; ....... Begin ....... End. Функции Функции имеют аналогичную структуру с процедурами, но различаются назначением и способом применения. Функция определяет алгоритм вычисления нового значения некоторого простого или ссылочного типа переменной. Описание функции отличается от описания процедуры двумя особенностями. Первая особенность заключается в том, что заголовок функции должен начинаться зарезервированным словом function, а заканчиваться названием того типа данных, которому принадлежит значение функции: function имя_функции (< сп. ф. п.> : их тип [; < сп. ф. п.> : их тип]): тип функции; Здесь function – зарезервированное слово, объявляющее в разделе описаний о том, что следующая за ним переменная является функцией. Имя функции должно удовлетворять требованиям языка Паскаль. Обозначение < сп. ф. п.> – список формальных параметров, который может отсутствовать. Требования к списку формальных параметров в подпрограмме-функции точно такие же, как для подпрограммы-процедуры. Тип функции определяет тип результата, то есть тип возвращаемого значения. Вторая особенность функции состоит в том, что в разделе операторов подпрограммы-функции обязательно должен быть хотя бы один оператор, содержащий слева от оператора присваивания имя функции: имя_функции: =......; Таких операторов может быть несколько, но при каждом конкретном обращении к функции значение должен получить только один из них. Он и определит значение функции.
Порядок выполнения работы 1. Разработайте алгоритм решения задачи в соответствии со своим вариантом. 2. Откройте текстовый редактор TurboPascal. 3. Напишите программу решения задачи по разработанному ранее алгоритму. В программе предусмотреть вывод справочной информации (информация об авторе, наименование и назначение программы), возможность многократных вычислений. 4. Отладьте программу. 5. Сохраните результаты работы программы. 6. Повторите все выше приведённые действия в средах algo pascal, ABCpascal, Delphi (консольное приложение) Содержание отчета Отчет оформляется индивидуально и содержит: - титульный лист; - наименование, цель и содержание работы; - алгоритм и текст программы - изображения экранов монитора с результатами работы программы; - выводы по результатам работы.
Варианты заданий Разработайте алгоритм и программу вычисления таблицы значений функции: 1. На интервале от x1 до x2 cшагом dx. Не допускать ввод значений, когда x1> x2 или dx< =0.Если функция не может быть вычислена (например деление на 0) – то напишите об этом в таблице 2. Перевести координаты из декартовых в полярные. 3. Узнать - попадает ли полученная точка (x, y) в заданную область. 4. В программе предусмотреть вывод справочной информации (назначение программы, вид вычисляемой функции, автор), возможность повторного выполнения программы. 5. Ввод информации организовать с использованием процедур, вычисления – с помощью функций.
Пример: функция , область – квадрат 2x2 c центром в начале координат:
X Y alfa R Область -1 Не может быть вычислена!!! 0 0 0 0 попадает 1 1 45 1.41 попадает 2 2 45 2.82 не попадает …
Вид функции:
Функции берутся из таблицы 1 по номеру зачётки (то, что там написано “Y=” – не обращаем внимание): f1 – по последней цифре, f2 – по предпоследней, f3 – по сумме 2-х цифр с конца. Значение a– первая цифра номера зачётки, значение b – сумма первой и последней цифры номера зачётки. Область берётся согласно последней цифре номера варианта (ваш порядковый номер по списку в группе). Например, если у вас номер зачётки = 123456, и вы 15 по номеру списка то функции (5-й вариант), (6-й вариант), (5+6=11 вариант); a = 1, b = 1+6=7; Область - Окружность радиусом 4 и центром в точке (1, 1) - (5-й вариант)
Таблица 1. Варианты функцийf1, f2, f3
Таблица 2. Варианты областей
6 Контрольные вопросы 1. Что такое подпрограмма? 2. Укажите назначение подпрограмм. 3. Перечислите достоинства и недостатки использования подпрограмм при написании программ. 4. Укажите функции языка TurboPascal позволяющие организовывать подпрограммы. 5. Чем отличается функция от процедуры? 6. Укажите назначение функции function. 7. Укажите назначение функции procedure. 8. Перечислите варианты организации заголовков процедур. Укажите основные различия между ними. 9. Укажите правила организации функций. Рекомендуемая литература 1. Степанов А.Н. Информатика. Базовый курс. Учебник для ВУЗов. - Издательство " Питер", 2007. – 768с. 2. Острейковский, В.А. Информатика: учебник для вузов / В.А.Острейковский.— 3-е изд., стер. — М.: Высш.шк., 2005.— 511с.: ил. — Библиогр.в конце кн. — ISBN 5-06-003533-6 /в пер./: 128.74. ЛАБОРАТОРНАЯ РАБОТА 13 Массивы и операции с ними в Turbo Pascal (2 часа)
Цель работы
Изучение приемов работы с двумерными и многомерными массивами в среде TurboPascal. Получение практических навыков разработки и отладки программ обработки двумерных массивов данных.
2 Краткая теоретическая справка
Популярное:
|
Последнее изменение этой страницы: 2016-06-04; Просмотров: 1467; Нарушение авторского права страницы