비디오: Welcome to Natural Simulations | Computer programming | Khan Academy 2024
자바 프로그래밍의 일환으로 임의성을 만들려고합니다. 실제 무작위성을 달성하는 것은 놀랍게도 어렵습니다. Mathematician Persi Diaconis는 동전을 여러 번 뒤집어서 머리를 위로하여 항상 꼬리보다 머리를 던질 가능성이 높다고 말합니다. 꼬리가 위로부터 시작하여 항상 여러 번 던지면 머리보다 꼬리를 더 자주 던질 것입니다. 즉, 동전 던지기는 실제로 공정하지 않습니다. *
* Diaconis, Persi. "임의성 검색. "미국 과학 진흥회 연차 총회. 시애틀. 2004 년 2 월 14 일.
컴퓨터는 동전과 인간 엄지보다 훨씬 뛰어나다. 컴퓨터가 무작위 순서의 생성을 모방하지만, 결국 컴퓨터는 말한 것을 수행하고이 모든 것을 순전히 결정론적인 방식으로 수행합니다. 따라서 컴퓨터가
import java를 실행할 때. util. 무작위;
int randomNumber = new 임의 (). nextInt (10) + 1;
컴퓨터는 무작위로 생성 된 숫자 (1에서 10 사이의 정수)를 제공하는 것처럼 보입니다. 그러나 모두 가짜입니다. 컴퓨터는 지침을 따릅니다. 실제로 무작위는 아니지만 컴퓨터를 뒤로 구부리지 않고도 누구나 할 수있는 최선의 방법입니다.
다시 한번,이 코드를 맹신한 것으로 받아 들여야합니다. 새로운
Random ()에 대해 걱정하지 마십시오. nextInt
는 Java에 대한 더 많은 경험이있을 때까지 의미합니다. 이 코드를 자신의 프로그램에 복사하고 재미있게 즐기십시오. 그리고 1에서 10까지의 숫자가 당신의 비행 계획에 없다면, 두려워하지 마십시오. 가상의 주사위를 굴리려면
int rollEmBaby = 새로운 무작위 (). nextInt (6 ) + 1;
이 명령문을 실행하면
rollEmBaby
변수는
1
에서
6
사이의 값을 가져옵니다.