Math.random()隨機生成(0,1)之間的float數(shù),Random7隨機生成[1,7]之間的整數(shù),利用Random7構(gòu)造Random10的步驟:
1、生成數(shù)a:a是兩次Random7的結(jié)果,即a=(Random7()-1)*7+Random7()-1;
2、判斷a是否小于40,如果小于40,則返回a/4+1,即為最后的結(jié)果;否則,繼續(xù)執(zhí)行Random10;
public class B{ public static int Random7(){ return (int)(Math.random()*7+1); } public static int Random10(){ int a=49; while(a>=40){ a=(Random7()-1)*7+Random7()-1; } return a/4+1; } public static void main(String[] args) { for(int i=0;i<50;i++){ System.out.PRintln(Random10()); } }}
新聞熱點
疑難解答