Лабораторные работы / lab_7_отчёт
.docxФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«ОМСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Кафедра «Информатика и вычислительная техника»
ОТЧЕТ
по лабораторной работе № 7
«ОБРАБОТКА ДВУМЕРНЫХ МАССИВОВ»
-
Выполнил:
студент группы ИВТ-234 Кукушкина А.А.
______________________________________
(дата, подпись)
Проверил:
ст. пр. доцент Дорошенко М.С.
_____________________________________________________
(дата, подпись)
Омск 2023
Лабораторная работа №7
Тема: Обработка двумерных массивов
Вариант 9
Задание 1
Условие задачи:
Дана матрица A[1..N,1..N] целых чисел. Сформировать вектор В из максимальных элементов каждой строки.
Схема алгоритма:
Текст программы:
#include<iostream>
#include<conio.h>
#include<vector>
using namespace std;
int main()
{
int A[5][5]{ {36, 54, 19, 1, 64}, {63, 5, 58, 8, 94}, {67, 25, 76, 20, 1}, {8, 81, 96, 74, 26}, {66, 11, 17, 80, 13} };
int max;
vector<int> B;
for (int i = 0; i < 5; i++)
{
max = 0;
for (int j = 0; j < 5; j++)
{
if (A[i][j] > max)
{
max = A[i][j];
}
}
B.push_back(max);
}
for (int i = 0; i < B.size(); i++)
{
cout << B[i] << endl;
}
_getch();
return 0;
}
Результаты выполнения программы, выводы:
– заданная матрица 5 порядка.
– результат выполнения программы, выведенный на экран.
Задание 2
Условие задачи:
Сформировать таблицу Пифагора.
Схема алгоритма:
Текст программы:
#include<iostream>
#include<stdio.h>
#include<conio.h>
using namespace std;
int main()
{
int mas[10][10]{};
for (int i = 0; i <= 9; i++)
{
for (int j = 0; j <= 9; j++)
{
mas[i][j] = (i + 1) * (j + 1);
printf("%d\t", mas[i][j]);
}
cout << endl;
}
_getch();
return 0;
}
Результаты выполнения программы, выводы:
После выполнения программы на экран вывелась таблица Пифагора.
Задание 3
Условие задачи:
Модифицировать программу 6_3 таким образом, чтобы значения X, F1 и F2 были представлены двумерным массивом, состоящим из трех строк.
С хема алгоритма:
Текст программы:
#include <iostream>
#include <iomanip>
#include <conio.h>
#include <math.h>
using namespace std;
int main()
{
int const a = 1, b = 3, n = 15;
int i;
float dv[b][n]{}, x, s;
s = fabs(b - a) / (n - 1);
x = a;
for (i = 0; i < n; i++)
{
dv[0][i] = sqrt(exp(x) - 1);
dv[1][i] = x * pow(log(x), 2);
dv[2][i] = x;
x += s;
}
cout << fixed << setprecision(6);
cout << "X \t";
for (i = 0; i < n; i++)
{
cout << dv[2][i] << " ";
}
cout << "\n" << "F1\t";
for (i = 0; i < n; i++)
{
cout << dv[0][i] << " ";
}
cout << "\n" << "F2\t";
for (i = 0; i < n; i++)
{
cout << dv[1][i] << " ";
}
_getch();
return 0;
}
Результаты выполнения программы, выводы:
После выполнения программы на экран вывелся двумерный массив, состоящий из трёх строк, содержащий значения x, F1 и F2. Результаты полностью совпали со значениями, полученными после выполнения программ 3_2, 4_3, 5_1 и 6_3.