русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Подпрограммы. Процедуры без параметров и с параметром


Дата добавления: 2015-06-12; просмотров: 1239; Нарушение авторских прав


В практике программирования часто встречаются ситуации, когда походу выполнения программы приходится производить одни и те же вычисления или действия. Чтобы исключить повторение одинаковых записей и сделать тем самым программу проще и понятнее, можно выделить эти повторяющиеся фрагменты в самостоятельную часть программы, которая может быть использована многократно по мере необходимости. Такая автономная часть программы, реализующая определённый алгоритм и допускающая обращение к ней из различных частей программы, называется подпрограммой.

Описание процедур без параметров.

Структура любой подпрограммы почти буквально повторяет структуру всей Pascal-программы, и выглядит следующим образом:

Var

<список переменных>: <тип >;

Procedure <имя процедуры>;

Uses <имена модулей>;

Label <имена меток>;

Const <имена констант>;

Type <имена типов пользователя>;

Var <имена локальных переменных>;

<раздел объявления подпрограмм>;

Begin

<операторы подпрограмм >;

End;

Begin

<операторы Pascal-программ >;

End.

Вызов процедур без параметров

Вызов процедуры без параметров осуществляется по имени данной процедуры в теле программы. Имя процедуры воспринимается как оператор. При выполнении этого оператора выполняется вся подпрограмма.

Пример использования процедур без параметров.

Программа, текст которой приведён ниже, выполняет рисование 15 прямоугольных треугольников расположенных горизонтально. Рисование прямоугольного треугольника оформлено в виде процедуры TRG. Треугольник рисуется от текущего указателя, который является правым нижним углом данного треугольника.

PROGRAM ex_25_1;USES Graph,Crt;VAR gd,gm,i: integer; procedure TRG; begin linerel(40,0); linerel(-40,-40); linerel(0,40); end;BEGIN gd:=vga; gm:=vgahi; Initgraph(gd,gm,''); if Graphresult=grok then begin MoveTo(10,200); for i:=1 to 15 do begin MoveRel(45,0); TRG; end; Repeat Until KeyPressed; end;END.Основная схема процедуры с параметром.Procedure<>(a1,a2,..an:);Var…Begin<>;End;Фактические переменные – это переменные, указывающие при обращении к ПП; значение фактических переменных автоматически передаются в переменные находящиеся на месте формальных параметров.Формальные параметры – это переменные, расположенные в ПП и определяющие как будут происходить обработка конкретных значений этих параметров.Глобальные переменные – это переменные, которые объявлены основной части.Локальные переменные – это переменные, которые объявлены в процедурах и функциях.Пример 1.PROGRAM EX_26_2;{Программа рисования 6-ти различных прямоугольников}USES Graph, Crt;LABEL Out;VAR Gd,Gm: integer; Procedure Sq(x, y, a, b: integer); {Sq - процедура рисования прямоугольника. Для её выполнения необходимы дополнительные данные, которые передаются в процедуру с помощью параметров-значений:x,y - координаты левого нижнего угла прямоугольника;a,b - высота и ширина прямоугольника.} Begin MoveTo(x,y); LineRel(a,0); LineRel(0,b); LineRel(-a,0); LineRel(0,-b); End;BEGIN Gd:=Detect; InitGraph(Gd,Gm,''); If GraphResult<>0 then Goto Out; Sq(10,60,110,120); Sq(120,70,120,130); Sq(130,80,130,140); Sq(40,90,140,150); Sq(150,100,150,160); Sq(60,110,130,140); Repeat Until Keypressed; CloseGraph; Out:END.

Задания для самостоятельного выполнения



  1. Нарисуйте на экране свои инициалы, используя линии разного стиля, цвета и толщины. Изображение каждой буквы оформить с помощью отдельной процедуры 8.
  2. Нарисовать на экране ромб из разноцветных заполненных ромбиков. Диагонали ромба = 10 ромбикам.



<== предыдущая лекция | следующая лекция ==>
Построение фигур на основе математических зависимостей | Построение графиков функции


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.85 сек.