Similar presentations:
Двумерные массивы Python
1. Двумерные массивы Python
ДВУМЕРНЫЕМАССИВЫ PYTHON
ЛЕКЦИЯ №9
2.
Если в массиве хранится таблица значений, то такоймассив называют двумерным, а его элементы
нумеруются двумя индексами – номером строки и
номером столбца, на пересечении которых находится
данный элемент.
В памяти компьютера все элементы массива
занимают одну непрерывную область. Двумерный
массив располагается в памяти по строкам.
3.
4. Создание, вывод и ввод матрицы в Питоне
СОЗДАНИЕ, ВЫВОД И ВВОДМАТРИЦЫ В ПИТОНЕ
Задача 1
Создать матрицу 3 x 4, заполнить ее числами 0 и 1 так,
чтобы в одной строке была ровно одна единица, и вывести на
экран.
>>> matrix = [[0, 0, 1], [1, 0, 0], [0, 1, 0], [0, 1, 0]]
>>> print(matrix)
[[0, 0, 1], [1, 0, 0], [0, 1, 0], [0, 1, 0]]
>>>
5. Задача 1 Создать матрицу 3 x 4, заполнить ее числами 0 и 1 так, чтобы в одной строке была ровно одна единица, и вывести на
ЗАДАЧА 1СОЗДАТЬ МАТРИЦУ 3 X 4, ЗАПОЛНИТЬ ЕЕ ЧИСЛАМИ 0 И 1 ТАК, ЧТОБЫ В
ОДНОЙ СТРОКЕ БЫЛА РОВНО ОДНА ЕДИНИЦА, И ВЫВЕСТИ НА ЭКРАН.
import random
matrix=[]
for i in range(3):
arr=[]
ii=random.randint(0,2)
for j in range(3):
if j==ii:
arr.append(1)
else:
arr.append(0)
matrix.append(arr)
print (matrix)
2
1
2
[[0, 0, 1], [0, 1, 0], [0, 0, 1]]
6. Задача 1 Создать матрицу 3 x 4, заполнить ее числами 0 и 1 так, чтобы в одной строке была ровно одна единица, и вывести на
ЗАДАЧА 1СОЗДАТЬ МАТРИЦУ 3 X 4, ЗАПОЛНИТЬ ЕЕ ЧИСЛАМИ 0 И 1 ТАК, ЧТОБЫ В
ОДНОЙ СТРОКЕ БЫЛА РОВНО ОДНА ЕДИНИЦА, И ВЫВЕСТИ НА ЭКРАН.
import random
matrix=[[0]*3 for i in range(3)]
print (matrix)
ii=random.randint(0,2)
matrix[0][ii]=1
ii=random.randint(0,2)
matrix[1][ii]=1
ii=random.randint(0,2)
matrix[2][ii]=1
print (matrix)
[[0, 0, 0], [0, 0, 0], [0, 0, 0]]
[[1, 0, 0], [0, 1, 0], [0, 1, 0]]
7. Вывод
ВЫВОДimport random
matrix=[[random.randint(-15,15) for j in range(3)] for i in range(3)]
#вывод табл. матрицы
for i in range ( len(matrix) ):
for j in range ( len(matrix[i]) ):
print ( "{:5d}".format(matrix[i][j]), end = "" )
print ()
8. Задача 2 Найти сумму элементов двумерного массива
ЗАДАЧА 2НАЙТИ СУММУ ЭЛЕМЕНТОВ
ДВУМЕРНОГО МАССИВА
import random
matrix=[[random.randint(-1,1) for j in range(3)] for i in
range(3)]
summ=0
for i in range ( len(matrix) ):
summ+=sum(matrix[i])
for j in range ( len(matrix[i]) ):
print ( "{:5d}".format(matrix[i][j]), end = "" )
print ()
print (summ)
9. Задача 3 Найти произведение элементов двумерного массива.
ЗАДАЧА 3НАЙТИ ПРОИЗВЕДЕНИЕ ЭЛЕМЕНТОВ
ДВУМЕРНОГО МАССИВА.
p=1
for i in range(3):
for j in range(3):
p *= matrix[i][j]
print (p)
1 2 3
3 2 1
1 2 1
72
10. Задача 4 Найти сумму элементов главной диагонали двумерного массива
ЗАДАЧА 4НАЙТИ СУММУ ЭЛЕМЕНТОВ ГЛАВНОЙ
ДИАГОНАЛИ ДВУМЕРНОГО МАССИВА
import random
matrix=[[random.randint(1,3) for j in range(3)] for i in
range(3)]
summ_gr_d=0
for i in range(3):
summ_gr_d+=matrix[i][i]
print ("сумма элементов главной диагонали
",summ_gr_d)
11. Задача 5 Найти сумму элементов побочной диагонали двумерного массива
ЗАДАЧА 5НАЙТИ СУММУ ЭЛЕМЕНТОВ ПОБОЧНОЙ
ДИАГОНАЛИ ДВУМЕРНОГО МАССИВА
for i in range(n):
summ_gr_d+=matrix[n-i-1][i]
print (matrix[n-i-1][i])
print ("сумма элементов побочной диагонали
",summ_gr_d)
30
25
26
сумма элементов побочной диагонали 81
10 17 26
10 25 10
30 19 11
12. Задача №6
ЗАДАЧА №6Дана матрица n*n. Необходимо элементам, находящимся
на главной диагонали, проходящей из левого верхнего угла в
правый нижний (то есть тем элементам A[i][j], для которых
ij) присвоить значение 1, элементам, находящимся выше
главной диагонали – значение 0, элементам, находящимся
ниже главной диагонали – значение 2.
A = [[2] * i + [1] + [0] * (n - i - 1) for i in range(n)]
13. Задача №7
ЗАДАЧА №7Дана матрица M*N.
1. Найти сумма элементов каждой четной строки.
2. Найти сумму элементов каждого нечетного столбца
14. Задача №7
ЗАДАЧА №715. Задача №8
ЗАДАЧА №8Дана матрица M*N.
1. Найти количество отрицательных элементов и
положительных элементов (без нуля)
16. Задача №9
ЗАДАЧА №9Дана матрица M*N.
1. Найти % соотношение
элементов
четных
и
нечетных
17. Задача №10 Дана матрица M*N. В матрице поменять местами первую и последнюю строки.
ЗАДАЧА №10ДАНА МАТРИЦА M*N.
В МАТРИЦЕ ПОМЕНЯТЬ МЕСТАМИ
ПЕРВУЮ И ПОСЛЕДНЮЮ СТРОКИ.
18. Найти количество строк матрицы, числа в которых возрастают.
НАЙТИ КОЛИЧЕСТВО СТРОКМАТРИЦЫ, ЧИСЛА В КОТОРЫХ
ВОЗРАСТАЮТ.
19.
20. В матрице удалить строки с максимальным и минимальным элементами матрицы
В МАТРИЦЕ УДАЛИТЬ СТРОКИ СМАКСИМАЛЬНЫМ И МИНИМАЛЬНЫМ
ЭЛЕМЕНТАМИ МАТРИЦЫ
21. Задачи
ЗАДАЧИ1. Максимальные элементы столбцов матрицы
2. Поменять местами строки матрицы
3. Найти наибольший по модулю элемент матрицы
4. Сумма и произведение элементов матрицы
5. Количество положительных элементов главной диагонали
матрицы
6. Найти количество всех двухзначных чисел, у которых сумма цифр
кратная 2
7. Сколько раз в матрице встречается заданное число
8. Напишите алгоритм, реализующий следующее условие: если
элемент матрицы MxN равен 0, то весь столбец и вся строка
обнуляются.
9. Напишите код для удаления дубликатов из несортированного
связного списка.
10. Реализуйте алгоритм для нахождения в односвязном списке k-го
элемента с конца.
programming