Test089
※ 실습 문제
사용자로부터 임의의 정수를 입력받아 그 정수의 갯수만큼 난수(1~100)를 발생시켜 배열에 담고 배열에 담겨 있는 데이터들 중 가장 큰 값과
가장 작은 값을 선택하여 출력하는 프로그램을 구현한다.
실행 예)
발생시킬 난수의 갯수 : 3
52 13 67 → 무작위로 발생한 정수들... → 배열에 담아내기(배열 구성)
가장 큰 값 : 67, 가장 작은 값 : 13
계속하려면 아무 키나 누르세요...
Test089.java
import java.util.Scanner;
import java.util.Random;
public class Test089
{
public static void main(String[] args)
{
// Scanner 클래스 기반 인스턴스 생성
Scanner sc = new Scanner(System.in);
// 안내메세지 출력
System.out.print("발생시킬 난수의 갯수 입력 : ");
int size = sc.nextInt();
// size 변수에 담아낸 수 만큼의 배열방 만들기
// (배열 선언 및 메모리 할당)
int[] arr = new int[size];
// 무작위 숫자(난수)를 발생시키기 위해서는
// 난수 발생 전용 객체가 필요하다.
// → 『java.util.Random』
Random rd = new Random();
// 테스트
//System.out.println("발생한 난수 : " + rd.nextInt(100)); // 0~99
// 『Random 클래스의 nextInt()』 메소드
// 0 ~ 매개변수로 넘겨받은 정수 - 1 까지의 수 중에서 무작위 정수(난수) 1개를 발생시킨다.
for (int i=0; i<size; i++)
{
arr[i] = rd.nextInt(100)+1; // 1~100 사이의 난수 중 1개 발생~!!!
System.out.printf("%3d", arr[i]);
}
System.out.println();
System.out.println();
//가장 큰 값, 가장 작은 값 확인
int max, min; //-- 최대값, 최소값
max=min=arr[0]; //max=min=72 초기화를 배열 중 하나로 선언하는데 편의상 첫번째로!
for (int i=1; i<arr.length; i++)
{
if (max<arr[i])
max=arr[i];
if (min>arr[i])
min=arr[i];
}
System.out.printf("가장 큰 값 : %d, 가장 작은 값 : %d\n", max, min);
}
}
cmd
발생시킬 난수의 갯수 입력 : 4
95 56 56 52
가장 큰 값 : 95, 가장 작은 값 : 52
계속하려면 아무 키나 누르십시오 . . .
'Study Note > Java' 카테고리의 다른 글
JAVA_ Test091_ 클래스 설계 / 배열 활용 / 년, 월, 일을 입력받아 요일을 출력하는 프로그램 (0) | 2018.04.30 |
---|---|
JAVA_ Test090_ 클래스와 인스턴스 / 정보은닉(Information Hiding)과 접근제어지시자 / this (0) | 2018.04.30 |
JAVA_ Test088_ 배열의 기본적 활용 / 1 2 3 4 5 \n 5 1 2 3 4 ... (0) | 2018.04.30 |
JAVA_ Test087_ 배열의 개요 / 2차원 배열 (배열의 배열, 다차원 배열) arr[][] (0) | 2018.04.30 |
JAVA_ Test086_ 배열의 개요 / 2차원 배열 (배열의 배열, 다차원 배열) arr[][] (0) | 2018.04.30 |
댓글