Информатика, вопрос задал vladkirna , 1 год назад

С++ написати код

Завдання 1. Написати перевантажені функції (int, double, char) для виконання таких завдань:

Ініціалізація квадратної матриці;

Вивід матриці на екран;

• Визначення максимального й мінімального елемента на головній діагоналі матриці;​

Ответы на вопрос

Ответил Аноним
0

Ответ:

Объяснение:

#include <iostream>

#include <iomanip>

using namespace std;

const int MAX_SIZE = 10;

// Инициализация квадратной матрицы типа int

void initMatrix(int matrix[][MAX_SIZE], int size) {

   for (int i = 0; i < size; i++) {

       for (int j = 0; j < size; j++) {

           matrix[i][j] = i + j;

       }

   }

}

// Инициализация квадратной матрицы типа double

void initMatrix(double matrix[][MAX_SIZE], int size) {

   for (int i = 0; i < size; i++) {

       for (int j = 0; j < size; j++) {

           matrix[i][j] = (i + j) * 0.5;

       }

   }

}

// Инициализация квадратной матрицы типа char

void initMatrix(char matrix[][MAX_SIZE], int size) {

   for (int i = 0; i < size; i++) {

       for (int j = 0; j < size; j++) {

           matrix[i][j] = 'A' + i + j;

       }

   }

}

// Вывод матрицы на экран

template <typename T>

void printMatrix(T matrix[][MAX_SIZE], int size) {

   for (int i = 0; i < size; i++) {

       for (int j = 0; j < size; j++) {

           cout << setw(5) << matrix[i][j];

       }

       cout << endl;

   }

}

// Определение максимального и минимального элемента на главной диагонали матрицы

template <typename T>

void findDiagonalMinMax(T matrix[][MAX_SIZE], int size, T& min, T& max) {

   min = matrix[0][0];

   max = matrix[0][0];

   for (int i = 1; i < size; i++) {

       if (matrix[i][i] < min) {

           min = matrix[i][i];

       }

       if (matrix[i][i] > max) {

           max = matrix[i][i];

       }

   }

}

int main() {

   int intMatrix[MAX_SIZE][MAX_SIZE];

   double doubleMatrix[MAX_SIZE][MAX_SIZE];

   char charMatrix[MAX_SIZE][MAX_SIZE];

   const int size = 5;

   initMatrix(intMatrix, size);

   initMatrix(doubleMatrix, size);

   initMatrix(charMatrix, size);

   cout << "Integer matrix:" << endl;

   printMatrix(intMatrix, size);

   cout << endl;

   cout << "Double matrix:" << endl;

   printMatrix(doubleMatrix, size);

   cout << endl;

   cout << "Char matrix:" << endl;

   printMatrix(charMatrix, size);

   cout << endl;

   int intMin, intMax;

   findDiagonalMinMax(intMatrix, size, intMin, intMax);

   cout << "Int diagonal min: " << intMin << endl;

   cout << "Int diagonal max: " << intMax << endl;

   double doubleMin, doubleMax;

   findDiagonalMinMax(doubleMatrix, size, doubleMin, doubleMax);

   cout << "Double diagonal min: " << doubleMin << endl;

   cout << "Double diagonal max: " << doubleMax << endl;

   char charMin

Новые вопросы