Главная страница
Навигация по странице:

  • Краткие теоретические сведения к работе

  • Массив х

  • Реализация в Python import numpy as npn=int(input(Введите число строк ))m=int(input(Введите число столбцов ))x=np.zeros((n, m))

  • Поиск максимальных и минимальных элементов матрицы: Замечания к алгоритмам

  • Контрольные вопросы и задания

  • Лабораторная работа 1 (3). Лабораторная работа 1 Обработка двумерных массивов


    Скачать 143.5 Kb.
    НазваниеЛабораторная работа 1 Обработка двумерных массивов
    Дата26.10.2022
    Размер143.5 Kb.
    Формат файлаdoc
    Имя файлаЛабораторная работа 1 (3).doc
    ТипЛабораторная работа
    #756766

    Лабораторная работа 1

    Обработка двумерных массивов

    Вычисление сумм, произведений и количеств элементов матрицы
    Цель работы: Получить навыки разработки и реализации типовых алгоритмов обработки двумерных массивов на языке Python. Научиться вводить и выводить элементы двумерного массива; вычислять сумму, произведение, количество, среднее арифметическое элементов массива, удовлетворяющих заданному условию, и находящихся в разных строках и столбцах матрицы.
    Структура отчета:


    1. Титульный лист.

    2. Цель работы.

    3. Содержание отчета:

      • текст задания в соответствии со своим вариантом;

      • таблица используемых переменных;

      • схема алгоритма;

      • рукописные тесты;

      • программный код;

      • результаты работы в интерактивном окне (в соответствии с тестами).

    4. Выводы.


    Краткие теоретические сведения к работе:


    1. Общие сведения о двумерном массиве


    Двумерный массив или матрица - это упорядоченная последовательность величин одного типа, имеющих одно имя, но различающихся индексами. Каждой величине или элементу массива соответствуют два целых числа (индекса), определяющие положение элемента в массиве. Размер матрицы определяется двумя целыми числами – количеством строк и количеством столбцов.
    Обращение к элементу массива 
    <имя массива> [индекс строки, индекс столбца] 
    Пример: x[1, 4] x[i, j]
    Индекс Номер

    строки строки Массив х n=3 m=4
    0 1 2 -1 4 5

    1 2 6 3 -3 4

    2 3 0 9 1 -2
    Индекс столбца 0 1 2 3

    Номер столбца 1 2 3 4


    1. Ввод массива:




    n – число строк

    m – число столбцов

    i – индекс строки

    j – индекс столбца

    Реализация в Python

    import numpy as np
    n=int(input('Введите число строк '))

    m=int(input('Введите число столбцов '))
    x=np.zeros((n, m)) - создание матрицы из нулей размером n x m
    for i in range(n):

    for j in range(m):

    print('Введите элемент [' , i+1 , ',' , j+1 , ']' , end=' ')

    x[i,j]=float(input(''))

    3. Вывод массива

    Реализация в Python

    print ('\nИсходный массив\n')

    for i in range(n):

    for j in range(m):

    print('% 4.1f ' % x[i,j], end=' ' )

    print('\n')

    4. Типовые алгоритмы обработки двумерных массивов

    4.1. Вычисление сумм, произведений, количеств элементов матрицы, удовлетворяющих заданному условию и находящихся в разных строках и столбцах матрицы:

    n – число строк

    m – число столбцов

    i – номер строки

    j – номер столбца



      1. Поиск максимальных и минимальных элементов матрицы:


    Замечания к алгоритмам:


    1. Если вычисляется одно значение переменной (сумма, произведение, максимум) для всей матрицы, то ее начальное значение устанавливается перед внешним циклом, а результат выводится после завершения внешнего цикла.

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

    3. Если значение переменной вычисляется для одной строки или одного столбца, то вложенные циклы не нужны. Организуется один цикл по номеру столбца или номеру строки соответственно.


    Контрольные вопросы и задания:


    1. Как определяются индексы и номера элементов двумерного массива массива? Как обратиться к элементу массива?

    2. Как выполнить ввод массива? Нарисуйте схему алгоритма и напишите программный код на языке Python.

    3. Как выполнить вывод массива? Нарисуйте схему алгоритма и напишите программный код на языке Python.

    4. Нарисуйте схему алгоритма и напишите фрагмент процедуры для решения следующих задач (или подобных им):




    1.

    Вычислить сумму (произведение, количество, среднее арифметическое) положительных (отрицательных, меньших заданного числа А, (не) попадающих в интервал [А,В)) элементов, расположенных в строках (столбцах) с четными (нечетными, кратными 3) номерами.

    2.

    Вычислить сумму (произведение, количество, среднее арифметическое) положительных (отрицательных, (не)меньших (больших) заданного числа А, попадающих в интервал [А,В)) элементов, расположенных в первой (третьей, последней) строке (столбце) матрицы.

    3.

    Найти максимальный (минимальный) элемент матрицы из элементов, расположенных в строках (столбцах) с четными (нечетными, кратными 3) номерами и поменять его местами с заданным элементом массива (заменить его на заданную величину).

    4.

    Найти максимальный (минимальный) элемент матрицы из элементов, расположенных в первой (третьей, последней) строке (столбце) матрицы и поменять его местами с заданным элементом массива (заменить его на заданную величину).

    5.

    Поменять местами строку (столбец) с максимальным (минимальным) элементом матрицы с первой (пятой, последней, содержащей минимальный элемент) строкой (столбцом) матрицы.


    Задание к работе:
    В каждой из задач предполагается, что задана матрица размером
    N х M. Программа должна:
    1) вводить размерность и элементы матрицы;

    2) вводить некоторые дополнительные числа;

    3) выполнять действия в соответствии с условием задачи;

    4) выводить исходные данные и результаты вычислений.
    Исходные данные для отладки программы выбрать самостоятельно.
    Таблица 1


    Вариант

    З а д а н и е

    1

    Вычислить сумму положительных элементов, расположенных в столбцах с четными номерами.

    2

    Вычислить произведение отрицательных элементов, расположенных в строках с нечетными номерами.

    3

    Вычислить сумму квадратов элементов из интервала [A,B], расположенных в строках с четными номерами.

    4

    Определить количество элементов, больших заданного А и расположенных в строках с нечетными номерами.

    5

    Вычислить сумму элементов, меньших заданного В и расположенных в столбцах с номерами, кратными 3.

    6

    Вычислить произведение положительных элементов, расположенных в строках с номерами, кратными 4.

    7

    Вычислить сумму квадратов отрицательных элементов, расположенных в столбцах с четными номерами.

    8

    Определить количество элементов, не принадлежащих промежутку (A,B) и расположенных в столбцах с нечетными номерами.

    9

    Вычислить сумму элементов, не меньших заданного D и расположенных в строках с четными номерами.

    10

    Вычислить произведение элементов, небольших заданного F и расположенных в строках с нечетными номерами.

    11

    Вычислить сумму квадратов положительных элементов, расположенных в столбцах с номерами, кратными 3.

    12

    Определить количество отрицательных элементов, расположенных в строках с номерами, кратными 3.

    13

    Вычислить сумму элементов, принадлежащих промежутку [A,B) и расположенных в столбцах с четными номерами.

    14

    Вычислить произведение элементов, больших заданно го Х и расположенных в столбцах с нечетными номерами.

    15

    Вычислить сумму квадратов элементов, меньших Y и расположенных в строках с нечетными номерами.

    16

    Определить, сколько положительных элементов расположено в строках с нечетными номерами.

    17

    Вычислить сумму отрицательных элементов, расположенных в столбцах с номерами, кратными 3.

    18

    Вычислить произведение элементов, не принадлежащих интервалу (X, Y) и расположенных в строках с номерами, кратными 3.

    19

    Вычислить сумму квадратов элементов, не меньших заданного Z и расположенных в столбцах с четными номерами.

    20

    Найти количество элементов, небольших S и расположенных в строках с нечетными номерами.

    21

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

    22

    Вычислить произведение отрицательных элементов, расположенных в строках с нечетными номерами.

    23

    Вычислить сумму элементов, принадлежащих промежутку [X,Y] и расположенных в столбцах с номерами, кратными 3.

    24

    Определить, сколько элементов, больших заданного Т расположено в строках с номерами, кратными 3.

    25

    Вычислить сумму квадратов элементов, меньших заданного D и расположенных в столбцах с четными номерами.

    26

    Вычислить произведение положительных элементов, рас положенных в столбцах с нечетными номерами.

    27

    Вычислить сумму квадратов отрицательных элементов, расположенных в строках с четными номерами.

    28

    Вычислить количество элементов, не принадлежащих промежутку [B,C) и расположенных в строках с нечетными номерами.

    29

    Вычислить сумму элементов, по абсолютной величине больших К и расположенных в столбцах с номерами, кратными 3.

    30

    Вычислить произведение элементов, по абсолютной величине меньших G и расположенных в строках с номерами, кратными 3.



    Список литературы:



    1. Водополова Н.В., Мисюткин В.И., Чабуркина С.А. Основы алгоритмизации. Практическое пособие к лабораторным и контрольным работам по курсам "Информатика" и "Основы информатики и вычислительной техники"– Гомель:, 2004,. № 2963

    2. Бэрри, П. Изучаем программирование на Python - Москва: Эксмо, 2020

    3. Лутц, М. Изучаем Python - Москва : СПб. : Диалектика, 2020

    4. Н.А. Прохоренок. Python 3 и PyQt 5. Разработка приложений. - СПб : БХВ-Петербург, 2017


    написать администратору сайта