구구단 추가미션 요구사항 1 문의합니다
353
投稿した質問数 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 로 변경
감사합니다.
47번 리턴 관련 질문
0
11
1
실무 내용 문의드려요
0
21
2
IO활용-회원관리예제1 샘플코드 문의
0
11
1
join에대해 질문드립니다.
0
14
1
pg사가 있다고 가정하면
0
23
1
중급 1편 학습 방향에 대해 조언 부탁드립니다
0
30
1
To-Do App
0
27
1
강의노트 접속 불가
0
24
2
Kafka Cluster 구성도 질문
0
22
1
26년 1회차 기출 강의
0
49
2
기출문제
0
55
1
콘솔 창에 한글 출력이 안됩니다
0
401
0
share project가 안 보이는 경우에는 어떡하죠
0
409
1
Calendar calendar = new Calendar(); 오류
0
265
0
데이터를 불러오는걸 계속 실패합니다
0
246
0
1-4강 puch branch master를 실행하고 아이디와 비밀번호 적는 곳이 계속 로그인이 안됩니다.
0
314
1
Calendar cal = new Calendar(); 에러 질문
0
432
1
21.8.13일부로 비밀번호 인증이 끝났대요
5
332
1
첫번째 요일 입력받고 줄바꿈하는부분
3
258
0
설정하는데 jdk가 나오지 않습니다 ㅠㅠ 어디서 부터 잘못된건지 모르겠습니다..
0
258
0
배열로 구구단 다시구현
0
643
2
hashmap 사용이유
0
323
1
질문합니다
1
317
1
에러가 생깁니다 어떻게 해야 할까요?
0
337
1

