Программирование. Подпрограммы


Чтобы посмотреть презентацию с оформлением и слайдами, скачайте ее файл и откройте в PowerPoint на своем компьютере.
Текстовое содержимое слайдов:

Подпрограммы План:1. Понятие подпрограммы. Виды подпрограмм. Глобальные и локальные переменные.2. Процедуры.2.1. Описание процедуры.2.2. Обращение к процедуре.2.3. Процедуры без параметров.2.4. Процедуры с параметрами.3. Механизм замены параметров.3.1. Параметры-значения.3.2. Параметры-переменные.4. Функции.4.1. Описание функции.4.2. Обращение к функции.  procedure <имя процедуры> (<список формальных параметров>); const ... type ... var ... begin <операторы> end;  Обращение к процедуре  <имя процедуры> (<список фактических параметров>); procedure <имя процедуры> Общий вид описания процедуры Без процедур:program Max1;var x, y, u, v: real; a, b, s: real;begin readln (x, y); a := x + y; b := x * y; if a > b then s := a else s := b; !!!!! u := s; a := 0.5; b := u; if a > b then s := a else s := b; !!!!! v := s; writeln (‘u = ‘, u, ’ v = ‘, v)end. Оператор if объявим процедурой:program Max2;var x, y, u, v: real; a, b, s: real;procedure Max;begin if a > b then s := a else s := bend;begin readln (x, y); a := x + y; b := x * y; Max; {вызов процедуры Max} u := s; a := 0.5; b := u; Max; {вызов процедуры Max} v := s; writeln (‘u = ‘, u, ’ v = ‘, v)end. Процедуры без параметров Пример. По заданным значениям x и y вычислить u=max(x+y,x*y) и v=max(0.5,u). Процедуры с параметрами program Max3;var x, y, u, v, s: real;procedure Max (r1, r2:real);begin if r1 > r2 then s := r1 else s := r2end;begin readln (x, y); Max(x + y, x * y); u := s; Max(0.5, u); v := s; writeln (‘u = ‘, u, ’ v = ‘, v)end. Пример.program Parametr_znachenie;var x: integer;procedure Z (y: integer);beginy := 1;end;beginx := 0;Z (x); {вызов процедуры}writeln(‘x = ’, x);end. 3.2. Параметры-переменные Пример.program Parametr_peremennaia;var x: integer;procedure Z (var y: integer);beginy := 1;end;beginx := 0;Z(x);writeln (‘x = ’, x);end. Вывод:через параметры-значения данные передаются В процедуру;через параметры-переменные данные и передаются В процедуру, и забираются ИЗ процедуры. 3.1. Параметры-значения <имя функции> := <результат>; Обращение к функции <имя функции>(<список фактических параметров>); Общий вид описания функции function <имя функции>(<список формальных параметров>): <тип результата>; const ... type ... var ... begin <операторы>;<имя функции> := <выражение>;end; Пример. Написать программу табуляции функции на интервале изменения переменной х – [1,5] с шагом 0.5 с помощью процедуры и функции.program tab;const a = 1; b = 5; h = 0.5;var x, z: real;function y (b, t: real): real; {y(x) = a^x}beginy := exp(t * ln(b))end;procedure y (b, t: real; var r: real); {y(x) = a^x}beginr := exp(t*ln(b))end;beginwriteln (‘x a^x’);x := a;while x <= b do begin writeln (x:4:1, y(a, x):10:2); {c функцией} y (x, x, z); writeln (x:4:1, z:10:2); {c процедурой} x := x + h;endend. В заголовке функции явно указывается тип результата, вычисленного с помощью этой функции. Для процедур тип результата не имеет смысла – она может вычислять несколько значений, причем разных типов.В теле функции обязательно должен присутствовать оператор присваивания, в левой части которого стоит имя этой функции. Именно этот оператор присваивания и определит значение, вычисленное с помощью этой функции.Функции Pascal не могут возвращать значения таких типов, как: массив (array), запись (record) и множество (set). Отличия функций от процедур:

Приложенные файлы

  • ppt PodprogrammaPascal
    Презентация
    Размер файла: 61 kB Загрузок: 5