Урок 2.3. Формула вычисления средней точки
В рамках данного урока вы будете работать с функцией, которая используется в программе несколько раз.
Вы научитесь:
- Понимать формулу вычисления средней точки
- Использовать верхний регистр в переменной
- Сохранять результат функции в переменную
- Возвращать два значения из функции
В координатной геометрии существует метод определения координат средней точки отрезка прямой, если известны координаты крайних точек. Сейчас ваша задача - написать программу для определения координат средней точки.
Существуют две формулы нахождения средней точки, которые, по сути, являются одинаковыми (вычисление по среднему значению двух чисел), но в них используются разные переменные:
midX = (x1 + x2) / 2
midY = (y1 + y2) / 2
1. Создайте новый файл Python. Выберите его тип - "Пустая программа" (Blank Program). В примере мы назвали свою программу midpoint. Вставьте шаблон def function() из меню: menu > Built-ins > Function.
Назовите функцию midpt.
Примечание для учителя: Имя файла TI-Nspire и имя файла Python - это разные единицы, не говоря уже о любых других идентификаторах кода на языке Python, таких как название переменных и функций. Поэтому допустимо называть документ TI-Nspire как midpoint.tns, файл Python как midpoint.py, а функцию Python в файле как midpoint(). Однако программист может запутаться при чтении программы.
2. На этот раз сначала напишите основную программу, затем вернитесь к кодированию функции midpt. Поместите курсор к началу пустой строки, которая находится под названием функции. Напишите четыре выражения input, чтобы ввести четыре координаты крайних точек, используя x1, y1, x2, y2 в качестве четырех переменных. Попробуйте это сделать сейчас, прежде чем приступать к следующему шагу.
3. Рисунок ниже иллюстрирует все четыре введенных выражения input, первое из которых выглядит следующим образом:
x1 = float(input("x1 = "))
Здесь вам очень пригодится функция копирования и вставки! Выберите нужный фрагмент текста с помощью комбинации кнопок shift+arrowkeys, а затем нажмите ctrl+C, чтобы скопировать его. Для вставки необходимо воспользоваться комбинацией ctrl+V, как на компьютере. Только не забудьте подставить нужные данные во вставленные фрагменты.
Примечание для учителя: В данном шаге очень удобно воспользоваться копированием и вставкой.
4. Запишите ДВА оператора присваивания, чтобы сохранить результаты функции midpt в ДВЕ РАЗНЫЕ переменные:
midX = midpt(x1, x2)
midY = midpt(y1, y2)
(Мы используем одну и ту же функцию для двух разных наборов переменных)
Напишите выражение print, чтобы отобразить среднюю точку:
print('midpoint =', )
Можете ли вы записать выражение таким образом, чтобы результат отобразился в виде упорядоченной пары? Например: midpoint = (13, 5)
Примечание для учителя: Кодировать выражения print нужно очень внимательно, особенно если речь идет об использовании строковых литералов, запятых и переменных. В конце этого урока будет дан пример.
5. Теперь вернитесь и завершите работу с функцией midpt( ).
Используйте только два аргумента. В качестве аргументов лучше использовать две новые переменные:
midpt(a,b)
Примечание для учителя: Использование формальных параметров отличных от фактических параметров помогает понять разницу между ними, особенно когда функция выполняется с разными аргументами, как показано в данном уроке.
6. Тело функции состоит из одного вычисления
mid = (a + b) / 2
и выражения return:
return mid
Убедитесь в том, что эти два выражения корректно структурированы (имеют одинаковый отступ).
Выражение return можно найти через меню: menu > Built-ins > Function.
7. Запустите программу и введите четыре значения. Результат работы программы похож на тот, что вы видите на рисунке?
Важно: функции Python можно использовать несколько раз в одной программе.
Сделать результат отображения аккуратным - это нелегкая задача. Выражение print у нас выглядит следующим образом:
print('midpoint = ( ', midX, ', ', midY, ')' )
Здесь есть пробелы. Они нужны для того, чтобы было видно, куда относятся скобки и запятые.
Не забудьте сохранить свой проект.
Примечание для учителя: результат показан в виде (2.0, 5.0), где содержатся скобки и запятая. Так обычно отображается упорядоченная пара.
Еще один способ отображения упорядоченной пары - это использование кортежа (последовательности из n элементов), но в этом курсе данный способ не рассматривается:
print('midpoint = ', (midX, midY))
Если вы новичок в Python, для вас этот способ может вполне подойти, потому что структура (1,2) является кортежем, достоверной структурой данных схожей со списком, отображаемым с помощью квадратных скобок, например, [1,2]. Но сейчас мы не будем вдаваться в такие подробности!
На предыдущем уроке учащиеся работали со средним арифметическим и средним геометрическим. А что произойдет со средней точкой (midpoint), если использовать не среднее арифметическое, а среднее геометрическое значение?