How to create an M x N matrix with random numbers in C++

1 Answer

0 votes
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <ctime>

#define ROWS 4
#define COLS 5

void printMatrix(int matrix[][COLS], int rows, int cols) {
    for (int i = 0; i < rows; i++) {  
        for (int j = 0; j < cols; j++) {
            std::cout << std::setw(4) << matrix[i][j];
        } 
        std::cout << "\n";
    }
}
  
int generateRandomInteger(int min, int max) {
    return min + rand() / (RAND_MAX / (max - min + 1) + 1);
    // return rand() % (max - min + 1) + min;
}
      
void generateRandomMatrix(int matrix[][COLS], int rows, int cols) {
    srand(time(0));
    
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            matrix[i][j] = generateRandomInteger(1, 100);
        }
    }
}

int main() {
    int matrix[ROWS][COLS];
    
    generateRandomMatrix(matrix, ROWS, COLS);
        
    printMatrix(matrix, ROWS, COLS);
}



/*
run:

  64  61  33   3  67
  86   9  22  34  52
  52  27  36  79  38
  21   5  19  50  53
  
*/

 



answered May 16, 2024 by avibootz
...