Q.8크기의 배열을 선언하고 랜덤수로 초기화 한 후 가장 큰 수와 작은 수를 각각 출력하시오.
8개의 정수형 배열에 1~99 사이의 무작위 수를 저장, 완성된 배열을 순회하여 최소값과 최대값을 찾는 알고리즘이다.
-문제 풀이 및 해석
step1. 무작위 수로 배열 초기화
step1-1. 변수 선언
무작위 수를 저장할 배열(저장 공간 8) : int []ran_num = new int[8]
무작위 수를 생성할 객체 : Random ran = new Random();
step1-2. 각 배열의 값의 무작위 수 초기화
1~99까지의 수로 지정
ran_num[i] = ran.nextInt(99)+1;
※무작위 수 생성
1.Random 라이브러리 임포트2.랜덤 클래스 객체 생성(Random ran = new Random())
3.배열에 랜덤값 삽입(ran.nextInt(99)+1)
3.배열에 랜덤값 삽입(ran.nextInt(99)+1)
-함수 해설
Random 클래스 객체 명.nextInt(int n)(0~n-1 사이의 무작위 수)
step2. 최대, 최소 값 탐색
사전에 최대, 최소 값을 저장할 변수를 선언 및 배열의 첫 번째(index : 0)값을 각 변수에 저장한다.
step2-1. 현재의 최소값보다 현재의 배열값이 작다면, 현재의 배열값이 저장된 변수는 최소값으로 초기화된다.
if(min > ran_num[i])
min = ran_num[i];
step2-2.현재의 최대값보다 현재의 배열값이 크다면, 현재의 배열값이 저장된 변수는 최대값으로 초기화된다.
if(max < ran_num[i])
max = ran_num[i];
배열에 대한 반복이 종료되기 까지 위 과정을 반복하여, 최대, 최소값에 대한 탐색을 진행한다.
step3. 최대, 최소값 출력
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | package test_1; //Random 라이브러리 import import java.util.Random; public class q10 { public static void main(String[] args) { //step1 //step1-1 Random ran = new Random(); System.out.print("배열에 있는 모든 값 : "); int ran_num[] = new int[8]; //step1-2 for(int i =0; i<ran_num.length; i++) { ran_num[i] = ran.nextInt(99)+1; System.out.print(ran_num[i]+" "); } System.out.println(); //step2 int min = ran_num[0]; int max = ran_num[0]; for(int i =0; i<ran_num.length; i++) { //step2-1 if(min > ran_num[i]) min = ran_num[i]; //step2-2 if(max < ran_num[i]) max = ran_num[i]; } //step3 System.out.println("가장 큰 값 : " + max); System.out.println("가장 작은 값 : " + min); } } | cs |

댓글
댓글 쓰기