- •Оглавление
- •Лабораторная работа №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. Выполнение проекта и получение результатов
Выполнение проекта и получение результата
Далее на рисунке 3 показан результат работы программы:
Рисунок
24 - Результат работы программы
Доказательство правильности работы программы
Рисунок 25 - Тестирование программы на других значениях
На рисунке 4 показано тестирование программы на новом кортеже:
Лабораторная работа №10 «Работа со словарями»
1 Часть
Задание на разработку проекта
Дана таблица результатов тестирования учащихся по информатике и географии:
-
1
Ученик
Школа
География
Информатика
2
Лиштаев Евгений
1
81
79
3
Будин Сергей
2
63
90
4
Христич Анна
5
62
69
5
Иванов Данила
7
63
74
6
Глотова Анастасия
4
50
66
7
Лещенко Владислав
1
60
50
Написать программу, позволяющую определить:
Чему равна наибольшая сумма баллов по двум предметам среди учащихся школы №5?
Сколько процентов от общего числа учеников получили по информатике не менее 45 баллов?
Для выполнения задания следовало разработать:
Функцию inf_geo(n), позволяющую находить сумму баллов по двум предметам
В функции inf_geo(n) организовать вывод значений.
Функцию inf(n), позволяющую находить процент учеников, которые получили по информатике больше 45 баллов
В функции inf(n) организовать вывод ответа в процентах.
В основной части программы реализовать создание пустого класса Tpupil(), в котором впоследствии создаётся список учеников, которые вводит сам пользователь. Осуществить выполнение функций, а также вывод ответа.
Формализация задания:
Для того чтобы создать пустой класс, нужно после объявления класса написать pass и закрыть класс. После создать пустой список и начать циклический алгоритм, с помощью которого этот список наполняется значениями, которые вводит пользователь. В функциях inf_geo(n) и inf(n) с помощью циклического алгоритма перебирать значения списка и, если они совпадают с заданными условиями соответственно работать с ними.
2. Разработка алгоритма
Ниже представлена блок-схема функции inf_geo(n) по нахождению суммы баллов по двум предметам среди учащихся школы №5 (Рисунок 1)
Рисунок
1 - Блок-схема функции inf_geo(),
которая находит сумму баллов по двум
предметам среди учащихся школы №5.
Ниже представлена блок-схема функции inf() для выведения процентажа учеников, у которых баллы больше 45. (Рисунок 2)
Рисунок
2 - Блок-схема функции inf(),
которая находит процентаж учеников у
которых баллы больше 45.
Рисунок
3 - Блок-схема основной части программы
Ниже представлен код программы:
Код программы:
class Tpupil:
pass
pupils = []
n = int(input('Сколько учеников в хотите добавить? '))
for i in range(n):
pupils.append(Tpupil())
print('Введите информацию о ', str(i + 1), ' ученике: ')
pupils[i].name = str(input('Имя и Фамилия ученика: '))
pupils[i].school = int(input('Номер школы: '))
pupils[i].geography = int(input('Кол-во баллов по географии: '))
pupils[i].informatika = int(input('Кол-во баллов по информатике: '))
def inf_geo(n):
for i in range(n):
if pupils[i].school == 5:
k1 = pupils[i].geography
if (pupils[i].geography + pupils[i].informatika) > k1:
k1 = pupils[i].geography + pupils[i].informatika
return k1
def inf(n):
k2 = 0
for i in range(n):
if (pupils[i].informatika >= 45):
k2 += 1
proc = round((k2*100)/n,1)
return proc
summa_ballov = inf_geo(n)
rez = inf(n)
print('Наибольшая сумма баллов по двум предметам среди учащихся школы №5: ', summa_ballov)
print('Процентаж учеников получивших по информатике не менее 45 баллов: ', rez)