Условие задачи:
Дана действительная квадратная матрица порядка , натуральные числа
. Из матрицы удалить
-строку и
-столбец.
Тесты:
Матрица. | Полученная Матрица | |||
4 | 10 10 20 20 30 30 40 40 50 50 60 60 70 70 80 80 |
1 | 1 | 30 40 40 50 60 60 70 80 80 |
5 | 1.1 1.1 1.1 1.1 1.1 2.2 2.2 2.2 2.2 2.2 3.3 3.3 3.3 3.3 3.3 4.4 4.4 4.4 4.4 4.4 5.5 5.5 5.5 5.5 5.5 |
2 | 3 | 1.1 1.1 1.1 1.1 3.3 3.3 3.3 3.3 4.4 4.4 4.4 4.4 5.5 5.5 5.5 5.5 |
3 | 2 -2 2 3 -3 3 5 -5 5 |
1 | 3 | 3 -3 4 -4 |
Код программы:
Алгоритм:
- Пользователь вводит порядок матрицы
и её элементы.Затем он вводит
-строку и
-столбец, которые он хочет удалить.
- В первом цикле создаем переменную — индекс строки нового массива со значением 0. Проверяем, если указанный нам номер строки совпадает с текущим, то мы переходим на следующую по номеру строку, так как эта строка нам больше не понадобится.
- Если не совпадает, во внутреннем цикле создаем переменную — номер столбца нового массива со значением 0. Проверяем или совпадает индекс текущего столбца с индексом указанным нам. Если да, то увеличиваем на 1 индекс нашего столбца ( этим мы «обращаем свое внимание» на следующий столбик, игнорируя этот ).
- После этого присваиваем значения текущего индекса строки и столбца, получившимся в ходе циклов,значениям индексов нового массива. С помощью внутреннего цикла заполняем данную строку до конца.
- После заполнения увеличиваем на 1 индексы данного и нового массива ( переходим на следующую строку матрицы ). Возвращаемся к условию внешнего цикла и продолжаем заполнять новый массив.
- Данному массиву присваиваем новый. В конце выводим полученный массив.
Работающая версия программы на ideone.com
Хорошо.
Но мне кажется, что Вы описываете не алгоритм работы, а саму программу. В этом нет необходимости если в программе нет каких-то особо тонких моментов.