본문 바로가기

난수생성2

[JAVA] 난수생성 Math.random() vs Random 이전에 난수에 대한 개념과 Seed에 대한 내용을 알아보았다. 이번에는 실제로 JAVA에서 사용되는 대표적인 난수 생성 방법인 Random클래스와 Math 클래스의 random()메소드에 대해 알아보자. 두 가지의 차이중 종자값의 개념이 포함되므로 seed 종자값에 개념은 설명은 미리 이해하는 것이 좋다. 2020/10/22 - [🕵🏻‍♀️개발지식/이론] - 컴퓨터에서 생성하는 난수는 진짜 난수가 아니다? 컴퓨터에서 생성하는 난수는 진짜 난수가 아니다? 코드를 짜다보면 '난수'를 사용해야하는 경우가 많다. 습관적으로 Random클래스나 Math클래스의 random() 매소드를 쓰곤 했는데 정확한 차이를 모르고 썼는데, 알고리즘 공부를 하던 중 난수가 진짜 todayscoding.tistory.com 자바.. 2020. 10. 22.
컴퓨터에서 생성하는 난수는 진짜 난수가 아니다? 코드를 짜다보면 '난수'를 사용해야하는 경우가 많다. 습관적으로 Random클래스나 Math클래스의 random() 매소드를 쓰곤 했는데 정확한 차이를 모르고 썼는데, 알고리즘 공부를 하던 중 난수가 진짜 난수가 아니라는 글을 보고 이참에 컴퓨터가 난수를 생성하는 과정을 정확히 알고싶어졌다. 난수란? 난수(亂數)란 정의된 범위 내에서 무작위로 추출된 수를 일컫는다. 난수는 누구라도 그 다음에 나올 값을 확신할 수 없어야 한다. 하지만 컴퓨터 과학 분야에서 말하는 난수는 보통 결정론적인 방법으로 생성된 난수이다. 특정 입력이나 조건에 따라 무작위로 선택된 것처럼 보이는 난수 또는 난수열이 생성되며 그 생성 조건이나 입력이 같다면 그 결과값은 항상 같다. 진정한 의미에서의 난수는 아니지만 그 결과값이 충분히.. 2020. 10. 22.
반응형