코드 그라데이션
정방향 / 역방향 배열 배치 방법 두가지 본문
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
'Java > Mega' 카테고리의 다른 글
Day11-1. 다차원 배열과 가변 배열 (0) | 2023.03.29 |
---|---|
Day11. 메소드 함수 호출 궁금증 해결 (0) | 2023.03.28 |
배열 출력(숫자야구) i+1을 하는 이유 chat GPT (0) | 2023.03.27 |
숫자야구 배열에서 두 번째 안쪽 for문에서 조건식에 대한 질문 chat GPT (0) | 2023.03.27 |
변수 값을 증가 시키기 chat GPT (0) | 2023.03.27 |
Comments