Sponsored By
















난수(Random) 발생시키는 방법임.

 

 

 

 

 

 

간단한 개념을 설명하자면 랜덤은 0 ~ 1 사이의 값들이 랜덤으로 나오는 것이다.

 

따라서 for문이나 while문으로 반복시키면 그만큼의 랜덤수들이 나오게 된다.

 

0~1사이의 수가 나오므로 int 타입으로 Casting 시켜서 정수값이 나오게 하는것이 편하다.

 

 

 

 

 

 

00. 정말 0~1사이의 수가 나오는지 확인해보자. 







01. int타입으로 Casting 시키고 주사위로 가정해서 1~6까지 수 중 랜덤하게 나오게 해보자.







02. 한번 더 해보자. 







03. 내가 적은 수와 랜덤수가 일치할 때 까지 질문하도록 만들어보자.







04. 확률적으로 보통 6번이면 맞추게 된다.







05. 그럼 응용해서 다음과같이 미니로또 번호도 나오게 만들 수 있다.

    (중복값이 나오는데 이것은 뒤에나오는 배열 에서 다시 언급함.)

 

 

 

 

 

 

 

 

 

 

※ 미니로또 프로그램 코드 주소값: http://blog.naver.com/pandekten5/220774908599 )

 

 

 

 

 

 

 

※. 코드

 

 

import java.util.Scanner;

 

public class Test {

public static void main(String[] args) {

/* 난수발생 */

 

int i, j, cnt, random;

 

Scanner scan = new Scanner(System.in);

 

int diceFace;

int userGuess;

cnt = 0;

 

while(true)

{

System.out.println("주사위값 예측해라. ");

userGuess = scan.nextInt();

diceFace = (int)(Math.random() * 6) +1;

 

cnt ++;  

 

if(userGuess == diceFace)

{

break;

}else

{

System.out.println("diceFace값= " + diceFace);

}

}// while

 

System.out.println("당신은 " + cnt + " 회 만에 맞췄습니다.");

 

scan.close();

 

 

 

 

for(i =1; i<=6; i++)

{

System.out.print((int)(Math.random() * 45) +1 + "\t");

}

 

 

 

 

}// main

}// class

 

 

 

 



Sponsored By















+ Recent posts