Основы программирования на С++ для начинающих

Задачи: Двумерные массивы C++

Чтобы приступить к решению задач, предложенных в этой статье, вам необходимо знать что такое двумерные (многомерные) массивы . Задачи расположены от простой к сложной. Так что, если вы новичок в программировании, начинайте с первой, чтобы лучше разобраться с остальными.

1. Объявить двумерный массив, заполнить целыми числами и показать на экран. 

2) Объявить двумерный массив и заполнить его построчно с клавиатуры. После заполнения – показать заполненную матрицу на экран и посчитать сумму элементов отдельно в каждом столбце и каждой строке.

3) Заполнить двумерный массив случайными  числами от 10  до 100. Посчитать сумму элементов отдельно в каждой строке и определить номер строки,  в которой эта сумма максимальна.

Ваши вопросы, которые возникли при решении задач, оставляйте в комментариях к этой статье.

117 thoughts on “Задачи: Двумерные массивы C++

  1. почему вы выделили целый массив под сумму элементов строки массива почему, можно же обычную переменную?

  2. #include
    #include
    using namespace std;

    int main (){
    srand(time(NULL));
    const int COL = 7;
    const int ROW = 5;
    int arr[ROW][COL];
    for (int i = 0; i < ROW; i++){
    for (int k = 0; k < COL; k++){
    arr[i][k] = rand() % 100;
    cout << arr[i][k] << '\t';
    }
    cout << endl;
    }
    return 0;
    }

  3. #include
    #include
    using namespace std;

    int main (){
    srand(time(NULL));
    const int COL = 7;
    const int ROW = 5;
    int arr[ROW][COL];
    for (int i = 0; i < ROW; i++){
    for (int k = 0; k < COL; k++){
    arr[i][k] = 10 +rand() % 91;
    cout << arr[i][k] << '\t';
    }
    cout << endl;
    }
    int Sum;
    int arrSum[] ={};
    for (int i = 0; i < ROW; i++){
    Sum = 0;
    for (int k = 0; k < COL; k++)
    Sum += arr[i][k];
    arrSum[i] = Sum;
    cout <<"line" << i+1 <<'\t'<<Sum << endl;}
    // max sum value all line
    int max = arrSum[0];
    for (int j = 1; j max)
    max =arrSum[j];
    }
    cout << " max sum value all line: " << max;
    return 0;
    }

  4. решение 3-й задачи
    #include
    using namespace std;
    int main()
    {
    srand(time(NULL));
    int mas[5][5];
    int su[5] = {0,0,0,0,0};
    int ch, G, V;
    /* с помощью G находим мах сумму
    сh счетчик строки
    V используем для поиска строки где самвя большая сумма */
    ch = 0;
    G = su[0];

    for (int x = 0; x < 5; x++) {
    for (int y = 0; y < 5; y++) {
    mas[x][y] = 10 + rand() % 100;
    }
    }
    for (int x = 0; x < 5; x++) {
    for (int y = 0; y < 5; y++) {
    cout << mas[x][y]<<"…";
    }
    cout <<" "<< endl;
    }
    for (int x = 0; x < 5; x++) {
    for (int y = 0; y < 5; y++) {
    su[x] = su[x] + mas[x][y];
    }
    cout << "summa stroki |" << x + 1 << "| = " << su[x] << endl;
    }
    for (int x = 0; x < 5; x++) {
    if (G <= su[x]) {
    G = su[x];

    }

    }
    for (int x = 0; x < 5; x++) {
    V = su[x];
    ch++;
    if (V == G) {
    break;
    }
    }
    cout << "max stroka |" << ch << "|= " << G;
    return 0;
    }

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *