Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабораторная Работа 4

..docx
Скачиваний:
2
Добавлен:
16.10.2024
Размер:
454.93 Кб
Скачать

Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации

Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования

МОСКОВСКИЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ СВЯЗИ И ИНФОРМАТИКИ

(МТУСИ)

Факультет "Радио и телевидение"

Кафедра "Электроники"

ОТЧЕТ

по дисциплине "Информационные технологии и программирование"

на тему:

"Пользовательские функции. Вариант 17."

Выполнил

Проверил

Кандидат технических наук, доцент ______________ Т. П. Косичкина

Москва 2023

Цель работы: Научиться использовать пользовательские функции, написанные на языке Python.

Задание 1. Составить программу для варианта 17. Организовать вычисление задачи для исходных произвольных данных, значения которых пользователь Вашей программы должен ввести с клавиатуры в процессе выполнения программы.

.

Рисунок 1 – Условие №17

Рисунок 2 – Программа, написанная на Python

Рисунок 3 - Результат выполнения программы

Задание 2. Разделить программу из задания 1 на две процедуры, выделив в одну вычислительные операции, а в другую все операции ввода-вывода. Оформить их в виде функций. Вычислительную часть алгоритма оформить как функцию с параметрами, передаваемыми по значению, и возвращаемым значением. Другую часть алгоритма оформить как функцию, вызывающую первую функцию нужное количество раз. Все функции в этом задании находятся в одном файле (сценарии). Следует придумать для каждой функции оригинальное имя, отражающее её суть. Дополните каждую функцию комментарием, дающим необходимые и достаточные пояснения

Рисунок 4- Программа написанная на Python

Первая функция вычисляет евклидово расстояние между двумя точками в трехмерном пространстве. Принимает на вход координаты двух точек (x1, y1, z1) и (x2, y2, z2). Возвращает значение евклидова расстояния.

Вторая функция запрашивает у пользователя координаты двух точек и выводит результат вычисления евклидова расстояния.

Рисунок 5-Результат работы программы

Задание 3. Используя написанную вами функцию как подпрограмму, необходимо ввести три точки с произвольными координатами и найти пару с минимальным евклидовым расстоянием между точками. Для сравнения чисел можно использовать встроенную функцию нахождения минимума.

Рисунок 6 - Листинг программы 3

Переменная calculate_distance является функцией, которая принимает на вход шесть аргументов - координаты двух точек (x, y, z) и возвращает расстояние между ними, используя формулу евклидова расстояния. В функции find_min_distance происходит запрос у пользователя координат трех точек, после чего находится пара точек с минимальным расстоянием между ними с помощью циклов и вызова функции calculate_distance. Результат выводится на экран. Функция main объединяет в себе вызов функции calculate_distance с вводом координат точек и выводом результата. Однако, в конце программы функция find_min_distance вызывается с помощью print, что приводит к тому, что на экран выводится значение None (так как функция ничего не возвращает). Для исправления этой ошибки необходимо убрать вызов print при вызове функции find_min_distance.

Рисунок 7 – Результат работы третьей программы

Задание 4. Записать вашу функцию в виде лямбда-функции (нескольких лямбда-функций), выполнить отладку. Вызвать лямбда-функцию для выполнения задания: Написать функцию для вычисления евклидова расстояния между двумя точками в пространстве, заданными координатами (x1, y1, z1) и (x2, y2, z2).

Рисунок 8 – Программа написанная на языке Python.

Переменная calculate_distance является лямбда-функцией, которая принимает на вход шесть аргументов - координаты двух точек (x, y, z) и возвращает расстояние между ними, используя формулу евклидова расстояния.Функция main объединяет в себе вызов функции calculate_distance с вводом координат точек и выводом результата. Она используется для удобства и компактности кода. Функция find_min_distance запрашивает у пользователя координаты трех точек, после чего находит пару точек с минимальным расстоянием между ними с помощью циклов и вызова функции calculate_distance. Результат выводится на экран. Однако, в конце программы функция find_min_distance вызывается с помощью print, что приводит к тому, что на экран выводится значение None (так как функция ничего не возвращает). Для исправления этой ошибки необходимо убрать вызов print при вызове функции find_min_distance.

Рисунок 9 – Результат программы написанная на языке Python.

Задание 5. Разделить текст файла из Задания 3 на два файла. Дополнить файл, выполняющий вызов функции, необходимой инструкцией.

Рисунок 10 – Программа написанная на языке Python.

Рисунок 11 – файл вызываемой функции

Рисунок 12 – Результат программы написанная на языке Python

ЗАКЛЮЧЕНИЕ

При выполнении лабораторной работы, изучены пользовательские функции, написанные на языке Python.