Answer to Question #159669 in C++ for zain ul abdeen

Question #159669

Write a C++ program that computes the sum of two square matrices using a two-dimensional array. Generate random values using the rand () function.

 

SAMPLE OUTPUT:

 

matrix 1

1

2

3

4

5

6

1

2

3

 

matrix 2

3

4

5

8

7

6

9

10

11

 

Sum of matrices is

4

6

8

12

11

12

10

12

14


1
Expert's answer
2021-01-31T15:14:08-0500
#include <iostream>
#include <cstdlib>
#include <ctime>

const int MATRIX_ROWS_COUNT    = 3;
const int MATRIX_COLUMNS_COUNT = 3;

int GetRndElement()
{
    //[0; 10)
    return rand() % 10;
}

void FillMatrix(int matrix[MATRIX_ROWS_COUNT][MATRIX_COLUMNS_COUNT])
{
    for(int i=0; i<MATRIX_ROWS_COUNT; ++i)
    {
        for(int j=0; j<MATRIX_COLUMNS_COUNT; ++j)
        {
            matrix[i][j] = GetRndElement();
        }        
    }
}

void PrintMatrix(int matrix[MATRIX_ROWS_COUNT][MATRIX_COLUMNS_COUNT])
{
    for(int i=0; i<MATRIX_ROWS_COUNT; ++i)
    {
        for(int j=0; j<MATRIX_COLUMNS_COUNT; ++j)
        {
            std::cout << matrix[i][j] << "\t";
        }

        std::cout << "\n";
    }
}

void SumMatrix(int matrix1[MATRIX_ROWS_COUNT][MATRIX_COLUMNS_COUNT]
              ,int matrix2[MATRIX_ROWS_COUNT][MATRIX_COLUMNS_COUNT]
              ,int matrix3[MATRIX_ROWS_COUNT][MATRIX_COLUMNS_COUNT])
{
    for(int i=0; i<MATRIX_ROWS_COUNT; ++i)
    {
        for(int j=0; j<MATRIX_COLUMNS_COUNT; ++j)
        {
            matrix3[i][j] = matrix1[i][j] + matrix2[i][j];
        }
    }
}

int main()
{
    srand(static_cast<unsigned>(time(NULL)));

    int matrix1[MATRIX_ROWS_COUNT][MATRIX_COLUMNS_COUNT];
    int matrix2[MATRIX_ROWS_COUNT][MATRIX_COLUMNS_COUNT];
    int matrix3[MATRIX_ROWS_COUNT][MATRIX_COLUMNS_COUNT];

    FillMatrix(matrix1);
    FillMatrix(matrix2);

    SumMatrix(matrix1, matrix2, matrix3);
    
    std::cout << "matrix 1\n";
    PrintMatrix(matrix1);

    std::cout << "\nmatrix 2\n";
    PrintMatrix(matrix2);

    std::cout << "\nSum of matrices is\n";
    PrintMatrix(matrix3);
    
    return 0;    
}

Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
New on Blog