반응형
250x250
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

Yeonee's Story

JAVA 실습문제. 배열 본문

JAVA

JAVA 실습문제. 배열

yeonee 여니 2023. 4. 9. 22:19
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