Код программы

Лабораторная работа №4.

Тема: Двумерные массивы.

Цель работы: Приобретение навыков в составлении программ с использованием битов, приобретение навыков в формировании и обработке одномерных и многомерных массивов.

Задание на работу:

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

 

Блок-схема алгоритма


 

Код программы

 

#include <iostream>

using namespace std;

void main()

{

setlocale(0, "Rus");

int Z[5][4], temp, counter=0, i, j;

cout << "Введите элементы матрицы Z[5][4]\n";

for (i = 0; i < 5; i++)

for (j = 0; j < 4; j++)

cin >> Z[i][j];

cout << "Исходная матрица:\n";

for (i = 0; i < 5; i++)

{

for (j = 0; j < 4; j++)

cout << Z[i][j] << "\t";

cout << "\n";

}

for (i = 0; i < 5; i++)

{

temp = 0;

for (j = 1; j < 4; j++)

if (Z[i][j]>Z[i][temp])

temp = j;

if (temp)

{

Z[i][0] += Z[i][temp];

Z[i][temp] = Z[i][0] - Z[i][temp];

Z[i][0] -= Z[i][temp];

counter++;

}

}

cout << "Преобразованная матрица\n";

for (i = 0; i < 5; i++)

{

for (j = 0; j < 4; j++)

cout << Z[i][j] << "\t";

cout << "\n";

}

cout << "Количество строк матрицы, где максимальный элемент не первый = " << counter << "\n";

system("pause");

}