Daily coding

Java Basic : day 2 - Example 02 : Random / Math.random() 랜덤 숫자 할당하기 본문

Language/Java_basic

Java Basic : day 2 - Example 02 : Random / Math.random() 랜덤 숫자 할당하기

sunnnkim 2019. 11. 20. 19:10
package day2;

import java.util.Arrays;
import java.util.Scanner;

public class Ex02_Random {
	public static void main(String[] args) {
		

		// Math.random() : Math클래스의 random 메소드
		// int num = (int)(Math.random()*3);
		//  Math.random() * (표현하고싶은 랜덤 숫자의 갯수)
		// Math.random()은 double형이기 때문에 원하는 타입 (int등) 으로 타입캐스팅해서 써야함


		//과제 191119 - 3
		System.out.println("---- 과제 12-1번 ---- ");
		
		Scanner sc = new Scanner(System.in);
		System.out.println("양수 / 음수 판단하기");
		System.out.print("수를 입력 : ");
		int input = sc.nextInt();
		String str = input != 0 ? input >0 ? "양수" : "음수" : "0";
		System.out.println("입력하신 " + input + "은 "+ str+ "입니다.");
			
		
		// 과제 191119 - 4
		// 랜덤 수를 취득하라.
		// 범위: 0 ~ 99 개수: 1개
		// 범위: 11, 12, 13, 14, 15 개수: 1개
		// 범위: 1 ~ 45 개수: 6개
		
		System.out.println("---- 과제 12-2번---- ");
		
		//범위: 0 ~ 99 개수: 1개
		int r1 =(int)(Math.random()*100);
		System.out.println("0 ~ 99 사이의 랜덤 정수 1개 : " + r1);
		
		// 범위: 11, 12, 13, 14, 15 개수: 1개
		int r2 = (int)(Math.random()*5)+11;
		System.out.println("11 ~ 15 사이의 랜덤 정수 1개 : " + r2);
		
		// 범위: 1 ~ 45 개수: 6개
		int r[] = new int[6];
		for(int i =0 ; i < r.length; i++) 
			r[i] = (int)(Math.random()*45)+1;
		System.out.println("r = "+Arrays.toString(r));
		
		// 특정 숫자 중에서 랜덤으로 뽑고 싶은 경우
		// 배열 인덱스를 이용해서 풀기
		 
		//1, 5 ,7 ,8, 10
		int arrNum[] = {1, 5, 7 ,8 ,10};
		int r3 = (int)(Math.random()*5);
		System.out.println("arrNum = " + arrNum[r3]);
		
		
		
		
	}
}