Файл: Язык программирования Python Массивы в языке Python.pptx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.01.2024

Просмотров: 547

Скачиваний: 10

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

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

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

i→

0

1

2

3

4

5

6

7

8

9

A[i]

-5

-2

-6

-1

0

4

2

3

-1

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

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

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

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

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

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

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

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

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 ] = 1B[ 1 ] = 2B[ 2 ] = 3B[ 3 ] = 4B[ 4 ] = 5На экране:

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

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 # подключение функции randintfor i in range(N): # перебор индексовD[i] = randint(-5, 5) # случайные числа от -5 до 5print (D) # вывод массива[0, -4, -2, 1, 5]Возможный результат на экране:

Задача 1

# Средний балл учеников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)Определить средний балл 10 учеников, сдававших ЕГЭ по информатике.Введите оценки:

1 оценка: 32 оценка: 43 оценка: 44 оценка: 35 оценка: 36 оценка: 57 оценка: 48 оценка: 59 оценка: 510 оценка: 3Средний балл: 3.9

Задача 2

Подсчитать количество элементов массива, которые больше заданного значения.# Количество элементов массива, соответствующих условиюN = 10 A = [0]*N # создание массива from random import randint # подключение функции randintfor i in range(N): # заполнение массиваA[i] = randint(0, 99) # случайными числами от 0 до 99print (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 ("Среднесуточная температура за декаду") print (T)imin = 0 # считаем первый элемент минимальн.for i in range(1, 10): # просмотр элементов со второго if T[i] < T[imin]: # если очередной меньше минимальн.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 # подключение функции randintfor i in range(N): # заполнение массиваA[i] = randint(0, 99) # случайными числами от 0 до 99print (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]

A[2]

A[3]

A[4]

A[5]

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

5

4

2

3

1

1-й проход

2-й проход

3-й проход

4-й проход

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

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

A[1]

A[2]

A[3]

A[4]

A[5]

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

5

4

2

3

1

1-й проход

2-й проход

3-й проход

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

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

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

A[1]

A[2]

A[3]

A[4]

A[5]

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

5

4

2

3

1

1-й проход

2-й проход

3-й проход

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

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

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

A[1]

A[2]

A[3]

A[4]

A[5]

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

5

4

2

3

1

1-й проход

2-й проход

3-й проход

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

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

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

A[1]

A[2]

A[3]

A[4]

A[5]

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

5

4

2

3

1

1-й проход

2-й проход

3-й проход

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

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