簡體   English   中英

我的偽隨機數生成器有什么問題?

[英]What's wrong with my pseudo random number generator?

我的隨機數生成器遇到了一些問題。 我的程序的工作原理是給玩家一組忍者,每個忍者都有一個隱身分數。 要取得進步,忍者需要通過“隱形檢查”。 他們是如何通過的,RNG 會拉取 0 到忍者隱身分數之間的任何整數。 如果 RNG 拉出 0,則檢查失敗。 問題是,一些忍者的隱身分數為 1。這導致他們總是無法通過檢查。 我單獨對RNG進行隔離和測試后,還是這樣。 我還注意到它似乎無法從隱身分數本身中提取出來。 比如隱身分數為3的忍者從不拉3,只有0、1和2。那么,我該如何修復這個RNG呢?

int stealth_check(struct ninja student[4]){
    int stealth_pass;
    int i;
    for(i = 0; i < 4; i++){
        stealth_pass = rand() % student[i].stealth;
        printf("%d\n\n", stealth_pass);
    }
return 0;
}

在將其用於模數之前,將 student[i].stealth 加 1。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM