코드 그라데이션

정방향 / 역방향 배열 배치 방법 두가지 본문

Java/Mega

정방향 / 역방향 배열 배치 방법 두가지

완벽한 장면 2023. 3. 28. 11:04
for(int i = 0;i<b.length;i++) {
	    	if(i%2 == 0) { // 정방향
	    		for(int j = 0;j<b[i].length;j++) {
	    			b[i][j] = count++;
	    		}
	    	}
	    	else { // 역방향
	    		for(int j = b[i].length-1;j>=0;j--) {
	    			b[i][j] = count++;
	    		}
	    	}
	    }
		
		for(int i = 0;i<5;i++) {
			for(int j = 0;j<5;j++) {
				System.out.print(b[i][j]+"\t");
			}
			System.out.println();
		}
		
		System.out.println();

이거랑

 

이것의 차이

int[][] c = new int[5][5];
		count =1;
		int sw = 1;
		// 알고 싶지 않아요 이거뭐야 난 알 수 없어
		for(int i =0;i<c.length;i++) {
			for(int j = 0;j<c[i].length;j++) {
				// 1 -1  1 -1 1
				if(sw == 1) {
					c[i][j] = count++;
				}
				else { // sw = -1
					// i = 1
					// 5 - 0 -1 4 / 5 -1 -1 3 / 5 -2 -1 2 / 5 - 3 -1 1  / 5 -4 -1 0
					c[i][c[i].length - j -1] = count++;
				}
			}
			sw = sw *(-1); 
		}
		
		for(int i = 0;i<5;i++) {
			for(int j = 0;j<5;j++) {
				System.out.print(c[i][j]+"\t");
			}
			System.out.println();
		}

 

 

위의 코드 블록은 두 개의 5x5 이차원 배열을 생성하고, 각각의 배열의 값들을 초기화하는 코드입니다.

 

첫 번째 코드 블록에서는 b 배열을 생성하고, 인덱스가 짝수인 행은 왼쪽에서 오른쪽으로 순서대로 값을 할당하고,

인덱스가 홀수인 행은 오른쪽에서 왼쪽으로 역순으로 값을 할당합니다.

 

두 번째 코드 블록에서는 c 배열을 생성하고, 변수 sw를 사용하여 값을 할당합니다.

sw는 1 또는 -1을 갖는 변수로, 1일 때는 왼쪽에서 오른쪽으로 순서대로 값을 할당하고,

-1일 때는 오른쪽에서 왼쪽으로 역순으로 값을 할당합니다.

sw 변수는 매 반복마다 -1을 곱하여 값을 바꿔주면서 순서를 바꿉니다.

 

 

따라서 두 코드 블록은 배열 값을 초기화하는 방법이 다릅니다.

첫 번째 코드 블록은 짝수 인덱스 행과 홀수 인덱스 행의 값을 다르게 할당하고,

두 번째 코드 블록은 sw 변수를 사용하여 왼쪽에서 오른쪽 또는 오른쪽에서 왼쪽으로 값을 할당합니다.

 

sw 변수는 값을 바꿔가면서 할당 방법을 변경하는 데 사용되는 변수입니다.

sw 변수는 매 반복마다 -1을 곱하여 값을 바꿔주면서 할당 방법을 변경합니다.

728x90
Comments