[英]Random numbers who sum add up to predefined number in java
我的輸出包含 3 個文本字段,當給定 N 值時(doClick() 函數自動點擊 3 個文本字段),然后它在三個文本字段中隨機生成 3 個數字,我的代碼僅生成隨機數,但我希望這些隨機生成的數字為正好加起來給定的 N。
示例:當 N=20 時,可能的答案可以是:
1.10,10,0 即(textfield1 顯示 10,textfield2 顯示 10,textfiled3 顯示 0,其總和為給定的 N)
2.15,3,2
3.10,5,5
隨機數可以是任何正整數,但加起來應該是給定的 N。
請任何幫助。
您可以使用Math.random()而不是 Random 類。 Math.random() 返回一個介於 0 和 1 之間的雙精度值。因此,您唯一要做的就是將 Math.random() 的結果與 N 相乘。下一個數字將是 N 減去 N 和 N 相減的結果之前的結果。
final int N = 20;
final int result0 = (int) (Math.random() * N);
final int result1 = (int) (Math.random() * (N - result0));
final int result2 = N - result0 - result1;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.