구구단 추가미션 요구사항 1 문의합니다
352
작성한 질문수 1
<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>
답변 1
1
안녕하세요
아마도 출력되는 오류는 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 로 변경
감사합니다.
pg사가 있다고 가정하면
0
5
0
중급 1편 학습 방향에 대해 조언 부탁드립니다
0
20
1
To-Do App
0
16
0
강의노트 접속 불가
0
11
1
Kafka Cluster 구성도 질문
0
14
1
26년 1회차 기출 강의
0
36
2
기출문제
0
50
1
정보처리기사 실기 zip
0
42
2
답을언제쯤받아볼수있나요
0
47
2
데이터베이스 노션
0
36
2
형 책 어떻게 받아?
1
53
1
콘솔 창에 한글 출력이 안됩니다
0
400
0
share project가 안 보이는 경우에는 어떡하죠
0
409
1
Calendar calendar = new Calendar(); 오류
0
264
0
데이터를 불러오는걸 계속 실패합니다
0
246
0
1-4강 puch branch master를 실행하고 아이디와 비밀번호 적는 곳이 계속 로그인이 안됩니다.
0
313
1
Calendar cal = new Calendar(); 에러 질문
0
431
1
21.8.13일부로 비밀번호 인증이 끝났대요
5
331
1
첫번째 요일 입력받고 줄바꿈하는부분
3
257
0
설정하는데 jdk가 나오지 않습니다 ㅠㅠ 어디서 부터 잘못된건지 모르겠습니다..
0
257
0
배열로 구구단 다시구현
0
642
2
hashmap 사용이유
0
321
1
질문합니다
1
315
1
에러가 생깁니다 어떻게 해야 할까요?
0
337
1





