Краткие теоретические сведения
Подпрограмма – это выделенный в самостоятельную единицу участок программы, имеющий собственное имя, которое позволяет вызывать подпрограмму из основной программы.
Подпрограмма имеет такую же структуру, что и основная программа на языке Паскаль.
В языке программирования 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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!