Удалить из матрицы строки и столбцы, последние элементы которых положительны - C (СИ)

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

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

Доброго времени суток!Помогите пожалуйста написать программу, задание такое: "В основной программе описать матрицу целых чисел. Размерность матрицы запрашивать с клавиатуры. Элементы матрицы задать случайным образом. Написать функцию, удаляющую из матрицы строки и столбцы, последние элементы которых положительны. Размерность матрицы передать в функцию по ссылке. На экран в основной программе вывести исходную и преобразованную матрицы"

Решение задачи: «Удалить из матрицы строки и столбцы, последние элементы которых положительны»

textual
Листинг программы
int a,b; // переменные отвечают за позицию строки в НОВОМ массиве, и столбца в НОВОМ массиве
 
for(a = 0, i=0; i < счетчик_разрешенных_строк; i++, a++)
{
 for(b = 0, j=0; j < счетчик_разрешенных_столбцов; j++, b++)
 {
  НОВЫЙ_МАССИВ[a][b] = 
          СТАРЫЙ_МАССИВ[МАССИВ_РАЗРЕШЕННЫХ_СТРОК[i]][МАССИВ_РАЗРЕШЕННЫХ_СТОЛБЦОВ[i]];
 }
}

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

  1. Переменные a и b используются для отслеживания позиции строки и столбца в новом массиве соответственно.
  2. Код выполняет два вложенных цикла. Внешний цикл выполняется столько раз, сколько есть разрешенных строк в старом массиве. Внутренний цикл выполняется столько раз, сколько есть разрешенных столбцов в текущей строке.
  3. Значение в новом массиве устанавливается равным значению в старом массиве по индексу, соответствующему разрешенной строке и разрешенному столбцу.
  4. Код не удаляет строки или столбцы из старого массива. Он просто копирует значения из старого массива в новый массив, исключая строки и столбцы, которые не были разрешены.

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


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

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

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