Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


var t:real; //промежуточная переменная

Лабораторная работа №7

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

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

 

ОПИСАНИЕ ПРОЦЕДУРЫ

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

Procedure <Имя> [(Список формальных параметров)]; Разделы описаний процедуры Begin Тело процедуры End;

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

  • по типу,
  • по порядку следования
  • по количеству.

Формальные параметры описываются в заголовке процедуры. Они делятся на параметры-значения — это входные данные. Перед ними не ставится служебное слово Var.

Парметры-переменные — это выходные и входные данные. Перед ними ставится служебное слово Var.

В процедуре может быть любое конечное количество выходных данных (результатов). Все переменные делятся на глобальные ( описываются в разделе описаний основной программы) и локальные ( описываются в разделе описаний подпрограммы). Локальные переменные «живут» только во время работы подпрограммы.

Вызов процедуры

Вызов процедуры осуществляется путем указания имени процедуры с указанием фактических параметров. Например, Summa(a,150,s).

Пример. Найти значение выражения y=3x10 + 2x5+x3.

Решение. Для решения данной задачи воспользуемся процедурой, вычисляющей степень аn .

Var x, y, s1, s2, s3: integer; {x, y, s1, s2, s3 — глобальные переменные}

Procedure St (a, n: integer; Var s: integer);
{a, n, S — формальные параметры}

{a,n — параметры- значения, S — параметр -переменная }

Var i: integer; {i— локальная переменная}

Begin

S:=1;

For i:=1 to N do s:=s*a;

End; {ProcedureSt }

BEGIN

Read(x);

ST(x, 10,s1); ST(x, 5,s2); ST(x, 3,s3);

Y:=3*s1+2*s2+s3;

Write(y);

End.

 

Описание функции

Заголовок функции состоит из зарезервированного слова Function, за которым следует имя функции, затем в круглых скобках записывается список формальных параметров, далее ставится двоеточие и указывается тип результата функции (результат всегда один).

! В теле функции обязательно должен быть один и только один оператор присваивания, в левой части которого стоит имя функции, а в правой — ее значение. Иначе значение функции не определено.

Таким образом, общий вид описания функции следующий:

Function Имя [ (Список формальных параметров)]: Тип результата;

<Описательная часть>

Begin

<Тело функции>

End;

Вызов функции

Вызов функции осуществляется в выражениях с указанием имени и фактических параметров: например, y: =f(1,x)+f(2*x,3).

Пример. Найти

Решение.

Var n: integer;

c: integer;

Function Factor (n:integer): integer;

Var i:integer; rez: integer;

Begin

Rez:=1;

For i:=1 to N do

rez:=rez*i;

Factor:=rez;

End;

Begin

Readln (n);

с:=factor(n);

Writeln (c);

End.

 

 

Задания

1. Составьте программу для определения числа сочетаний , используя функцию при вычислении факториала.

2. С помощь следующей процедуры произведите обмен значениями между двумя переменными:

procedure Swap (var x,y: real);

var t:real; //промежуточная переменная

Begin

t:=x; //запоминаем значение x

x:=y; //переменной x присваиваем значение y

y:=t; //переменной y присваиваем t, равное x

end;

  1. Опишите функцию, определяющую максимальное из двух чисел, и с помощью этой функции вычислите значение выражения: .
  2. Даны значения c,d,l,k. Напишите функцию min для вычисления значения следующего выражения: .
  3. Ввести 3 целых массива из n чисел каждый: А, В, С. Вычислить значение , где max(A) — максимальный элемент массива А (аналогично max(B) и max(C)). Вычисление максимального элемента массива оформить в виде подпрограммы. Формула имеет смысл, если max(C)<>0.
  4. Треугольник задан длинами своих сторон. Найдите длины его медиан. Вычисление длины медианы оформить в виде подпрограммы ( – длина медианы, проведенной из вершины B).

***

  1. Опишите процедуру вычисления количества чисел, делящихся на 7 без остатка в массиве A из n элементов.
  2. Опишите функцию вычисления среднего значения для четных элементов вещественного массива W, состоящего из N элементов.


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


Дата добавления: 2016-12-07; Мы поможем в написании ваших работ!; просмотров: 390 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Надо любить жизнь больше, чем смысл жизни. © Федор Достоевский
==> читать все изречения...

2355 - | 2039 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.013 с.