Вспомогательные алгоритмы Паскаль: процедуры, функции - 9 КЛАСС

Вспомогательные алгоритмы Паскаль: процедуры, функции — 9 КЛАСС

Все статьи
Want create site? Find Free WordPress Themes and plugins.

Урок: Вспомогательные алгоритмы Паскаль: процедуры, функции

Процедуры

Запись вспомогательных алгоритмов в языках программирования осуществляется с помощью подпрограмм.
В Паскале подпрограмма является частью основной программы.
Её описание располагается между разделом var и программным блоком главной программы.
Если подпрограмм несколько, то их описания располагаются в произвольном порядке одно за другим. Структура описания подпрограммы аналогична структуре главной программы.
Описание подпрограммы начинается с заголовка и заканчивается оператором end.
В Паскале различают два вида подпрограмм: процедуры и функции.

Процедура — подпрограмма, имеющая произвольное количество входных и выходных данных.
Описание процедуры имеет вид:
Вспомогательные алгоритмы Паскаль: процедуры, функции - 9 КЛАСС
В заголовке процедуры после её имени приводится перечень формальных параметров и их типов.
Входные параметры, значения которых не изменяются в программе, должны быть параметрами-значениями.
Выходные (результирующие) параметры должны быть параметрами-переменными.
Для вызова процедуры достаточно указать её имя со списком фактических параметров.
В качестве параметров-значений можно указывать имена переменных, константы и выражения.
Например, заголовок процедуры вычисления наибольшего общего делителя может быть описан так:
procedure nod (a,b:integer; var c:integer);
Возможны следующие варианты вызова этой процедуры:
Вспомогательные алгоритмы Паскаль: процедуры, функции - 9 КЛАСС
В любом случае, между фактическими и формальными параметрами должно быть полное соответствие по количеству, порядку следования и типу.
 

Функции

Описание функции имеет вид:
Вспомогательные алгоритмы Паскаль: процедуры, функции - 9 КЛАСС
В заголовке функции после её имени приводится описание входных данных — указывается перечень формальных параметров и их типов. Там же указывается тип самой функции, т.е. тип результата.
Функция — подпрограмма, имеющая единственный результат, записываемый в ячейку памяти, имя которой совпадает с именем функции.
Поэтому в блоке функции обязательно должен присутствовать оператор <имя_функции>:=<результат>.
Для вызова функции достаточно указать её имя со списком фактических параметров в любом выражении, в условиях (после слов if, while, until) или в операторе write главной программы. 
Пример:
Напишем программу нахождения максимального из четырёх целых чисел, использующую функцию поиска максимального из двух чисел:
 
Вспомогательные алгоритмы Паскаль: процедуры, функции - 9 КЛАСС
Пример:
В январе Саше подарили пару новорождённых кроликов. Через два месяца они дали первый приплод — новую пару кроликов, а затем давали приплод по паре кроликов каждый месяц.
Каждая новая пара также даёт первый приплод (пару кроликов) через два месяца, а затем — по паре кроликов каждый месяц. Сколько пар кроликов будет у Саши в декабре?
Составим математическую модель этой задачи.
Обозначим через f(n) количество кроликов в месяце с номером n.
По условию задачи,f(1)=1,f(2)=1,f(3)=2. Из двух пар, имеющихся в марте, дать приплод в апреле сможет только одна: f(4)=3.
Из пар, имеющихся в апреле, дать приплод в мае смогут только пары, родившиеся в марте: f(5)=f(4)+f(3)=3+2=5.
В общем случае: f(n)=f(n1)+f(n2),n3.
Вспомогательные алгоритмы Паскаль: процедуры, функции - 9 КЛАСС
Числа 1,1,2,3,5,8,... образуют так называемую последовательность Фибоначчи, названную в честь итальянского математика, впервые решившего соответствующую задачу ещё в начале XIII века. Оформим в виде функции вычисление члена последовательности Фибоначчи.
 
Вспомогательные алгоритмы Паскаль: процедуры, функции - 9 КЛАСС
Полученная функция рекурсивная — в ней реализован способ вычисления очередного значения функции через вычисление её предшествующих значений.

Рекомендованный список литературы

Босова Л.Л. Информатика —  Учебник для 8 класса. – М.: БИНОМ. Лаборатория знаний

Did you find apk for android? You can find new Free Android Games and apps.

Добавить комментарий