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

  • Часть скалярное произведение побочной диагонали на i – ю строку Часть 3.

  • 3.1. Основной алгоритм

  • 5. Текст программы на Питоне

  • 7. Вывод Результаты ручного расчета совпали с результатами расчета программы. Это говорит о том, что программа составлена верно.

  • 5 ЛР Шацкий Е.В. ПИА. Отчёт по лабораторной работе 5 Обработка двумерных массивов данных Вариант 49 Выполнил ст гр. Баг2102 Шацкий Е. В. Проверил преподаватель каф.

    Единственный в мире Музей Смайликов

    Самая яркая достопримечательность Крыма

    Скачать 0.5 Mb.
    НазваниеОтчёт по лабораторной работе 5 Обработка двумерных массивов данных Вариант 49 Выполнил ст гр. Баг2102 Шацкий Е. В. Проверил преподаватель каф.
    Дата21.06.2022
    Размер0.5 Mb.
    Формат файлаpdf
    Имя файла5 ЛР Шацкий Е.В. ПИА.pdf
    ТипРешение
    #609153

    Подборка по базе: копия6-МАКЕТ ОТЧЁТА ПО ПРАКТИКЕ 2022 преддипломная Агение И 19., пример отчета по ПП ПМ.05 (1).doc, Краткий отчет пример запонения.pdf, Мой отчет пед пр2.doc, Реализация требований обновленных ФГОС НОО, ФГОС ООО в работе уч, АЭРОПОРТ отчет ЮСПЭТ делопроизводство дораб.Жуковой.docx, Дакаев Т-А Отчет (3).docx, Краткий отчет по практике.doc, Инструкция по охране труда при работе с эфирами и ацетоном.doc, Летняя досуговая площадка Отчет 11 июня.docx
    Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования Уфимский государственный нефтяной технический университет Кафедра вычислительной техники и инженерной кибернетики
    ОТЧЁТ по лабораторной работе №5
    Обработка двумерных массивов данных Вариант № 49 Выполнил ст. гр. БАГ-21-02
    _____ Шацкий Е.В. Проверил преподаватель каф. ВТИК
    _____ Хасанова З.Р. Уфа 2022

    2
    1. Постановка задачи Разработать программу получения и обработки двумерного массива, состоящую из 5 частей. Часть Создание двумерного массива с помощью формулы
    Часть скалярное произведение побочной диагонали на i – ю строку Часть 3. Часть Заменить в исходной матрице столбцы с положительным элементом главной диагонали на вектор х
    Часть 5. умножить транспонированную исходную матрицу на вектор х Обязательные требования к программе.

    Программу разработать для решения задачи в общем виде, для произвольных значений исходных данных количества элементов n (2<=n<=100).
    Решение каждой части в программе реализовать в виде процедуры.
    2. Анализ задачи. Исходными данными являются значения количества элементов в массиве n Порядок решения задачи сначала нужно получить двумерный маcсив (часть 1), затем можно вычислить x i
    и заменить отрицательные числа главной диагонали на ноль часть 2) затем вычислить значение y (часть 3). поменять местами нечетные строки счетными столбцами (часть 4) в конце мы должны умножить вектор хна измененную матрицу (часть 5) это нужно выполнить в последнюю очередь, так как перестановка элементов массива при построении перевернутого массива может повлиять на вычисление. Часть 1. Возьмем любые исходные данные, например n=2, Теперь мы можем создать двумерный массив с помощью формулы:
    Вычислив каждый элемент матрицы поданной формуле, получим
    0.249, 0.23 0.363, 0.277 Часть 2. скалярное произведение побочной диагонали на 1 – ю строку Часть 3.

    y=1.0

    3
    Часть 4. Чтобы заменить в исходной матрице столбцы с положительным элементом главной диагонали на вектор х используем этот алгоритм for i in range(0,N): for j in range (0,N): if (G[i][i]>=0):
    M[i][j]=L[i] получим
    0.05727, 0.05727 0.06371, 0.06371 Часть 5. Чтобы умножить транспонированную исходную матрицу на вектор х воспользуемся этим алгоритмом for i in range(0,N): for j in range(0,N): jo[j][i]=ja[i][j] print(jo)
    H=[] for i in range(0,N): for j in range(0,N): sumar=sumar+jo[i][j]*L[j]
    H.append(sumar) получим
    0.03738, 0.0682

    4
    3.1. Основной алгоритм

    5
    3.2. Создание двумерного массива с помощью формулы

    6
    3.3 скалярное произведение побочной диагонали на i – ю строку

    7
    3.4

    8
    3.5 Замена в исходной матрице столбцов с положительным элементом главной диагонали на вектор х

    9
    3.6 умножение транспонированной исходной матрицы на вектор х

    10
    4. Таблицы переменных задачи Таблица переменных основного алгоритма Смысл переменных Обозначение Тип переменной Примечания в алгоритме в программе Исходные данные Размер массива
    N
    N Целый
    1I
    J
    I
    J Целый Целый Результаты Матрица Матрица Вектор х Значение функции
    H
    G
    X
    Y
    H
    G
    X
    Y Двумерный массив Двумерный массив Одномерный массив Вещественная Таблица переменных алгоритма получения массива) Смысл переменных Обозначение Тип переменной Примечания в алгоритме в программе Входные данные Количество столбцов и строк
    N
    N Целый
    1< n <100 Промежуточные данные Номер строки массива Номер столбца массива Факториал i Факториал j
    I j
    𝑖𝑖!
    𝑗𝑗!
    I
    J fi fj Целый Целый Целый Целый i=
    j=
    𝑓𝑓𝑖𝑖 ∈
    Z
    𝑓𝑓𝑗𝑗 ∈Z Выходные данные Матрица a a Двумерный массив
    A
    ij
    =f(I,j) Таблица переменных алгоритма вычислениях) Смысл переменных Обозначение Тип переменной Примечания в алгоритме в программе Входные данные Количество столбцов и строк Массив
    N a
    N a Целый Двумерный массив
    1A
    ij
    =f(I,j) Промежуточные данные Номер строки массива
    I
    I Целый Выходные данные Вектор x i x x Одномерный массив x
    i
    =a i,i x
    i
    < 0

    12 Таблица переменных алгоритма определения y по формуле) Смысл переменных Обозначение Тип переменной Примечания в алгоритме в программе Входные данные Количество столбцов и строк Матрица Вектор x i
    N
    A x
    N
    A x Целый Двумерный массив Одномерный массив
    1A
    ij
    =f(I,j) x
    i
    > 0 x
    n-i+1
    ≠0 Промежуточные данные Интервал
    I
    I Целый Выходные данные Функция y y Вещественный) Таблица переменных алгоритма замены в исходной матрице столбца с положительным элементом главной диагонали на вектор х (part4) Смысл переменных Обозначение Тип переменной Примечания в алгоритме в программе Входные данные Количество столбцов и строк Матрица
    N a
    N a Целый Двумерный массив
    1A
    ij
    =f(I,j) Промежуточные данные Номер строки массива Номер столбца массива
    I j
    I j Целый
    Целый i=1,n-1,1
    j=1,n-i,1 Выходные данные Перевернутая матрица a a Двумерный массив a[i,j]∈ R

    13 Таблица переменных алгоритма умножение транспонированной исходной матрицей на вектор х (Смысл переменных Обозначение Тип переменной Примечания в алгоритме в программе Входные данные Количество столбцов и строк Вектор x Перевернутая матрица
    N
    X b
    N
    X b Целый Одномерный массив Двумерный массив
    1X[i]∈ R b[i,j]∈ R Промежуточные данные Номер строки массива Номер столбца массива Умножение матрицы i j z i j z Целый
    Целый Вещественный Выходные данные Результат умножения перевернутой матрицы на исходную матрицу c c Одномерный массив c[i,j]∈R
    5. Текст программы на Питоне
    import math import copy
    H=[]
    G=[]
    M=[]
    L=[] jo=[] укажите размерность матрицы N*N N=')) cx=float(N) тая строка ==>'))) матрица) print(' ↓') t=t-1 k=N-1
    F=0 y=0 d=0 a=0 u=-1

    14 ch=0 q=1 suma=0 sumar=0 первая часть создание и заполнение двумерного массива for i in range(0, N): for j in range(0, N):
    H.append(round(((((i+1)**3+math.cos((j+1)**2+(i+1)*(j+1)))**0.5)/(((j+1)**4+(i+1
    )**5+math.e**(j+1+i+1))**0.5)),3))
    G.append(H)
    H=[]
    M=copy.deepcopy(G) jo=copy.deepcopy(G) ja=copy.deepcopy(G) визуализация заданного массива в виде таблицы for i in range(0, N): for j in range(0, N):
    H.append(G[i][j]) print(H)
    H=[] вторая часть
    побочная диагональ for i in range(0, N):
    F=F+G[i][k] k=k-1
    тая строка y=y+G[t][i]
    # скалярное произведение строки на побочную диагональ sum=F+y скалярное произведение строки на побочную диагональ) print(round(sum,3)) вычисление векторах) вектор х) print(L) массив для сравнения i строк for i in range(0,N): for j in range(0, N): d=d+G[i][j]

    15
    H.append(d) d=1 массив с суммой i-тых строк) сумма) получение y
    F=0 y=0 k=N-1 ja=[] for j in range(0,N): for i in range(0,N):
    F=F+G[i][k] k=k-1 y=y+G[j][i] ja.append(y+F) y=0 k=N-1
    скалярное произведение строки на побочную диагональ sorted(ja) sam=ja[0]-(sum-2)**(N-3) print('y=',sam)
    H=[] for i in range(0,N): for j in range (0,N): if (G[i][i]>=0):
    M[i][j]=L[i] матрица после замены главной диагонали пункт 4') print(M) ja=copy.deepcopy(G) for i in range(0,N): for j in range(0,N): jo[j][i]=ja[i][j]
    H=[] for i in range(0,N): for j in range(0,N): sumar=sumar+jo[i][j]*L[j]
    H.append(sumar) print('5 задание) print(H)
    Результаты

    16
    7. Вывод Результаты ручного расчета совпали с результатами расчета программы. Это говорит о том, что программа составлена верно.


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