СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Презентация "Массивы в языке программирования Python"

Категория: Информатика

Нажмите, чтобы узнать подробности

Презентация по теме  "Массивы в языке программирования Python" может быть использована при изучении программирования на уроках информатики в 10-11 классах или при самостоятельном изучении. Используется версия Python 3.8. Специфические возможности языка Python почти не используется, упор сделан на алгоритмическую составляющую рассматриваемых задач. При решении большинства задач используются блок-схемы. Ко всем программам приведены возможные результаты на экране при тестовом запуске программы.

Просмотр содержимого документа
«Презентация "Массивы в языке программирования Python"»

Язык программирования Python Массивы в языке Python

Язык программирования Python

Массивы в языке Python

Массив –  совокупность пронумерованных  величин одного типа, объединённых общим именем.  В языке Python нет такой структуры данных, как массив. Для хранения группы однотипных объектов используют списки   (тип данных list ). Индекс – порядковый номер элемента в массиве. Нумерация элементов массива всегда начинается с нуля. Каждый элемент массива обозначается индексированным именем : Имя[индекс] Например: A[1]  – второй элемент массива A ( с индексом 1). Массивы бывают одномерные ( линейные ) и двумерные ( прямоугольные ). Далее рассматриваются одномерные массивы.

Массив – совокупность пронумерованных величин одного типа, объединённых общим именем.

В языке Python нет такой структуры данных, как массив.

Для хранения группы однотипных объектов используют списки (тип данных list ).

Индекс – порядковый номер элемента в массиве.

Нумерация элементов массива всегда начинается с нуля.

Каждый элемент массива обозначается индексированным именем :

Имя[индекс]

Например:

A[1] – второй элемент массива A ( с индексом 1).

Массивы бывают одномерные ( линейные ) и двумерные ( прямоугольные ). Далее рассматриваются одномерные массивы.

Одномерный (линейный) массив  A i → A[i] 0 1 -5 2 -2 -6 3 4 -1 0 5 4 6 7 2 8 3 -1 9 -3 A  –  имя массива i  – индекс элемента A[0] = -5, A[1] = -2, . . . A[9] = -3 Индексом может быть не только целое число, но и целое значение переменной или арифметического выражения. Например :  A[2*i-1] = -2 (при i=1 ). Перед использованием в программе массив необходимо создать. Обращение к несуществующему элементу вызовет ошибку. Количество элементов в массиве определяется с помощью функции len  (length – «длина») .  Например:  N = len(A)

Одномерный (линейный) массив A

i

A[i]

0

1

-5

2

-2

-6

3

4

-1

0

5

4

6

7

2

8

3

-1

9

-3

A имя массива

iиндекс элемента

A[0] = -5, A[1] = -2, . . . A[9] = -3

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

Например : A[2*i-1] = -2 (при i=1 ).

Перед использованием в программе массив необходимо создать. Обращение к несуществующему элементу вызовет ошибку.

Количество элементов в массиве определяется с помощью функции len (length – «длина») . Например: N = len(A)

Вывод массива на экран 1 способ.  Весь массив выводится как один объект в квадратных скобках, элементы разделяются запятыми. print (A) На экране: [1, 2, 3, 4, 5] 2 способ.  Вывод элементов с помощью цикла в одной строке через пробел. for i in  range ( len (A)):  print (A[i], end=

Вывод массива на экран

1 способ. Весь массив выводится как один объект в квадратных скобках, элементы разделяются запятыми.

print (A)

На экране:

[1, 2, 3, 4, 5]

2 способ. Вывод элементов с помощью цикла в одной строке через пробел.

for i in range ( len (A)):

print (A[i], end= " " )

print () # переход на новую строку

На экране:

1 2 3 4 5

Вывод массива на экран 3 способ.  Вывод элементов с помощью цикла в столбик . На экране: for i in  range ( len (A)): 1 2  print (A[i]) 3 4 5 4 способ. В ывод элементов с помощью цикла в столбик  с указанием индексов . На экране: for i in  range ( len (A)):  print (

Вывод массива на экран

3 способ. Вывод элементов с помощью цикла в столбик .

На экране:

for i in range ( len (A)):

1

2

print (A[i])

3

4

5

4 способ. В ывод элементов с помощью цикла в столбик с указанием индексов .

На экране:

for i in range ( len (A)):

print ( "A[" , i, "]=" , A[i])

A[ 0 ]= 1

A[ 1 ]= 2

A[ 2 ]= 3

A[ 3 ]= 4

A[ 4 ]= 5

Заполнение массивов 1 способ. Создание массива указанием значений элементов Массив создается перечислением элементов через запятую в квадратных скобках. A = [1, -2, -3, 5, 7] Если все элементы одинаковые, используется следующий оператор. # массив из 5 элементов # заполненный нулями A = [0] * 5

Заполнение массивов

1 способ. Создание массива указанием значений элементов

Массив создается перечислением элементов через запятую в квадратных скобках.

A = [1, -2, -3, 5, 7]

Если все элементы одинаковые, используется следующий оператор.

# массив из 5 элементов

# заполненный нулями

A = [0] * 5

Заполнение массивов 2 способ. Ввод с клавиатуры  (при небольшом количестве элементов)  N = 5     # размер массива в переменной B = [0] * N    # заполнение массива нулями print (

Заполнение массивов

2 способ. Ввод с клавиатуры (при небольшом количестве элементов)

N = 5 # размер массива в переменной

B = [0] * N # заполнение массива нулями

print ( "Введите" , N, "элементов массива:" )

for i in range (N): # перебор индексов

B[i] = int ( input ()) # ввод числа с клавиатуры

Можно в цикл добавить подсказку с индексом вводимого элемента.

for i in range (N): # перебор индексов

print ( "B[" , i, "] = " , end= "" ) # вывод подсказки

B[i] = int ( input ()) # ввод числа

На экране:

B[ 0 ] = 1

B[ 1 ] = 2

B[ 2 ] = 3

B[ 3 ] = 4

B[ 4 ] = 5

Заполнение массивов 3 способ. Вычисление элементов по формуле  (функция от индекса) N = 5     # размер массива в переменной C = [0] * N    # заполнение массива нулями for i in  range (N): # перебор индексов  C[i] = i**2 # индекс в квадрате print (C) # вывод массива На экране: [0, 1, 4, 9, 16]

Заполнение массивов

3 способ. Вычисление элементов по формуле (функция от индекса)

N = 5 # размер массива в переменной

C = [0] * N # заполнение массива нулями

for i in range (N): # перебор индексов

C[i] = i**2 # индекс в квадрате

print (C) # вывод массива

На экране:

[0, 1, 4, 9, 16]

Заполнение массивов 4 способ. Заполнение случайными числами  Функция randint(a, b) создаёт случайное целое число  из отрезка [a, b] . N = 5     # размер массива в переменной D = [0] * N    # заполнение массива нулями from random import randint  # подключение функции randint for i in  range (N): # перебор индексов  D[i] = randint(-5, 5) # случайные числа от -5 до 5 print (D) # вывод массива Возможный результат на экране: [0, -4, -2, 1, 5]

Заполнение массивов

4 способ. Заполнение случайными числами

Функция randint(a, b) создаёт случайное целое число из отрезка [a, b] .

N = 5 # размер массива в переменной

D = [0] * N # заполнение массива нулями

from random import randint # подключение функции randint

for i in range (N): # перебор индексов

D[i] = randint(-5, 5) # случайные числа от -5 до 5

print (D) # вывод массива

Возможный результат на экране:

[0, -4, -2, 1, 5]

Задача 1 Определить средний балл 10 учеников, сдававших ЕГЭ  по информатике. # Средний балл учеников N = 10     # размер массива A = [0] * N   # заполнение массива нулями # Ввод значений элементов массива с клавиатуры print (

Задача 1

Определить средний балл 10 учеников, сдававших ЕГЭ по информатике.

# Средний балл учеников

N = 10 # размер массива

A = [0] * N # заполнение массива нулями

# Ввод значений элементов массива с клавиатуры

print ( "Введите оценки:" )

for i in range (N):

print (i+1, "оценка: " , end= "" )

A[i] = int ( input ())

s = 0 # нач. знач. суммы

for i in range (N): # перебор индексов

s = s + A[i] # добавление к сумме

sb = s/10 # среднее арифметическое

print ( "Средний балл:" , sb)

Введите оценки:

1 оценка: 3

2 оценка: 4

3 оценка: 4

4 оценка: 3

5 оценка: 3

6 оценка: 5

7 оценка: 4

8 оценка: 5

9 оценка: 5

10 оценка: 3

Средний балл: 3.9

Задача 2 Подсчитать количество элементов массива, которые больше заданного значения. # Количество элементов массива, соответствующих условию N = 10     A = [0]*N     # создание массива   from random import randint   # подключение функции randint for i in  range (N):    # заполнение массива  A[i] = randint(0, 99)   # случайными числами от 0 до 99 print (A)     # вывод массива x = int ( input ( x: # если очередной соответ. условию k = k+1 # увеличиваем счетчик print ( "Количество элементов больше данного" , k) [30, 81, 28, 35, 35, 94, 9, 76, 25, 40] x = 50 Количество элементов больше данного 3 " width="640"

Задача 2

Подсчитать количество элементов массива, которые больше заданного значения.

# Количество элементов массива, соответствующих условию

N = 10

A = [0]*N # создание массива

from random import randint # подключение функции randint

for i in range (N): # заполнение массива

A[i] = randint(0, 99) # случайными числами от 0 до 99

print (A) # вывод массива

x = int ( input ( "x = " )) # ввод значения для условия

k = 0 # начальное значение счетчика

for i in range (N): # просмотр всех элементов массива

if A[i] x: # если очередной соответ. условию

k = k+1 # увеличиваем счетчик

print ( "Количество элементов больше данного" , k)

[30, 81, 28, 35, 35, 94, 9, 76, 25, 40]

x = 50

Количество элементов больше данного 3

Задача 3 В таблице значений среднесуточной температуры за декаду месяца найти самый холодный день и указать его номер. # Минимальный элемент массива T = [3,5,6,4,2,9,7,5,4,7]  # создание и вывод массива print (

Задача 3

В таблице значений среднесуточной температуры за декаду месяца найти самый холодный день и указать его номер.

# Минимальный элемент массива

T = [3,5,6,4,2,9,7,5,4,7] # создание и вывод массива

print ( "Среднесуточная температура за декаду" )

print (T)

imin = 0 # считаем первый элемент минимальн.

for i in range (1, 10): # просмотр элементов со второго

if T[i]

imin = i # сохраняем его индекс

# вывод максимального элемента и его номера

print ( "Минимальная температура: " , T[imin])

print ( "День номер: " , imin+1)

Среднесуточная температура за декаду

[3, 5, 6, 4, 2, 9, 7, 5, 4, 7]

Минимальная температура: 2

День номер: 5

Задача 4 Определить, есть ли в данном массиве элемент, значение которого равно заданному числу. # Поиск элемента массива, равного заданному значению N = 10; A = [0]*N   # создание массива from random import randint  # подключение функции randint for i in  range (N):   # заполнение массива  A[i] = randint(0, 99)  # случайными числами от 0 до 99 print (A)    # вывод массива x = int ( input (

Задача 4

Определить, есть ли в данном массиве элемент, значение которого равно заданному числу.

# Поиск элемента массива, равного заданному значению

N = 10; A = [0]*N # создание массива

from random import randint # подключение функции randint

for i in range (N): # заполнение массива

A[i] = randint(0, 99) # случайными числами от 0 до 99

print (A) # вывод массива

x = int ( input ( "x = " )) # ввод значения для поиска

nx = -1 # несуществующее значение индекса

for i in range (N): # просмотр всех элементов массива

if A[i] == x: # если очередной равен заданному

nx = i # сохраняем его индекс

if nx == -1: # если индекс не изменился

print ( "Такого значения нет" )

else : # иначе

print ( "Элемент под номером" , nx+1) # вывод номера элемента

[24, 26, 14, 17, 8, 7, 12, 39, 50, 64]

x = 50

Элемент под номером 9

[8, 27, 34, 72, 18, 91, 74, 51, 90, 58]

x = 50

Такого значения нет

Сортировка массива Задача . Упорядочить массив в порядке возрастания значений  его элементов. Алгоритм сортировки методом обмена (метод «пузырька») Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д. Исходные значения A[1] 1-й проход A[2] 5 A[3] 4 2-й проход A[4] 2 3-й проход 3 4-й проход A[5] 1

Сортировка массива

Задача . Упорядочить массив в порядке возрастания значений его элементов.

Алгоритм сортировки методом обмена (метод «пузырька»)

Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д.

Исходные значения

A[1]

1-й проход

A[2]

5

A[3]

4

2-й проход

A[4]

2

3-й проход

3

4-й проход

A[5]

1

Сортировка массива Задача . Упорядочить массив в порядке возрастания значений  его элементов. Алгоритм сортировки методом обмена (метод «пузырька») Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д. Исходные значения A[1] 1-й проход A[2] 5 A[3] 4 2-й проход 3-й проход A[4] 2 4-й проход 3 A[5] 1 4 2 3 1 5

Сортировка массива

Задача . Упорядочить массив в порядке возрастания значений его элементов.

Алгоритм сортировки методом обмена (метод «пузырька»)

Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д.

Исходные значения

A[1]

1-й проход

A[2]

5

A[3]

4

2-й проход

3-й проход

A[4]

2

4-й проход

3

A[5]

1

4

2

3

1

5

Сортировка массива Задача . Упорядочить массив в порядке возрастания значений  его элементов. Алгоритм сортировки методом обмена (метод «пузырька») Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д. Исходные значения A[1] 1-й проход A[2] 5 2-й проход 4 A[3] 2 A[4] 3-й проход 4-й проход 3 A[5] 1 2 3 1 4 5 5 4 2 3 1

Сортировка массива

Задача . Упорядочить массив в порядке возрастания значений его элементов.

Алгоритм сортировки методом обмена (метод «пузырька»)

Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д.

Исходные значения

A[1]

1-й проход

A[2]

5

2-й проход

4

A[3]

2

A[4]

3-й проход

4-й проход

3

A[5]

1

2

3

1

4

5

5

4

2

3

1

Сортировка массива Задача . Упорядочить массив в порядке возрастания значений  его элементов. Алгоритм сортировки методом обмена (метод «пузырька») Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д. Исходные значения A[1] 1-й проход A[2] 5 2-й проход A[3] 4 A[4] 2 3-й проход 4-й проход 3 A[5] 1 1 4 3 2 5 4 2 1 3 5 4 2 3 1 5

Сортировка массива

Задача . Упорядочить массив в порядке возрастания значений его элементов.

Алгоритм сортировки методом обмена (метод «пузырька»)

Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д.

Исходные значения

A[1]

1-й проход

A[2]

5

2-й проход

A[3]

4

A[4]

2

3-й проход

4-й проход

3

A[5]

1

1

4

3

2

5

4

2

1

3

5

4

2

3

1

5

Сортировка массива Задача . Упорядочить массив в порядке возрастания значений  его элементов. Алгоритм сортировки методом обмена (метод «пузырька») Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д. Исходные значения A[1] 1-й проход A[2] 5 A[3] 4 2-й проход A[4] 3-й проход 2 3 4-й проход A[5] 1 1 3 4 2 5 4 2 3 1 5 4 2 1 3 5 4 2 3 1 5

Сортировка массива

Задача . Упорядочить массив в порядке возрастания значений его элементов.

Алгоритм сортировки методом обмена (метод «пузырька»)

Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д.

Исходные значения

A[1]

1-й проход

A[2]

5

A[3]

4

2-й проход

A[4]

3-й проход

2

3

4-й проход

A[5]

1

1

3

4

2

5

4

2

3

1

5

4

2

1

3

5

4

2

3

1

5

Сортировка массива Задача . Упорядочить массив в порядке возрастания значений  его элементов. Алгоритм сортировки методом обмена (метод «пузырька») Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д. Исходные значения A[1] 1-й проход A[2] 5 A[3] 4 2-й проход A[4] 3-й проход 2 3 4-й проход A[5] 1 1 3 4 2 5 4 2 3 1 5 4 2 1 3 5 4 2 1 3 5

Сортировка массива

Задача . Упорядочить массив в порядке возрастания значений его элементов.

Алгоритм сортировки методом обмена (метод «пузырька»)

Последовательно сравнить пары соседних чисел и при необходимости поменять их местами, и т.д. для каждой пары. За один проход самое большое число окажется на последнем месте. Затем повторить проход до элемента, уже находящегося на своем месте. И т. д.

Исходные значения

A[1]

1-й проход

A[2]

5

A[3]

4

2-й проход

A[4]

3-й проход

2

3

4-й проход

A[5]

1

1

3

4

2

5

4

2

3

1

5

4

2

1

3

5

4

2

1

3

5

A[i+1]: # если соседние неупорядочены A[i], A[i+1] = A[i+1], A[i] # меняем их местами print (A) # вывод текущих значений массива [92, 47, 84, 49, 24, 73, 98, 19, 65, 90] [47, 84, 49, 24, 73, 92, 19, 65, 90, 98] [47, 49, 24, 73, 84, 19, 65, 90, 92, 98] [47, 24, 49, 73, 19, 65, 84, 90, 92, 98] [24, 47, 49, 19, 65, 73, 84, 90, 92, 98] [24, 47, 19, 49, 65, 73, 84, 90, 92, 98] [24, 19, 47, 49, 65, 73, 84, 90, 92, 98] [19, 24, 47, 49, 65, 73, 84, 90, 92, 98] [19, 24, 47, 49, 65, 73, 84, 90, 92, 98] " width="640"

Сортировка массива

# Сортировка элементов массива (метод пузырька по неубыванию)

N = 10; A = [0]*N # создание массива

from random import randint # подкл. генератора случайных чисел

for i in range (N): # заполнение массива

A[i] = randint(0, 99) # случайными числами от 0 до 99

print (A) # вывод массива

for k in range (1, N-1): # номер прохода

for i in range (N-k): # просмотр за один проход

if A[i] A[i+1]: # если соседние неупорядочены

A[i], A[i+1] = A[i+1], A[i] # меняем их местами

print (A) # вывод текущих значений массива

[92, 47, 84, 49, 24, 73, 98, 19, 65, 90]

[47, 84, 49, 24, 73, 92, 19, 65, 90, 98]

[47, 49, 24, 73, 84, 19, 65, 90, 92, 98]

[47, 24, 49, 73, 19, 65, 84, 90, 92, 98]

[24, 47, 49, 19, 65, 73, 84, 90, 92, 98]

[24, 47, 19, 49, 65, 73, 84, 90, 92, 98]

[24, 19, 47, 49, 65, 73, 84, 90, 92, 98]

[19, 24, 47, 49, 65, 73, 84, 90, 92, 98]

[19, 24, 47, 49, 65, 73, 84, 90, 92, 98]

Используемые материалы:   Босова Л.Л. Информатика. 8-9 классы. Начала программирования на языке Python. Дополнительные главы к учебникам – М. : БИНОМ. Лаборатория знаний, 2020. Поляков К.Ю. Информатика. 10 класс. Базовый и углубленный уровни : в 2ч. Ч. 2 – М. : БИНОМ. Лаборатория знаний, 2018.

Используемые материалы:

  • Босова Л.Л. Информатика. 8-9 классы. Начала программирования на языке Python. Дополнительные главы к учебникам – М. : БИНОМ. Лаборатория знаний, 2020.
  • Поляков К.Ю. Информатика. 10 класс. Базовый и углубленный уровни : в 2ч. Ч. 2 – М. : БИНОМ. Лаборатория знаний, 2018.


Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!