Java
Помогите с задачей . Код по желанию, мне нужен ход решения .
Дана матрица N*N с числами от -N до N . Удалить из матрицы все строки и столбцы, содержащие максимальный элемент матрицы. Ну и естественно вывести новую матрицу . И нельзя использовать классы (библиотеки разные) (только начали изучать джаву и препод говорит : если увижу какую-нибудь библиотеку, будьте готовы, что буду спрашивать по всей библиотеке) .
Написать метод удаления строки:
метод должен смещать все строки, лежащие ниже строки для удаления вверх на один.
в конце должна быть изменена переменная, отвечающая за количество строк.
1 2 3 4
4 5 4 0
3 0 9 1
3 2 2 1
пусть k = 1 - номер строки для удаления (2-я строка)
for(int i = k; i < CountRow - 1; i++){
for(int j = 0; j < CountCol; j++){
arr[i][j] = arr[i+1][j];
}
}
CountRow = CountRow - 1;
Должно получиться:
1 2 3 4
3 0 9 1
3 2 2 1
3 2 2 1
Обрезая размерность массива:
1 2 3 4
3 0 9 1
3 2 2 1
Удаление столбца аналогично. Только индексы поменяются. Естественно организовать лучше отдельными методами. Тут важно не выйти за диапазон массива. И изменить в конце глобальные переменные.
В языке Си через указатели можно было бы сделать используя realloc() метод
метод должен смещать все строки, лежащие ниже строки для удаления вверх на один.
в конце должна быть изменена переменная, отвечающая за количество строк.
1 2 3 4
4 5 4 0
3 0 9 1
3 2 2 1
пусть k = 1 - номер строки для удаления (2-я строка)
for(int i = k; i < CountRow - 1; i++){
for(int j = 0; j < CountCol; j++){
arr[i][j] = arr[i+1][j];
}
}
CountRow = CountRow - 1;
Должно получиться:
1 2 3 4
3 0 9 1
3 2 2 1
3 2 2 1
Обрезая размерность массива:
1 2 3 4
3 0 9 1
3 2 2 1
Удаление столбца аналогично. Только индексы поменяются. Естественно организовать лучше отдельными методами. Тут важно не выйти за диапазон массива. И изменить в конце глобальные переменные.
В языке Си через указатели можно было бы сделать используя realloc() метод
Лазиз Ишанов
Ну это я знал, не особо помогло . Вот например : в первой строке 1 и 3 элементы максимальны . Удаляем сначала строку для первого элемента, а для третьего уже удалена будет, надо как-то пропустить её, аналогично со столбцами .
пиши метод для нахождения максимального элемента
пиши метод для удаления заданной строки
пиши метод для удаления заданного столбца
фишка в том, что после каждого удаления столбца и строки матрицы, тебе надо проверять, остались ли ещё элементы равные максимальному...
потому что остальные элементы, ниже максимального и правее максимально будут сдвинуты
и может быть больше чем один максимальный элемент...
попробуй тупо, безо всяких программ, "нарисвать" как бы ты решал подобную задачу...
пиши метод для удаления заданной строки
пиши метод для удаления заданного столбца
фишка в том, что после каждого удаления столбца и строки матрицы, тебе надо проверять, остались ли ещё элементы равные максимальному...
потому что остальные элементы, ниже максимального и правее максимально будут сдвинуты
и может быть больше чем один максимальный элемент...
попробуй тупо, безо всяких программ, "нарисвать" как бы ты решал подобную задачу...
Похожие вопросы
- JAVA. Помогите, пожалуйста, дописать код программы:
- РЕБЯТ, ПОМОГИТЕ С ЗАДАЧЕЙ ПОЖАЛУЙСТА!
- Помогите с задачей !
- Помогите пожалуйста задачи для Java.
- Помогите с задачей по JAVA
- В чем смысл задачи? Решение не надо, кода не надо, просто хочу понять, что нужно сделать, заранее спасибо
- Помогите please решить задачу Java: Дано координату шахматного коня например е2.Требуется вывести все варианты хода коня
- Программисты, помогите написать код который будет выводить одно из чисел (от 1 до 2) с разным шансом ( в джава)
- В этом коде сделать так чтобы был ОДИН метод, (а не 3, как в коде) позволяющий вводить с клавиатуры его характеристики
- Как тестируют код разработчики игр?