Заменить нулями в матрице те элементы с четной суммой индексов, для которых имеются равные - C (СИ)

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

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

Даны целые числа a1,...,a10 и целочисленная квадратная матрица порядка n. Заменить нулями в матрице те элементы с четной суммой индексов, для которых имеются равные среди a1,...,a10. Среда программирования - Visual C++ 2008.

Решение задачи: «Заменить нулями в матрице те элементы с четной суммой индексов, для которых имеются равные»

textual
Листинг программы
#include <stdio.h>
 
int main(void)
{
   int aN[10] = {2,5,7,33,21,98,40,72,65,99};
   int matrix[4][4] = { { 1, 2, 2, 4},
                  { 5, 5, 7, 7},
                  {44,40,44,40},
                  {77,66,55,33} };
 
  int i,j,n;
 
  for (i=0; i<10; i++)
     printf(" %02i,", aN[i]);
   putchar('\n');
   putchar('\n');
 
  for (i=0; i<4; i++) {
     for (j=0; j<4; j++)
        printf(" %02i,", matrix[i][j]);
      putchar('\n');
  }
  putchar('\n');
 
  for (i=0; i<4; i++)
     for (j=0; j<4; j++)
        for (n=0; n<10; n++)
           if (aN[n]==matrix[i][j] && !((i+j)%2))
              matrix[i][j] = 0;
 
  for (i=0; i<4; i++) {
     for (j=0; j<4; j++)
        printf(" %02i,", matrix[i][j]);
      putchar('\n');
  }
 
  return 0;
}

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

  1. Объявление переменных:
    • aN - массив из 10 целых чисел
    • matrix - массив из 4 строк по 4 элемента, каждая строка - массив из 4 целых чисел
    • i, j, n - индексные переменные для циклов
  2. Вывод массива aN на экран в формате двузначного числа, разделенного запятой, с пробелом после каждого числа и переносом строки после каждого элемента массива.
  3. Вывод матрицы matrix на экран в формате двузначного числа, разделенного запятой, с пробелом после каждого числа и переносом строки после каждой строки матрицы.
  4. Обход матрицы matrix в двухмерном цикле и обход массива aN в трехмерном цикле. Проверка условия: число aN[n] равно элементу матрицы matrix[i][j] и сумма индексов i+j четная. Если условие выполняется, то значение элемента матрицы matrix[i][j] заменяется на ноль.
  5. Вывод обновленной матрицы matrix на экран в формате двузначного числа, разделенного запятой, с пробелом после каждого числа и переносом строки после каждой строки матрицы.
  6. Возврат 0, означающий успешное выполнение программы.

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


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

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

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