728x90
반응형
SMALL
문제1
- 길이가 10인 배열을 선언하고 1부터 10까지의 값을 반복문을 이용하여
순서대로 배열 인덱스에 넣은 후 그 값을 출력하세요
예시)
1 2 3 4 5 6 7 8 9 10
정답)
int[] arr = new int[10];
for (int i = 0; i < arr.length; i++) {
arr[i] = i + 1;
System.out.print(arr[i]+" "));
}
문제2
- 길이가 10인 배열을 선언하고 1부터 10까지의 값을 반복문을 이용하여
역순으로 배열 인덱스에 넣은 후 그 값을 출력하세요.
예시)
ex.
10 9 8 7 6 5 4 3 2 1
정답)
int[] arr = new int[10];
int num = arr.length;
for (int i = 0; i < arr.length; i++) {
arr[i] = num--;
System.out.print(arr[i]+" "));
}
문제3
- 사용자에게 입력 받은 양의 정수만큼 배열 크기를 할당하고
1부터 입력 받은 값까지 배열에 초기화한 후 출력하세요.
예시)
ex.
양의 정수 : 5
1 2 3 4 5
정답)
Scanner sc = new Scanner(System.in);
System.out.print("양의 정수 : ");
int num = sc.nextInt();
int [] arr = new int[num];
for(int i=0; i<arr.length; i++) {
arr[i] = i+1;
System.out.print(arr[i]+" ");
}
문제4
- 10개의 값을 저장할 수 있는 정수형 배열을 선언 및 할당하고,
1~10 사이의 난수를 발생시켜 배열에 초기화한 후 출력하세요.
예시)
ex.
9 7 6 2 5 10 7 2 9 6
정답)
int [] arr = new int[10];
for(int i=0; i<arr.length; i++) {
arr[i]=(int)(Math.random()*10+1);
System.out.print(arr[i]+" ");
문제5
- 10개의 값을 저장할 수 있는 정수형 배열을 선언 및 할당하고
1~10 사이의 난수를 발생시켜 중복된 값이 없게 배열에 초기화한 후 출력하세요.
예시)
ex.
4 1 3 6 9 5 8 10 7 2
정답-1)
public void practice11() {
int[] arr = new int[10];
for (int i = 0; i < arr.length; i++) {
arr[i] = (int)(Math.random() * 10 + 1);
for (int j = 0; j < i; j++) {
if (arr[j] == arr[i]) {
i--;
break;
}
}
}
for (int i = 0; i < arr.length; i++)
System.out.print(arr[i] + " ");
}
정답-2)
int[] arr = new int[10]; // 10칸의 배열
int[] checkedArr = new int[11]; // 11칸의 배열 (인덱스는 0부터시작인데 10까지 카운팅해야하니
// 11이 들어가야함)
for (int i = 0; i < arr.length; i++) // i < 0 = 참이니
{
int random = (int) (Math.random() * 10 + 1); // random에 랜덤값을 넣음 (10)
if (checkedArr[random] == 1) // checkedArr[10]에 1이들어가있는지 확인 (디폴트는 0)
{
i--; // false이므로 if문 생략
continue;
}
arr[i] = random; // arr[10]=10
checkedArr[random] = 1; // arr[10]=1
}
System.out.println(Arrays.toString(arr));
}
문제6
- 10개의 값을 저장할 수 있는 정수형 배열을 선언 및 할당하고
1~10 사이의 난수를 발생시켜 배열에 초기화 후 배열 전체 값과 그 값 중에서 최대값과 최소값을 출력하세요
예시)
ex.
5 3 2 7 4 8 6 10 9 10
최대값 : 10
최소값 : 2
정답)
int[] arr = new int[10];
for (int i = 0; i < arr.length; i++) {
arr[i] = (int) (Math.random() * 10 + 1);
System.out.print(arr[i]+" ");
}
int min = arr[0];
int max = arr[0];
for (int i = 0; i < arr.length; i++) {
if (max < arr[i]) {
max = arr[i];
} else if (min > arr[i]) {
min = arr[i];
}
}
System.out.print("\n최대값 : " + max);
System.out.print("\n최소값 : " + min);
}
728x90
반응형
LIST
'JAVA' 카테고리의 다른 글
JAVA break; break문 개념 및 활용예시 (0) | 2023.04.11 |
---|---|
[자바/요약정리] 변수와 배열(Array) (0) | 2023.04.11 |
[자바] switch문과 if문 차이점, switch문 표현법 및 활용 (1) | 2023.04.04 |
[자바] 조건문 문자열.equals(문자열)(문자열간의 동등비교,기본자료형,참조자료형),조건문 중복 사용(2) (0) | 2023.03.31 |
[자바] 단독if문,if~else문,if ~ else if문,String result(1) (0) | 2023.03.30 |