Функции, определяемые пользователем в языке программирования Бейсик

Функции, определяемые пользователем в языке программирования Бейсик

Форма организации познавательной деятельности: фронтальная, индивидуальная.

План урока.

I. Организационный момент 2 мин. II. Повторение пройденного материала 4 мин. III. Мотивация и актуализация 3 мин. IV. Изложения нового материала 10 мин. V. Первичная проверка знаний 19 мин. VI. Рефлексия. 3 мин. VII. Домашние задание 2 мин. VIII. Подведение итогов 2 мин.

Ход урока

I. Организационный момент
  • Приветствовать учеников
  • Проверить присутствующих и готовность класса к уроку.
  • Сообщить тему, цели и ход урока.
II. Повторение пройденного материала
  1. Что такое функция?
  2. С какими функциями вы знакомы при изучении языка программирования Бейсик?
  3. Правила записи (формат) функций.
  4. Что такое вспомогательный алгоритм?
  5. Назовите преимущества вспомогательных алгоритмов.
III. Мотивация и актуализация

Написать на доске функцию

и предложить учащимся найти повторяющиеся выражения и попробовать записать это выражение используя имена переменных не входящее в функцию – формальные параметры.

Предполагаемый ответ учащихся:

Что отличительное в этих выражениях?

Предполагаемый ответ учащихся: исходные данные.

IV. Изложения нового материала

В языке Бейсик кроме стандартных функций возможно употребление функций, составленных самим пользователем, которая применяется в тех случаях, когда в программе необходимо вычислить одно и то же математическое выражение при различных значениях. В этом случае удобно определить это выражение каким-нибудь именем один раз, а затем обращаться к имени этого выражения, указывая конкретное значение переменной с целью экономии памяти машины и упрощения программы. В отличие от стандартной функции, такую функцию ещё называют нестандартной. Нестандартная функция определяется оператором DEF, которой присваивает ей задаваемое пользователем имя.

DEF FN <имя функции>(<список формальных параметров>)=<выражение>

DEF FN – образовано от сокр. анг. слов. DEFINE FUNCTION – определить функцию

<имя функции> - задается пользователем (любая латинская буква, определяющая конкретное имя функции).

<список формальных параметров> - переменные любого типа, перечисленные через запятую (если их несколько).

<выражение> - указывает какие действия и в какой последовательности надо выполнить с формальными параметрами, входящими в него величинами.

Формальные параметры используются лишь для обозначения аргументов и указания их вхождения в формулу вычисления значения функции.

Обращение к функции производится по имени функции и в круглых скобках указываются фактические параметры.

FN <имя функции>(<фактические параметры>)

фактическими параметрами могут быть: константы, переменные, выражения

Фактические параметры показывают, для каких значений нужно вычислить результат.

Задача 1.

Попробуем оформить решение (составим программу) вычисления нашей функции

В этом выражение многократно используется формула, которую мы определили . В программе эту формулу целесообразно определить как функцию с помощью оператора DEF. Программа будет иметь вид:

10 CLS

20 DEF FNT(X)=ABS(SIN(X)+X)/5

30 INPUT “Введите фактические параметры А и В”;A,B

40 V=FNT(3*B)+2/FNT(A)+SQR(FNT(A*B))

50 ? “V=”;V

60 END

Аргументы A и B функции FNT , указанные в операторе 40, называются фактическими. Они задают конкретные (фактические) числовые значения, которые подставляются на место формального аргумента X в операторе 20.

Замечание: фактические параметры должны соответствовать формальным по типу, количеству и порядку следования. Нарушение этого требования приводит к ошибке.

Например, если в нашей программе написать в строке

то в результате выполнения этой программы будет выведено сообщение об ошибке, т.к. при обращении к функции FNT(3,B) и FNT(A,B) указаны два фактически параметра вместо одного, как описано в функции FNT(X) в строке 20.

V. Первичная проверка знаний

Рассмотрим ещё пару задач.

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

Определим повторяющуюся функцию

10 CLS

20 DEF FNT(M,N)=M^(1/N)

30 INPUT “Введите фактические параметры X,Y,Z”;X,Y,Z

40 V=FNT(X+FNT(Y+FNT(Z,3),5),7)

50 ? “V=”;V

60 END

Задача 3.

10 CLS

20 DEF FNT(N)=(X^N+N)/N

30 INPUT “Введите фактический параметр X”; X

40 V=FNT(8)+FNT(6)+FNT(5)^(-1)

50 ? “V=”;V

60 END

VI. Рефлексия

Учащиеся сравнивают полученный результат работы программы с предложенным образцом. Сохраняют программу на компьютере. Учащиеся делятся впечатлениями от урока, рассказывают, что им понравилось, а что можно было бы сделать по-другому. Выявляют вопросы, которые вызвали наибольшее затруднение.

📎📎📎📎📎📎📎📎📎📎