@Nexpie

Выдает ошибку, как ее можно исправить?

Надо было отсортировать двумерный массив по возрастанию 0 столбца, вроде ошибок не увидел, но код не работает, помогите
void secondresult(int** a, int n) {
	int t;
	for (int i = 0; i < n-1; i++) {
		for (int j = 0; j < n; j++) {
			if (a[j][i] > a[j + 1][i]) {
				for (int k = 0; k < n; k++) {
					t = a[i][k];
					a[i][k] = a[i+1][k];
					a[i+1][k] = t;
				}
			}
		}
	}
}
  • Вопрос задан
  • 74 просмотра
Пригласить эксперта
Ответы на вопрос 1
wataru
@wataru Куратор тега C++
Разработчик на С++, экс-олимпиадник.
Индексы в сравнении напутаны. Вы делаете один проход пузырька (как бы полусортировка) поочередно по возрастанию каждого столбца. Вместо того, чтобы сделать все проходы сравнивая один и тот же 0-ой столбец.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы