inflearn logo
강의

Course

Instructor

JAVA Playground where you learn while creating

구구단 추가미션 요구사항 1 문의합니다

348

tonowoods6738

1 asked

0

최종 요구사항1에서 부터 막혔습니다. ㅠ
2단부터 9단까지 만들어보고(주석처리 된부분) 아래 메서드를 작성했는데 만약 제가 5를 입력하면
2*1 단부터 4*4단까지만 출력됩니다.
 
if문의 조건식 쓰는 쪽에 i와 j를 <= x 로 표시하면 자꾸 에러가 뜨는데 이유가 뭔지 모르겠습니다.
제가 어떤부분에서 잘못생각하고 있는건가요??
 
 
<pre class="language-java"><code>
class Gugudan {
	public static void main(String[] args) {

//		int i, j;
//		int arr[][] = new int[10][10];
//		for (i = 2; i <= 9; i++){
//			for (j = 1; j <= 9; j++){
//				arr[i][j] = i * j;
//				System.out.print(arr[i][j]);
//			}
//			System.out.println();
//		}

		Scanner scanner = new Scanner(System.in);
		System.out.println("숫자를 입력하세요.");
		int input = scanner.nextInt();
		
		int[][] result = cal(input);
	}

	//method로 만들기
	public static int[][] cal (int x){
		int[][] result = new int[x][x];

		for (int i = 2; i < x; i++) {
			for (int j = 1; j < x; j++) {
				result[i][j] = i * j;
				System.out.println(result[i][j]);
			}
			System.out.println();
		}//for문종료
		return result;
	}
	
}
</code></pre>

java

Answer 1

1

inuit57

안녕하세요 

아마도 출력되는 오류는 ArrayIndexOutOfBoundsException 로 생각됩니다.

배열에 저장할 수 있는 범위를 초과하였을 때 발생하는 오류죠. 

 

위의 경우에는 배열을 생성해주실 때 

int arr[][] = new int[10][10];

위와 같이 int[10][10]으로 생성해주셨기 때문에 문제가 없습니다. 

이 배열의 경우 [0][0]~ [9][9] 까지 총 81개의 int 변수를 저장할 수 있기에 구구단을 모두 담기에 문제가 없습니다. 

 

하지만 아래에 작성해주신 코드의 경우 

int[][] result = new int[x][x];

위와 동일하게 저장하기 위해서는 한칸이 더 필요합니다. 

int[][] result = new int[x+1][x+1];

// 이후 i <= x , j<= x 로 변경

 

감사합니다. 

Entity 동등성 비교

0

3

1

패키지 구분에 대해 궁금한게 있습니다

0

12

1

안녕하세요. 바뀐 채점사이트 관련해서 문의드립니다.

0

19

1

갑자기 채점 사이트가 바뀌었어요

0

19

1

문제 리스트 페이지

0

22

1

part8 Notion 링크

0

23

1

채점 사이트 관련 질문드립니다

0

20

1

인텔리제이 MCP 서버 설정 관련

0

27

1

조회속도 개선에서 더 개선하는 방법이 궁금합니다.

0

28

2

필기자료 사라졌나요?(실기 일주일만에 안돼서 재도전-_-)

0

37

2

질문있습니다

0

26

1

콘솔 창에 한글 출력이 안됩니다

0

395

0

share project가 안 보이는 경우에는 어떡하죠

0

402

1

Calendar calendar = new Calendar(); 오류

0

260

0

데이터를 불러오는걸 계속 실패합니다

0

239

0

1-4강 puch branch master를 실행하고 아이디와 비밀번호 적는 곳이 계속 로그인이 안됩니다.

0

308

1

Calendar cal = new Calendar(); 에러 질문

0

428

1

21.8.13일부로 비밀번호 인증이 끝났대요

5

329

1

첫번째 요일 입력받고 줄바꿈하는부분

3

252

0

설정하는데 jdk가 나오지 않습니다 ㅠㅠ 어디서 부터 잘못된건지 모르겠습니다..

0

255

0

배열로 구구단 다시구현

0

635

2

hashmap 사용이유

0

317

1

질문합니다

1

310

1

에러가 생깁니다 어떻게 해야 할까요?

0

333

1