Краткие теоретические сведения

Подпрограмма – это выделенный в самостоятельную единицу участок программы, имеющий собственное имя, которое позволяет вызывать подпрограмму из основной программы.

Подпрограмма имеет такую же структуру, что и основная программа на языке Паскаль.

В языке программирования Pascal определены два вида подпрограмм: процедуры и функции.

Функция – это подпрограмма, которая возвращает одно значение (т.е. используется для вычисления определенного значения).

Общий вид функции (структура функции):

Function <имя функции> [(<список параметров>)]:<тип результата>;

<раздел описаний>;

Begin

…..

….. <тело функции>

<имя функции>:=результат;

End;

где Function – зарезервированное слово;

<cписок параметров> – перечень входных параметров или аргументов с указанием их типов; список параметров может отсутствовать;

<тип результата> – тип вычисляемого значения функции.

Результат выполнения функции сохраняется с именем самой функции. Поэтому в теле любой функции должен находиться, по крайней мере, один оператор, который присваивает имени функции значение результата этой функции:

Имя функции:=Результат;

Результат работы функции передается в основную программу.

Обращение к функции выполняется в каком-либо операторе. Для обращения к функции необходимо указать ее имя со списком фактических параметров (если они описаны в функции).

Формальные параметры функции — это переменные, которые указываются в заголовке функции.

Фактические параметры функции — это переменные и значения, которые указываются при вызове функции.

 

Пример оформления практической работы №6 по теме «Функции пользователя»

 

1. Постановка задачи.

2. Используемые алгоритмы.

3. Список используемых переменных.

4. Текст программы.

5. Тестовый пример.

6. Протокол работы программы.

 

ЗАДАНИЕ 1.

Постановка задачи

В программе из практической работы №5 вычисление квадрата числа Х оформить в виде функции.

 

Используемые алгоритмы

Смотри в практической работе №5

 

Список используемых переменных

Смотри в практической работе №5

 

Текст программы

Основную программу смотри в практической работе №1

Program tabl_f;

…..

function y(x:real):real;

Begin

у:=x*x

End;

…..

 

Протокол выполнения программы

Смотри в практической работе №5

 

ЗАДАНИЕ 2.

Постановка задачи

Составить программу вычисления функции: .

 

Используемые алгоритмы

1. Линейные – для вычисления значения функции

 

Список используемых переменных

Входные данные:

x, u, z – произвольные числа

Выходные данные:

y – значение функции

 

Текст программы

Program func;

Uses crt;

Var x,u,z,y:real;

Function step(a:real):real; {заголовок функции}

Begin {начало функции}

step:=sqr(a)-a

End; {конец функции}

{основная программа}

Begin

Clrscr;

Write(‘Введите числа x,u,z:’);

Readln(x,u,z);

Y:=exp(step(x)+1)+exp(step(u)+4)+exp(step(z)-2); {обращение к функции step}

Writeln(‘y=’,y:8:2);

Readln

End.

 

Тестовый пример

Если x=0,12; u=0,3; z=0,17, то значение функции будет равно 46,81979.

 

Протокол выполнения программы

Введите числа x, u, z: 0.12 0.3 0.17

y=46.82

 

Порядок выполнения практической работы:

1. Измените программу из практической работы №5, оформив в виде функции вычисление квадрата числа Х (см. задание 1).

2. Протестируйте программу задания 1 для А=1, В=10, h=1 и сравните результат с результатами практической работы №5.

3. Оформите отчет о выполнении задания 1.

4. Поэтапно разработайте решение индивидуальной задачи по заданию 2 (см. варианты задания №2 к практической работе №6):

· используемые алгоритмы;

· список используемых переменных;

· текст программы;

· тестовые примеры.

5. Наберите текст программы и выполните ее отладку.

6. Проверьте результаты тестовых примеров.

7. Оформите отчет о выполнении практической работы.

8. Ответьте на контрольные вопросы.

 

Варианты задания №2 к практической работе №6

 

1.
x=2,8; у=5,6; S=5,4; А=4,3; x=4,4; у=2,8; S=10,9; А=8,7.

 

2.
x=2,5; z=3,1; u=1,7; x=0,61; z=0,25; u=0,96.

 

3.
x=2,5; z=3,1; u=1,7; x=0,61; z=0,25; u=0,96.

 

4.
x=9,81; z=4,64; u=3,78; x=3,14; z=5,15; u=3,87.

 

5.
x=2,54; z=2,41; u=1,96; x=4,08; z=1,95; u=2,25.

 

6.
x=1,54; z=1,11; u=1,21; x=0,9; z=2,4; u=0,1.

 

7.
x=2,11; u=1,13; x=3,1; u=2,11.

 

8.
x=5,1; у=2,7; x=1,2; у=3,9.

 

9.
x=4,14; u=6,83; x=2,17; u=0,99.

 

10.
x=0,1; u=1,4; x=0,2; u=0,7.

 

11.
x=5,7; у=0,6; u=1,1; x=2,1; у=0,2; u=2,0.

 

12.
x=3; у=8; S=2; u=3; x=2,75; у=7,21; S=1,54; u=2,6.

 

13.
x=1,4; z=2,1; u=1,1; x=1,2; z=1,9; u=1,3.

 

14.
x=0,1; z=0,2; u=0,3; x=0,9; z=0,8; u=0,7.

 

15.
x=1,5; у=2,7; u=1,2; t=6,5; v=2,4;

x=1,4; у=3,5; u=0,9; t=0,1; v=6,6.

 

16.
x=-1,3; у=-2,8; z=0,1; u=6,0; t=9,0; v=-2,5;

x=-2,6; у=0,6; z=-3; u=-2,7; t=-1; v=-1,6.

 

Контрольные вопросы к практической работе №6

1. Пропишите заголовок подпрограммы:

________________ GRL (t:integer):byte;

 

2. Укажите формальные и фактические параметры функции:

Var a,b,d:integer; r,t,q:char; k,l,n:Boolean;

Function HT (t,w:boolean; c,x:char):integer;

begin … end;

Begin {основная программа}

…..

a:=HT(k,t);

d:=HT(n,r);

b:=HT(k,r);

…..

 

3. Даны описания:

Var y,v,n:real; s,z:integer;

Function F(x:integer;d:real):real;

…..

Определите правильные примеры вызова функции F в основной программе:

1) S:=F(z,y); 2) Z:=F(s,n); 3) V:=F(z,n); 4) Z:=F(y,s);


Дата добавления: 2015-12-21; просмотров: 18; Мы поможем в написании вашей работы!

Поделиться с друзьями:




Мы поможем в написании ваших работ!