- •Оглавление
- •Лабораторная работа №1 «Запись арифметических выражения на языке Python. Обработка исключений. Запись информации в текстовый файл. Создание пользовательских функций»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Лабораторная работа №2 «Программирование алгоритмов разветвляющихся структур. Нахождение максимального и минимального значения»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Лабораторная работа №3 «Создание классов. Создание экземпляров классов. Создание конструкторов»
- •Часть 1
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов.
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов.
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов.
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов.
- •2 Часть
- •Задание на разработку проекта
- •Арифметическое выражение лр1: Арифметическое выражение лр2:
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Проверка правильности работы
- •Лабораторная работа №4 «Создание меню в Python-программе. Инкапсуляция»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Доказательство правильности работы
- •Лабораторная работа №5 «Табулирование функции»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Лабораторная работа №6 «Работа с библиотеками Python»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Лабораторная работа № 7 «Создание приложений, использующих итеративные циклические структуры»
- •Задание на разработку проекта
- •Разработка алгоритма
- •3. Выполнение проекта и получение результатов
- •4.Доказательство правильности работы программ
- •Лабораторная работа №8 «Программирование Python-приложений с использованием библиотеки Tkinter»
- •1.Задание на разработку проекта
- •2.Разработка алгоритма
- •3.Выполнение проекта и получение результатов
- •4.Доказательство правильности работы программ
- •Лабораторная работа №9 «Работа с кортежами»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результата
- •Доказательство правильности работы программы
- •Лабораторная работа №10 «Работа со словарями»
- •1 Часть
- •Задание на разработку проекта
- •2. Разработка алгоритма
- •Выполнение проекта и получение результата
- •Доказательство правильности работы программы
- •2 Часть
- •Задание на разработку проекта
- •Разработка проекта
- •Выполнение проекта и получение результатов
- •Лабораторная работа №11 «Работа со списками»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов:
- •Лабораторная работа №12 «Базовые алгоритмы обработки списков и их сортировка»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов:
- •Лабораторная работа №13 «Работа со вложенными последовательностями»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Дополнительное задание «Реализация пошаговой детализации»
- •Задание на разработку проекта
- •Разработка алгоритма
- •3. Выполнение проекта и получение результатов
Задание на разработку проекта
Демонстрация различия между атрибутами объектов класса и атрибутами экземпляров класса.
Для выполнения задания следовало разработать:
Класс MyClass.
В классе MyClass добавить атрибут x равный 10
Метод __init__(self) для определения атрибута экземпляра класса y равного 20.
Экземпляры класса obj1 и obj2.
В основной части программы изменить значение x на 50 и y для экземпляра класса obj1 равного 90. Создать новый x для экземпляра класса obj2 равного 60 и изменить значение атрибута объекта класса MyClass.x на 80 и вывести все атрибуты класса.
Разработка алгоритма
Код программы представлен в Листинге 3
Листинг 3
class MyClass:
x = 10
def __init__(self):
self.y = 20
obj1, obj2 = MyClass(), MyClass()
print('obj1.x = {0} obj2.x = {1}'.format(obj1.x, obj2.x))
MyClass.x = 50
print('obj1.x = {0} obj2.x = {1}'.format(obj1.x, obj2.x))
print('obj1.y = {0} obj2.y = {1}'.format(obj1.y, obj2.y))
obj1.y = 90
print('obj1.y = {0} obj2.y = {1}'.format(obj1.y, obj2.y))
obj2.x = 60
MyClass.x = 80
print('obj1.x = {0} obj2.x = {1} MyClass.x = {2}'.format(obj1.x, obj2.x, MyClass.x))
Выполнение проекта и получение результатов.
Результат работы программы представлен на Рисунке 3:
Рисунок
3
- Результат
работы третьей программы
Упражнения 2.4
Задание на разработку проекта
Инициализация объектов класса помощью конструктора
Для выполнения задания следовало разработать:
Класс Dist()
Метод __init__(self, mt, ct) для инициализации атрибутов класса.
В методе __init__(self, mt, ct) реализовать вывод надписи “Конструктор работает”
Метод get_dist(self) для получения значений с клавиатуры.
Метод show_dist(self) для вывода значений атрибутов.
Создать 3 объекта класса Dist(): dist1, dist2 и dist3.
В основной части программы для объектов dist1 и dist2 задать параметры 0, 0.0 и 14, 25 соответственно. Для dist3 параметры вводит пользователь. Вывести значения всех объектов с помощью метода show_dist(self).
Разработка алгоритма
Код программы представлен в Листинге 4
Листинг 4
class Dist:
def __init__(self, mt, ct):
self.meters = mt
self.centimeters = ct
print('Работает контруктор')
def get_dist(self):
self.meters = int(input('Введите число метров'))
self.centimeters = float(input('Введите число сантиметров:'))
def show_dist(self):
print ('{0} м {1} см'.format(self.meters, self.centimeters))
dist1 = Dist(0, 0.0)
dist2 = Dist(14, 25.)
dist3 = Dist(0, 0.0)
dist3.get_dist()
print('dist1 = ', end = '')
dist1.show_dist()
print('dist2 = ', end = '')
dist2.show_dist()
print('dist = ', end = '')
dist3.show_dist()
Выполнение проекта и получение результатов.
Результат работы программы представлен на Рисунке 4:
Рисунок
4 - Результат работы четвертой программы
2 Часть
Задание на разработку проекта
Создать класс с методом конструктора, в котором есть метод расчета варианта из ЛР 1 и в котором есть три метода для каждой ветви системы расчета кусочно-ломанной функции из ЛР2.