#include <iostream>
#include <ctime>
template <int ROWS, int COLUMNS>
struct Matrix
{
int rows = ROWS;
int columns = COLUMNS;
int matrix[ROWS][COLUMNS] = {};
void produceMatrix()
{
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < columns; j++)
{
matrix[i][j] = rand() % 10 + 1;
}
}
}
void showMatrix()
{
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < columns; j++)
{
std::cout << matrix[i][j] << "\t";
}
std::cout << std::endl;
}
}
};
int main()
{
srand(time(0));
Matrix<3,4> a;
a.produceMatrix();
a.showMatrix();
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3RpbWU+Cgp0ZW1wbGF0ZSA8aW50IFJPV1MsIGludCBDT0xVTU5TPgpzdHJ1Y3QgTWF0cml4CnsKICAgIGludCByb3dzID0gUk9XUzsKICAgIGludCBjb2x1bW5zID0gQ09MVU1OUzsKICAgIGludCBtYXRyaXhbUk9XU11bQ09MVU1OU10gPSB7fTsKCiAgICB2b2lkIHByb2R1Y2VNYXRyaXgoKQogICAgewogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgcm93czsgaSsrKQogICAgICAgIHsKICAgICAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCBjb2x1bW5zOyBqKyspCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IHJhbmQoKSAlIDEwICsgMTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICB2b2lkIHNob3dNYXRyaXgoKQogICAgewogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgcm93czsgaSsrKQogICAgICAgIHsKICAgICAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCBjb2x1bW5zOyBqKyspCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHN0ZDo6Y291dCA8PCBtYXRyaXhbaV1bal0gPDwgIlx0IjsKICAgICAgICAgICAgfQogICAgICAgICAgICBzdGQ6OmNvdXQgPDwgc3RkOjplbmRsOwogICAgICAgIH0KICAgIH0KfTsKCgppbnQgbWFpbigpCnsKICAgIHNyYW5kKHRpbWUoMCkpOwogICAgTWF0cml4PDMsND4gYTsKICAgIGEucHJvZHVjZU1hdHJpeCgpOwogICAgYS5zaG93TWF0cml4KCk7Cn0=