Файл: Разработка, отладка и испытание алгоритмов и программ работы с двумерными списками.docx

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

Категория: Отчет по практике

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

Добавлен: 06.12.2023

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

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

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Отчет по лабораторной работе №6-7Тема: Разработка, отладка и испытание алгоритмов и программ работы с двумерными спискамиЦель: Отработать навыки в программирования и обработки двумерных списковЗадание 1Найти кол-во эл-ов, совпадающих с номером строки или столбцаА)import numpyn = int(input("Введите количество строк: "))m = int(input("Введите количество столбцов: "))matrix = []for i in range(n):row = []for j in range(m):elem = int(input(f"Введите элемент матрицы [{i}][{j}]: "))row.append(elem)matrix.append(row)count = 0for i in range(n):for j in range(m):if matrix[i][j] == i+1 or matrix[i][j] == j+1:count += 1print("Количество элементов, совпадающих с номером своей строки или столбца:", count)Б)import randomn = int(input("Введите количество строк: "))m = int(input("Введите количество столбцов: "))matrix = [[random.randint(1, 10) for j in range(m)] for i in range(n)]for row in matrix:print(row)count = 0for i in range(n):for j in range(m):if matrix[i][j] == i+1 or matrix[i][j] == j+1:count += 1print("Количество элементов, совпадающих с номером своей строки или столбца:", count)Задание 2Задание 2Заменить все положительные элементы им противоположнымimport randomn = int(input("Введите количество строк: "))m = int(input("Введите количество столбцов: "))matrix = [[random.randint(-10, 10) for j in range(m)] for i in range(n)]print("Исходная матрица:")for row in matrix:print(row)for i in range(n):for j in range(m):if matrix[i][j] < 0:matrix[i][j] = abs(matrix[i][j])elif matrix[i][j] > 0:matrix[i][j] = -matrix[i][j]print("Матрица с замененными противоположными элементами:")for row in matrix:print(row)import numpyn = int(input("Введите количество строк: "))m = int(input("Введите количество столбцов: "))matrix = [[0 for j in range(m)] for i in range(n)]for i in range(n):for j in range(m):matrix[i][j] = int(input(f"Введите элемент [{i}][{j}]: "))print("Матрица:")for i in range(n):for j in range(m):print(matrix[i][j], end=" ")print()for i in range(n):for j in range(m):if matrix[i][j] < 0:matrix[i][j] = abs(matrix[i][j])elif matrix[i][j] > 0:matrix[i][j] = -matrix[i][j]print("Измененная матрица:")for i in range(n):for j in range(m):print(matrix[i][j], end=" ")print()Задание 3 Для целочисленной матрицы задается размерность размерности NXM. сформируйте матрицу

заполняя строки квадратами номера столбца, если строка имеет нечетный номер и нулями остальное

n = int(input("Введите количество строк: "))
m = int(input("Введите количество столбцов: "))
matrix = [[0 for j in range(m)] for i in range(n)]
for i in range(n):
for j in range(m):
if i % 2 == 0:
matrix[i][j] = 0
else:
matrix[i][j] = (j+1)**2
print("Матрица:")
for i in range(n):
for j in range(m):
print(matrix[i][j], end=" ")
print()

Контрольные вопросы:


  1. Явным перечислением элементов, путем задания формулы для каждого элемента матрицы, с помощью специальных функций, с помощью операций над другими матрицами.

  2. С помощью функции print() и передать ей матрицу в качестве аргумента (print(row)).

  3. Неверное использование оператора сложения вместо оператора присваивания, и нужен счетчик положительных элементов

  4. Сдвиг элементов массива на 1 позицию влево

  5. Также элементы массива сдвинуться на 1 позицию влево. A[i+1]станет на место A[i], а последний элемент массива не будет учитываться.