模擬N個骰子擲骰程式


假設我們有 'N' 個骰子,並且我們同時擲出所有骰子,那麼我們需要顯示所有骰子上出現的數值。我們需要使用 Java 程式模擬同樣的情況。為了解決這個問題,我們將使用一個名為 'Random' 的類,它位於 'java.util' 包中。

模擬N個骰子擲骰的Java程式

Random 類

我們建立此類的物件以在給定範圍內生成偽隨機數。我們將自定義此物件並應用我們自己的邏輯來從指定的骰子中選擇任何隨機值。為了從骰子中檢索值,我們需要一個名為 'nextInt()' 的內建方法,該方法從指定的序列中返回下一個整數值。

以下是建立 Random 類物件語法:

語法

Random nameOfObject = new Random();

示例 1

在以下示例中,我們將使用 'Random' 類模擬骰子擲骰 1 次。

方法

  • 建立一個名為 'rndm' 的 'Random' 類物件。

  • 宣告並初始化一個名為 'noOfdice' 的變數,該變量表示骰子的數量。

  • 使用 for 迴圈遍歷骰子的總數,並使用 'rndm' 物件和 'nextInt()' 方法列印骰子上的值。

  • 我們將使用 6 作為 'nextInt()' 的引數,並加上 1,因為骰子的值是 1 到 6。如果不加 1,它可能會列印 0。

程式碼

import java.util.*;
public class Dice {
   public static void main(String[] args) {
      Random rndm = new Random();
      int noOfdice = 5;
      System.out.print("Occurrence of values on dice: ");
      for (int i = 0; i < noOfdice; i++) {
         System.out.print(rndm.nextInt(6) + 1);
         System.out.print(" ");
      }
   }
}

輸出

Occurrence of values on dice: 6 2 1 5 1

示例 2

在以下示例中,我們將使用 'Random' 類模擬骰子擲骰 2 次。

方法

  • 我們將更改上述示例程式,並使用 while 迴圈將 'occurrence' 的值設定為 2 以列印值 2 次。

程式碼

import java.util.*;
public class Dice {
   public static void main(String[] args) {
      Random rndm = new Random();
      int noOfdice = 5;
      int occurrence = 2;
      while(occurrence != 0) {
         System.out.print("Occurrence of values on dice: ");
         for (int i = 0; i < noOfdice; i++) {
            System.out.print(rndm.nextInt(6) + 1);
            System.out.print(" ");
         }
         System.out.println();
         occurrence--;
      }
   }
}

輸出

Occurrence of values on dice: 4 6 2 3 2
Occurrence of values on dice: 2 6 3 2 4

示例 3

在以下示例中,我們將使用 'Random' 類模擬骰子擲骰 n 次。

方法

  • 同樣,我們將更改上述示例程式碼。我們將在 do-while 迴圈中編寫我們的邏輯。

  • 首先,從使用者那裡獲取骰子的數量。在 do 塊中,遍歷骰子的總數並列印骰子的值。

  • 然後,我們詢問使用者是否要繼續。如果使用者輸入 1,則整個過程重複;如果使用者輸入 0,則退出程式。

程式碼

import java.util.*;
public class Dice2 {
   public static void main(String[] args) {
      Random rndm = new Random();
      System.out.println("Enter how many dice you have: ");
      Scanner sc = new Scanner(System.in);
      int noOfdice = sc.nextInt();
      do {
         System.out.print("Occurrence of values on dice: ");
         for (int i = 0; i < noOfdice; i++) {
            System.out.print(rndm.nextInt(6) + 1);
            System.out.print(" ");
         }
         System.out.println();
         System.out.println(" Press 1 to continue! 0 to exit! ");
      } while(sc.nextInt() == 1);
   }
}

輸出

Enter how many dice you have:
3
Occurrence of values on dice: 5 2 3
Press 1 to continue! 0 to exit!
1
Occurrence of values on dice: 4 3 1
Press 1 to continue! 0 to exit!
0

結論

在本文中,我們討論了三個模擬骰子擲骰 'N' 次的示例程式。我們定義了一個自定義邏輯,並將其與 'Random' 類的物件一起應用,以從骰子中選擇和檢索專案。Random 類位於 'java.util' 包中。

更新於: 2023年7月20日

188 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.