2013-01-05 109 views
-2

所以基本上我有這個電子郵件模擬thingy,所以電子郵件需要從隊列中出列以便能夠將它們發送到接收器。 「關於隊列+隨機數的混淆

這個問題說: 」每分鐘,你最多可以取出40條消息併發送它們,假設隊列中25%的消息不能在任何處理週期中發送,同樣需要使用隨機數來確定是否可以發送給定的消息,如果不能發送,則將其放回隊列末尾或將其排入隊列。

如何獲得40條消息的25%並確定是否可以發送消息(隨機)。我不明白這個邏輯。有沒有高手在這裏幫助我完成這個在Java?

感謝堆。 *請使用編程的基本語言。我對這種編程語言非常不滿。謝謝

+1

這聽起來像一個任務。你到目前爲止嘗試過哪些代碼? – home

+0

我已經完成了排隊部分。現在我必須做出列隊的部分。然而,我不知道如何用40%的消息中的25%隨機地做這件事。關於如何做到這一點的任何解釋都會很棒。 –

回答

3
public void sendMessage(Message m) throws MessageCantBeSentException { 
    if (random.nextDouble() < 0.25) { 
     throw new MessageCantBeSentException("Bad luck!"); 
    } 
} 
+0

嗯,實際上它必須是40(固定大小的電子郵件)。並且總郵件中有25%(10封電子郵件)無法發送。如何確定哪些電子郵件可以發送,哪些不能? –

+1

該任務告訴您使用一個隨機數,以便[平均],25%的消息無法發送。這就是以上所做的。當然,它沒有說[平均],但它是一個模擬,所以目標只是失敗和成功。您不需要* 10封郵件即可失敗。問你的老師,如果你不確定,但我想這就是他的意思。 –

+0

哦,你是對的。我現在得到的想法感謝堆 –