Лабораторная работа №4.
Тема: Организация процедур и функций.
Цель: Развить навыки организации процедур и функций. Уметь использовать стандартные и пользовательские процедуры и функции. Уметь использовать различные виды параметров процедур.
Оборудование и материалы: Методическое пособие, ручка, карандаш, линейка, ластик, шаблон А4.
Ход работы
Методические рекомендации.
Необходимая информация содержится в лекции № 9.
Решение задач представить в следующем порядке: постановка задачи, построение математической модели, блок-схемы процедур и функций, программный код, тестирование.
Задание для лабораторной работы выбрать согласно варианту по приведённой таблице. Вариант определяется порядковым номером в журнале группы.
Образцы решения типовых задач.
Задача №1.
1. Постановка задачи. Даны два действительных числа a и b. Вычислить значение выражения
.
Вычисление выражения организовать в виде функции, а выражения в виде процедуры.
|
|
2. Построение математической модели. 3. Блок-схема программы:
Выходные параметры: z.
Вычисления:
Функция: .
Процедура: FMS(x, y, f)
x, y - формальные параметры –
значения вещественного типа.
f – формальный параметр –
переменная вещественного типа.
Блок-схема функции: Блок-схема процедуры:
4. Программа:
Program P1; {имя программы}
{ описание переменных}
Var
a, b, fa, z: real;
{описание функции}
Function FS(x, y: real): real;
Begin
;
End;
{описание процедуры}
Procedure FMS(x,y: real, var f: real);
Begin
;
End;
{описание вычисления z}
Begin
Readln (a,b);
FMS (a, b, fa);
;
Writeln (‘z=’, z:2:4);
End.
Тестирование.
a=3, b=4;
;
;
Выполнение индивидуальных заданий.
1. Номера заданий выбираются согласно варианту.
Вариант | № задач | Вариант | № задач | Вариант | № задач |
1, 3, 11 | 1, 4, 13 | 1, 5, 15 | |||
2, 4, 12 | 2, 5, 14 | 2, 6, 16 | |||
3, 5, 13 | 3, 7, 15 | 3, 7, 17 | |||
4, 6, 14 | 4, 8, 16 | 4,8, 18 | |||
5, 7, 15 | 5, 9, 17 | 5, 9, 19 | |||
6, 8, 16 | 6, 10, 18 | 6, 10, 20 | |||
7, 9, 17 | 7, 6, 19 20 | 7, 1, 11 | |||
8, 10, 18 | 8, 1, 11 | 8, 2, 12 | |||
9, 1, 19 | 9, 2, 12 | 9, 3, 13 | |||
10, 2, 20 | 10, 3, 13 | 10, 4, 14 |
1. Вычислить значение заданного выражения, используя процедуры и функции.
1. ;
2. ;
3. ;
4. ;
5. ;
6. ;
7. ;
8. ;
9. ;
10. ;
11. Определить площадь четырех трапеций по известным основаниям и высоте. Вычисление площади организовать через функцию.
12. Вычислить площадь трёх треугольников со сторонами a, b, c по формуле Герона , где р - полупериметр. Вычисление площади организовать через процедуру.
|
|
13. Вычислить площадь пяти окружностей по известной длине окружности. Вычисление площади организовать через процедуру.
14. Вычислить объём правильной треугольной пирамиды по известной стороне основания и высоте пирамиды. Вычисление площади организовать через функцию.
15. Определить площадь ромба через дины диагоналей, если известны сторона ромба и угол между ними. Вычисление длин диагоналей организовать через функцию.
16. Вычислить объём треугольной пирамиды по известным сторонам основания a, b, углу между ними и высоте пирамиды. Вычисление площади основания организовать через процедуру.
17. Вычислить объём правильной треугольной призмы по известной стороне основания и высоте пирамиды. Вычисление площади основания организовать через процедуру.
18. Определить среднее арифметическое и среднегеометрическое двух чисел. Вычисление среднего арифметического и среднегеометрического организовать через функцию.
19. Определить площадь цилиндра по известному радиусу основания и высоте. Вычисление площади основания организовать через функцию.
20. Вычислить объём треугольной пирамиды по известным сторонам основания a, b, с и высоте пирамиды. Вычисление площади основания организовать через функцию.
2. Письменно ответить на следующие вопросы:
- Как одним словом можно назвать процедуры и функции?.
- Где описываются формальные параметры процедуры?
- Где описываются фактические параметры процедуры?
- Что необходимо указать при вызове функции?
- В чем отличие функции от процедуры?
- Является ли обязательным описание локальных переменных при организации подпрограмм?
- В каком разделе описываются локальные переменные подпрограмм?
- Какие категории параметров Вам известны?
- При использовании какой категории параметров значения фактических параметров не изменяется?
- При использовании какой категории параметров значения фактических параметров изменяются?
- Как описываются параметры-переменные?
- Как описываются параметры-константы?
- Значение какой категории параметров нельзя изменить в подпрограмме?