![](/user_photo/_userpic.png)
- •Оглавление
- •Лабораторная работа №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. Выполнение проекта и получение результатов
Разработка алгоритма
Ниже представлена блок-схема функции для нахождения среднего арифметического чисел (Рис.1).
Рис.
30 - Блок-схема функции average(),
для нахождения среднего арифметического
Ниже представлена блок-схема функции another_list() по формирования нового списка по заданному условию (Рис.2).
Рис.
31 - Блок-схема функции another_list(),
для формирования нового списка
На Рис.3 показана блок-схема функции insertion_sort(), которая сортирует исходный список методом бинарных вставок.
Рис.
32 - Блок-схема функции insertion_sort(),
для сортировки методом бинарных вставок
На Рис.4 показана блок-схема функции bubble() для сортировки результирующего списка методом простого обмена (1 способ).
Рис. 33 - Блок-схема функции bubble(), для сортировки методом простого обмена(1 способ)
Блок-схема основной части программы представлена на Рис. 5.
Рис.
34 - Блок-схема основной части программы
Код функции для вычисления среднего значения элементов списка:
#функция для нахождения среднего значения
def average(*spisoks):
k = 0
s = 0
for i in spisoks:
if i % 2 == 0:
k += 1
s += i
d = s/k
return d
Код функции для составления нового списка по указанному условию:
#функция для формирования нового списка
def another_list(*avr):
chislo = module.average(*avr)
spisok2 = []
for i in avr:
if i > chislo:
spisok2.append(i)
return spisok2
Код функции по сортировке списка методом бинарных вставок:
#Сортировка методом бинарных вставок
def insertion_sort(*b):
a = []
for k in b:
a.append(k)
for i in range(len(a)):
x = a[i]
left = 0
right = i - 1
while left < right:
m = left + (right - left) // 2
if x < a[m]:
right = m
else:
left = m + 1
for j in range(i, left + 1, -1):
a[j] = a[j - 1]
a[left] = x
return a
Код функции для сортировки списка методом простого обмена (1 способ)
#Сортировка методом простого обмена (1 способ)
def bubble(*a):
array = []
for k in a:
array.append(k)
for i in range(len(array)-1):
for j in range(len(array)-i-1):
if array[j] > array[j+1]:
buff = array[j]
array[j] = array[j+1]
array[j+1] = buff
return array
Код основной части программы:
import random
spisok = []
n = int(input('Введите количество элементов: '))
spisok = random.sample(range(1000), n)
print('Исходный список: ', spisok)
avr = average(spisok)
print('Среднее арифметическое равно: ', str(avr))
an_lst = another_list(spisok)
print("Другой сформированный список: ", an_lst)
in_sort = insertion_sort(*spisok)
print('Список после сортировки методом бинарных вставок: ', in_sort)
bub = bubble(*an_lst)
print('Результирующий список после сортировки методом простого обмена(1 способ): ', bub)