Планирование уроков на учебный год (по учебнику К.Ю. Полякова, Е.А. Еремина, углубленный уровень)



Уроки 41 - 42
§24. Процедуры




Содержание урока

Что такое подпрограмма?

Простая процедура

Процедура с параметром

Несколько параметров

Процедуры в других языках программирования. Рекурсия

Выводы

Вопросы и задания

Практическая работа № 20 «Процедуры»

Практическая работа № 21 «Рекурсивные процедуры»


Процедура с параметром


Теперь представьте себе, что нужно выводить строки из знаков «минус» разной длины (5, 10 и др). Конечно, можно сделать несколько процедур, например:

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

Заметим, что процедуру printLinelO можно переписать с помощью цикла:

Эта процедура делает то же самое, что и первый вариант, — выводит строку из 10 минусов и переходит на новую строку.

Видим, что процедура стала длиннее и усложнилась, появился цикл. Внутри процедуры объявлена переменная i. Эта переменная принадлежит процедуре, она называется локальной. Другие процедуры и основная программа не могут обращаться к «чужой» локальной переменной.

Где вы уже встречались со словом «локальный» в курсе информатики? Вспомните, от какого иностранного слова оно произошло.

Локальная переменная — это переменная, объявленная внутри подпрограммы. Другие подпрограммы и основная программа не могут к ней обращаться.

Локальная переменная существует только тогда, когда работает процедура. Как только работа процедуры закончена, все локальные переменные удаляются из памяти.

Чем будет отличаться процедура, рисующая 5 знаков «минус», от последнего варианта процедуры printLine10?

Если мы хотим, чтобы число повторений цикла можно было менять, в процедуре вместо числа нужно использовать переменную. И значение этой переменной нужно как-то передать процедуре. Оформляется это так:

Величина n называется параметром процедуры. В заголовке процедуры добавились круглые скобки, где записано имя параметра и его тип.

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

Наша процедура printLine имеет один параметр, обозначенный именем n, — длину строки из знаков «минус».

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

Аргумент — это значение параметра, которое передаётся процедуре.

При вызове процедуры аргумент передаётся в скобках:

printLine (10);

Что будет выведено на экран при выполнении фрагмента программы?

printLine (7);

printLine (5);

printLine (3);

Для тестирования процедуры printLine Иван хочет написать небольшую программу, в которой длина линии вводится с клавиатуры. Где нужно поместить оператор ввода — в процедуре или в основной программе?

Следующая страница Несколько параметров



Cкачать материалы урока








Наверх