КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.
Структура описания и механизм использования функции аналогичен процедуре с учетом некоторых особенностей. Описание состоит из заголовка и блока (тела функции).
FUNCTION <имя>(<сп. форм. пар.>):<тип>;
<блок>;
где:
FUNCTION – зарезервированное слово функция;
<имя> - имя функции, является уникальным, выбирается по общим правилам, желательно чтобы оно отражало смысл функции;
<сп. форм. пар.> - список формальных параметров т.е. список имен обозначающих исходные данные функции с указанием их типов;
<тип> - тип результата возвращаемого функцией и присваиваемого имени
функции;
<блок> - тело процедуры представляющее разделы описаний и раздел
операторов, представляющий составной оператор (совокупность операторов, заключенных в операторные скобкиBEGIN ... END).
Разделы описаний функции содержат те же разделы что и основная программа, в том числе описания подпрограмм низшего уровня (вложенных).
В содержательной части функции ее имени должен быть присвоен результат работы функции.
Вызов функциипредставляет собой операнд (указатель функции) в отличии от процедуры обращение к которой представляет оператор.
Он имеет вид:
Write (<имя>(<сп. факт. пар.>));
где:
<имя> - имя функции (указатель);
<сп. факт. пар.> - список фактических параметров.
Это список конкретных значений, имен и выражений подставляемых вместо формальных параметров и передаваемых в функцию.
|
|
Отличие процедуры от функции
1. Функция в отличие от процедуры возвращает единственное скалярное значение
2. Результат вычисления функции присваивается имени, а процедуре входит в список параметров.
3. Имя функции имеет тип.
4. Обращение к функции представляет операнд, а процедуры оператор.
Вариант 1
Описать функцию Calc(A, B, Op ) вещественного типа, выполняющую над ненулевыми вещественными числами A и B одну из арифметических операций и возвращающую ее результат.
Вид операции определяется целым параметром Op : 1 — вычитание, 2 — умножение, 3 — деление, остальные значения — сложение. С помощью Calc выполнить для данных A и B операции, определяемые данными целыми N1, N2, N3.
Вариант 2
Описать функцию CircleS(R) вещественного типа, находящую площадь круга радиуса R (R — вещественное). С помощью этой функции найти площади трех кругов с данными радиусами. Площадь круга радиуса R вычисляется по формуле S = πR2. В качестве значения π использовать 3.14.
Вариант 3
Описать функцию RootsCount(A, B, C) целого типа, определяющую количество корней квадратного уравнения Ax 2 + Bx + C = 0 (A, B, C — вещественные параметры, A ≠ 0). С ее помощью найти количество корней для каждого из трех квадратных уравнений с данными коэффициентами. Количество корней определять по значению дискриминанта:
|
|
D = B 2 - 4 AC .
Вариант 4
Описать функцию DegToRad( D ) вещественного типа, находящую величину угла в радианах, если дана его величина D в градусах ( D — вещественное число, 0 < D < 360). Воспользоваться следующим соотношением: 180° = радианов. В качестве значения π использовать 3.14. С помощью функции DegToRad перевести из градусов в радианы пять данных углов.
Вариант 5
Описать функцию Fact( N ) вещественного типа, вычисляющую значение факториала N! = 1∙2∙...∙ N ( N > 0 — параметр целого типа; вещественное возвращаемое значение используется для того, чтобы избежать целочисленного переполнения при больших значениях N ). С помощью этой функции найти факториалы пяти данных целых чисел.
Вариант 6
Описать функцию Fact2(N) вещественного типа, вычисляющую двойной факториал: N!! = 1·3·5·…·N, если N — нечетное; N!! = 2·4·6·…·N, если N — четное (N > 0 — параметр целого типа; вещественное возвращаемое значение используется для того, чтобы избежать целочисленного переполнения при больших значениях N). С помощью этой функции найти двойные факториалы пяти данных целых чисел.
|
|
Вариант 7
Описать функцию TriangleP(a, h), находящую периметр равнобедренного треугольника по его основанию a и высоте h, проведенной к основанию ( a и h — вещественные). С помощью этой функции найти периметры трех треугольников, для которых даны основания и высоты. Для нахождения боковой стороны b треугольника использовать теорему Пифагора:
b 2 = (a/2)2 + h2.
Вариант 8
Описать функцию RingS( R1, R2) вещественного типа, находящую площадь кольца, заключенного между двумя окружностями с общим центром и радиусами R1 и R2 ( R1 и R2 — вещественные, R1 > R2). С ее помощью найти площади трех колец, для которых даны внешние и внутренние радиусы. Воспользоваться формулой площади круга радиуса R: S = πR2. В качестве значения π использовать 3.14.
Вариант 9
Описать функцию Leng(xA, yA, xB, yB) вещественного типа, находящую длину отрезка AB на плоскости по координатам его концов: ( xA, yA, xB, yB – вещественные параметры). С помощью этой функции найти длины отрезков AB, AC, AD, если даны координаты точек A, B, C, D.
Вариант 10
Описать функцию Fib(N) целого типа, вычисляющую N-й элемент последовательности чисел Фибоначчи FK, которая описывается следующими формулами:
F1 = 1, F2 = 1, Fk = Fk-2 + Fk-1, K = 3,4, ... .
Используя функцию Fib, найти пять чисел Фибоначчи с данными номерами N 1 , N2, . . ., N5.
|
|
Контрольные вопросы:
1. Для чего необходима функция?
2. С каких слов начинается описание функции?
3. Что такое входной и выходной параметр?
4. Как вызывается функция?
ПРАКТИЧЕСКОЕ ЗАНЯТИЕ №15.
Тема: Создание рисунков.
Цель занятия: Научиться изображать простейшие картинки. Уметь пользоваться простейшими примитивами заливки и контура пера.
Дата добавления: 2019-11-16; просмотров: 448; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!