Найти в матрице первую по порядку строку, содержащую наибольшее количество нулей - C (СИ)

Узнай цену своей работы

Формулировка задачи:

дана матрица.найти в ней первую по порядку строку, содержащую наибольшее количество нулей.

Решение задачи: «Найти в матрице первую по порядку строку, содержащую наибольшее количество нулей»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
 
main()
{
    const int n=4;
    int a[n][n], i, j, max=0, imax,z;
    
    srand(time(NULL));  
    for (i=0; i<=n; i++)
    {
        z=0;
        for (j=0; j<=n; j++)
        {
            a[i][j]=rand()%5;
            if (a[i][j] == 0)
            z++;
            printf("%3d",a[i][j]);
        }
        if (z>max) 
        {
            max=z;
            imax=i+1;
        }
        printf("\n");
    }
    printf("Номер строки = %d",imax);
    getch();
}

Объяснение кода листинга программы

В этом коде используется язык программирования C. Список действий, которые выполняются в коде:

  1. Включаются необходимые заголовочные файлы:
    • stdio.h - для работы с вводом/выводом данных;
    • conio.h - для работы с функцией getch(), которая используется для приостановки выполнения программы до нажатия клавиши;
    • stdlib.h - для работы с функцией rand() и srand();
    • time.h - для инициализации генератора случайных чисел.
  2. Определяются переменные:
    • n - размер матрицы (4х4);
    • a[n][n] - матрица целых чисел размером n на n;
    • i и j - индексы для обхода матрицы;
    • max - максимальное количество нулей в строке;
    • imax - номер строки с максимальным количеством нулей;
    • z - счетчик нулей в текущей строке.
  3. Задаются начальные условия:
    • С помощью функции srand(time(NULL)) инициализируется генератор случайных чисел текущим временем;
    • Матрица a[n][n] заполняется случайными числами от 0 до 4 с помощью цикла for и функции rand()%5.
  4. Находится строка с максимальным количеством нулей:
    • Цикл for проходит по всем строкам матрицы;
    • В каждой строке подсчитывается количество нулей с помощью переменной z;
    • Если количество нулей в текущей строке больше, чем максимальное количество, то обновляются значения переменных max и imax;
    • После окончания цикла выводится на экран количество нулей в каждой строке.
  5. Выводится на экран номер строки с максимальным количеством нулей.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4 из 5
Похожие ответы