Java拋硬幣程式
拋硬幣是指將一枚硬幣拋向空中,然後讓它落回地面。拋硬幣就像一個遊戲,你可以選擇正面或反面,最終朝上的那一面就是結果。當我們想要隨機做出決定或解決事情時,會使用這種方法。
問題陳述
建立一個Java程式來模擬拋硬幣10次,並記錄“正面”和“反面”的結果出現的次數。
輸出
Chances = 10 Heads: 3 Tails: 7
演算法
步驟1:建立一個“Toss”類的例項。將“正面”初始化為0,“反面”初始化為0,並將“機會”設定為10。
步驟2:在“Toss”類中定義一個方法“chanceFunc”。在“chanceFunc”內部建立一個Random類的例項。
步驟3:使用r.nextInt(2)生成一個0到1之間的隨機整數。如果隨機整數為1,則返回“反面”,否則返回“正面”。
步驟4:在“Demo”類的main方法中,一個迴圈將從i=1執行到i<=機會。
步驟5:呼叫chanceFunc方法,如果結果為“反面”,則將“反面”計數器加1。否則:將“正面”計數器加1。
步驟6:列印“機會”總數、“正面”數、“反面”數。
程式碼解釋
假設我們有一枚硬幣和10次機會。在這裡,我們將首先初始化正面、反面和機會的值 -
int heads = 0; int tails = 0; int chances = 10;
現在,我們將使用Random物件獲取正面和反面的值 -
for (int i = 1; i<= chances; i++) { if (t.chanceFunc().equals("tails")) { tails++; } else { heads++; } }
上面,函式chanceFunc()包含Random類以及nextInt()方法來獲取下一個隨機值。檢查條件並返回正面和反面的值 -
public String chanceFunc() { Random r = new Random(); int chance = r.nextInt(2); if (chance == 1) { return"tails"; } else { return"heads"; } }
Java拋硬幣程式
import java.util.Random; class Toss { public String chanceFunc() { Random r = new Random(); int chance = r.nextInt(2); if (chance == 1) { return "tails"; } else { return"heads"; } } } public class Demo { public static void main(String[] args) { Toss t = new Toss(); int heads = 0; int tails = 0; int chances = 10; for (int i = 1; i<= chances; i++) { if (t.chanceFunc().equals("tails")) { tails++; } else { heads++; } } System.out.println("Chances = " + chances); System.out.println("Heads: " + heads); System.out.println("Tails: " + tails); } }
輸出
Chances = 10 Heads: 3 Tails: 7
讓我們再次執行程式 -
Chances = 10 Heads: 4 Tails: 6
廣告