Загрузка данных


#include <iostream>
#include <iomanip>
#include <ctime>
using namespace std;

const/*<---  тип переменая которую не льзя менять после создания*/ int ZAGLYSHKA = 20;
void vivod_dvymernogo_masiva(int masiv[ZAGLYSHKA][ZAGLYSHKA], int STROKI, int STOLBCY); // <------ Импортируем функцию вывода

int main()
{

    int N_Kol_Strok, M_Kol_Stolbcov;
    cout << "Введите кол-во строк: "; cin >> N_Kol_Strok;
    cout << "Введите кол-во столбцов: "; cin >> M_Kol_Stolbcov;    

    int** masiv[N_Kol_Strok][M_Kol_Stolbcov];

}


// красивый вывод двумерного массива, всё считается внутри
void vivod_dvymernogo_masiva(int masiv[ZAGLYSHKA][ZAGLYSHKA], int stroki, int stolbcy)
{
    int stroka, stolbec, i;
    int shirina = 1;
    int chislo, kol;

    // ищем самое длинное число (минус тоже считается за символ)
    for (stroka = 0; stroka < stroki; stroka++)
    {
        for (stolbec = 0; stolbec < stolbcy; stolbec++)
        {
            chislo = masiv[stroka][stolbec];
            kol = 0;

            if (chislo <= 0)
            {
                kol = 1;
            }

            while (chislo != 0)
            {
                chislo = chislo / 10;
                kol++;
            }

            if (kol > shirina)
            {
                shirina = kol;
            }
        }
    }

    // верхняя линия
    for (stolbec = 0; stolbec < stolbcy; stolbec++)
    {
        cout << "+";
        for (i = 0; i < shirina + 2; i++)
        {
            cout << "-";
        }
    }
    cout << "+" << endl;

    // строки с числами и линия под каждой строкой
    for (stroka = 0; stroka < stroki; stroka++)
    {
        cout << "|";
        for (stolbec = 0; stolbec < stolbcy; stolbec++)
        {
            cout << " " << setw(shirina) << masiv[stroka][stolbec] << " |";
        }
        cout << endl;

        for (stolbec = 0; stolbec < stolbcy; stolbec++)
        {
            cout << "+";
            for (i = 0; i < shirina + 2; i++)
            {
                cout << "-";
            }
        }
        cout << "+" << endl;
    }
}

// Заполнение двумерного масива рандомам
void Zapolnenie_dvymernogo_masiva(int masiv[ZAGLYSHKA][ZAGLYSHKA], int stroki, int stolbcy)
{
    srand(time(NULL));

    int a, b;
    cout << "Введите начало рандома: "; cin >> a;
    cout << "Введите конец рандома: "; cin >> b;

    for (int stroka = 0; stroka < stroki; stroka++)
    {
        for ( int stolbec = 0; stolbec < stolbcy; stolbec++)
        {
            masiv[stroka][stolbec] = a + rand() % (b - a + 1);
        }
    }

}