Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №5(процедуры и функции).doc
Скачиваний:
0
Добавлен:
02.12.2019
Размер:
390.14 Кб
Скачать

Лабораторная работа № 4 Процедуры и функции Вариант 8

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

Теоретический материал.

Описание пользовательской процедуры.

Procedure <имя> (<список формальных параметров>);

Описание пользовательской функции.

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

Примеры.

Нахождение числа сочетаний, с использованием пользовательских процедуры и функции (применение функции предпочтительнее) факториал .

program Example6_1; {Нахождение числа сочетаний, с использованием процедуры для нахождения факториала}

{$APPTYPE CONSOLE}

uses

SysUtils, windows;

Var fact1,fact2,fact3,sot: longint; m,n: integer;

Procedure fact(n: integer;var f: longint);

var i: integer;

Begin

f:=1;

For i:=2 To n Do

f:=f*i;

End;

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

Setconsoleoutputcp(1251);

Setconsolecp(1251);

Writeln('Введите значения m и n');

Readln(m,n);

fact(n, fact1); fact(m, fact2); fact(n-m, fact3);

sot:=fact1 div fact2 div fact3;

Writeln('Число сочетаний из ',n,' элементов по ',m,' равно ',sot);

Readln

End.

program Example6_2; {Нахождение числа сочетаний, с использованием функции факториал}

{$APPTYPE CONSOLE}

uses SysUtils, windows;

Var sot: longint; m,n: integer;

Function fact(n: integer): longint;

var i: integer; f: longint;

Begin

f:=1;

For i:=2 To n Do

f:=f*i;

fact:=f

End;

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

Setconsoleoutputcp(1251);

Setconsolecp(1251);

Writeln('Введите значения m и n');

Readln(m,n);

Sot:=fact(n) div fact(m) div fact(n-m);

Writeln('Число сочетаний из ',n,' элементов по ',m,' равно ',sot);

Readln

End.

Задания для самостоятельной работы.

  1. Составить программу для нахождения значений арксинуса, арккосинуса, арккотангенса. Результат отобразить в радианах и градусах. В программе предусмотреть пользовательские функции для вычисления арксинуса, арккосинуса, арккотангенса, функции для перевода радианной меры угла в градусную. При составлении пользовательских функций можно использовать следующие формулы (при a>0):

.

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

где Для нахождения значений функции g(u, t) разработайте пользовательскую функцию. Вычислите значения функции f(x, y) при нескольких значениях аргумента. Результаты запишите в тетрадь.

  1. Задано действительное число x. Найти значение выражения . Реализовать формулу в отдельной функции.

 Контрольные вопросы

  1. Как осуществляется вызов процедуры в Delphi

  2. В чем отличие вызова процедуры и вызова функции в Delphi

  3. Как описывается пользовательская процедура в Delphi

  4. Как описываются пользовательские функции в Delphi

  5. Примеры стандартных процедур и функций в Delphi.