Просмотр содержимого документа
«"Сортировка массива (списка)"»
Обработка элементов списка (сортировка)
(информатика 9 класс)
учитель МБОУ СОШ с.Тербуны
Тербунского муниципального района
Липцкой области
Болгова Н.А.
2023
(с) Болгова Н.А.
0 : c.append(b) print(‘список а-’ , a) print(sum(c)) # вывод суммы print(len(c)) # вывод количества 2023 (с) Болгова Н.А. " width="640"
Программа (д/з): Найти сумму положительных элементов списка и подсчитать их количество
a = []
c = [] # новый список для положительных элементов из списка а n = int(input())
for i in range(n):
b = int(input())
a.append(b)
if b 0 :
c.append(b)
print(‘список а-’ , a)
print(sum(c)) # вывод суммы
print(len(c)) # вывод количества
2023
(с) Болгова Н.А.
2023
(с) Болгова Н.А.
0: k = k + 1 s = s + a[i] print(‘список а-’ , a) print(s) # вывод суммы print(k) # вывод количества 2023 (с) Болгова Н.А. " width="640"
Программа (д/з): 2 способ
a = []
n = int(input())
for i in range(n):
b = int(input())
a.append(b)
k = 0
s = 0
for i in range(n):
if a[i] 0:
k = k + 1
s = s + a[i]
print(‘список а-’ , a)
print(s) # вывод суммы
print(k) # вывод количества
2023
(с) Болгова Н.А.
«Сортировка списка (массива)»
Тема урока
2023
(с) Болгова Н.А.
Функции списков:
a.sort() # сортировка списка a по возрастанию
a.sort(reverse = True) # сортировка по
убыванию
2023
(с) Болгова Н.А.
Примеры:
2023
(с) Болгова Н.А.
a[ j + 1]: a[ j ] , a[ j + 1] = a[ j + 1 ], a[ j ] print( a) 2023 (с) Болгова Н.А. " width="640"
Сортировка «пузырьком» (по возрастанию)
# ввод списка а
…… .
for i in range(n - 1):
for j in range (n – i – 1):
if a[ j ] a[ j + 1]:
a[ j ] , a[ j + 1] = a[ j + 1 ], a[ j ]
print( a)
2023
(с) Болгова Н.А.
2023
(с) Болгова Н.А.
a[ j + 1]: a[ j ] , a[ j + 1] = a[ j + 1 ], a[ j ] 1) сравниваем попарно элементы списка в цикле 2)если элемент a[j] элемента a[j+1] , то меняем их местами 3) повторяем п1) и п2) сначала списка, пока замены не будет 4) таким образом, самый «легкий пузырек» – элемент в списке станет первым и т.д. 2023 (с) Болгова Н.А. " width="640"
Пояснение
for i in range(n - 1):
for j in range (n – i – 1):
if a[ j ] a[ j + 1]:
a[ j ] , a[ j + 1] = a[ j + 1 ], a[ j ]
1) сравниваем попарно элементы списка в цикле
2)если элемент a[j] элемента a[j+1] , то меняем их местами
3) повторяем п1) и п2) сначала списка, пока замены не будет
4) таким образом, самый «легкий пузырек» – элемент в списке станет первым и т.д.
2023
(с) Болгова Н.А.
Задача:
- Дан произвольный список. Выполнить его сортировку по убыванию
(1 способ – функцией,
2 способ – методом пузырька)
Начало программы:
a = []
n = int(input())
for i in range(n):
b = int(input())
a.append(b)
…… .
2023
(с) Болгова Н.А.
Домашнее задание:
- Повторить все функции и методы списков
2023
(с) Болгова Н.А.