powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Сортировка массива при значении int j = 1 не работает, а при значении 0 работает, почему?
6 сообщений из 6, страница 1 из 1
Сортировка массива при значении int j = 1 не работает, а при значении 0 работает, почему?
    #39384326
040985
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сортировка массива при значении int j = 1 не работает, а при значении 0 работает, почему?
Если я правильно понимаю код, то должна работать и при значении 0 и при значении 1, просто при значении 1 кол-во повторений второго цикла должно быть меньше.

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
// сортировка массива по количеству столбцов
		for (int i = 0; i < table.length; i++) { 
			for (int j = 1; j < table.length; j++){  
				if(table[i].length < table[j].length){
					int[] a = table[i];
					table[i] = table[j];
					table[j] = a;
				}
			}
		}
...
Рейтинг: 0 / 0
Сортировка массива при значении int j = 1 не работает, а при значении 0 работает, почему?
    #39384363
rema174
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
040985,
это что за бред
table[i].length
...
Рейтинг: 0 / 0
Сортировка массива при значении int j = 1 не работает, а при значении 0 работает, почему?
    #39384370
040985
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rema174040985,
это что за бред
table[i].length

Бред не бред, но работает

Вот полный код:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
public class Page69N1 {
	public static void main(String[] args) {

		// создаем массим с 0
		int table[][] = new int[4][]; 
		for (int i = 0; i < table.length; i++) {
			table[i] = new int[(int) (Math.random() * 10 + 1)];
		}
		
		// присваиваем массиву не нули
		for (int i = 0; i < table.length; i++) {	
			for (int j = 0; j < table[i].length; j++) {
				table[i][j] = (int) (Math.random() * 10 + 1);
			}
			
		}

		// выводим не отсортированный массив
		for (int i = 0; i < table.length; i++) { 
			for (int j = 0; j < table[i].length; j++) {
				System.out.print(table[i][j] + "\t");
			}
			System.out.println();
			
		}

		// сортировка массива по количеству столбцов
		for (int i = 0; i < table.length; i++) { 
			for (int j = 0; j < table.length; j++){  // почему при значении int j = 1 сортировка не работает, а при значении 0 работает?
				if(table[i].length < table[j].length){
					int[] a = table[i];
					table[i] = table[j];
					table[j] = a;
				}
			}
		}
		
		System.out.println(); // пустая строка для разделения
		System.out.println("Отсортированный массив по количеству столбцов");
		// выводим отсортированный массив
		for (int i = 0; i < table.length; i++) { 
			for (int j = 0; j < table[i].length; j++) {
				System.out.print(table[i][j] + "\t");
			}
			System.out.println();
			
		}
		
		
	}

}
...
Рейтинг: 0 / 0
Сортировка массива при значении int j = 1 не работает, а при значении 0 работает, почему?
    #39384405
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
040985Сортировка массива при значении int j = 1 не работает, а при значении 0 работает, почему?
Потому что первый элемент массива имеет индекс 0.

040985Если я правильно понимаю код

Ну, если должна, а не работает, то, вероятно и понимаете неправильно?

040985просто при значении 1 кол-во повторений второго цикла должно быть меньше.
А при значении 2?

Читать до просветления
...
Рейтинг: 0 / 0
Сортировка массива при значении int j = 1 не работает, а при значении 0 работает, почему?
    #39384408
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
040985,

Я надеюсь вопрос у вас чисто учебный и как тоже самое сделать нормально вас не интересует?
...
Рейтинг: 0 / 0
Сортировка массива при значении int j = 1 не работает, а при значении 0 работает, почему?
    #39384420
rema174
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
040985,

когда j=0 ты начинаешь с первого элемента сравнивать с остальными, а в случае с j=1 не с первого , поэтому все работает не так
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Сортировка массива при значении int j = 1 не работает, а при значении 0 работает, почему?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]