22-02-2005, 13:27
|
|
|
|
חבר מתאריך: 02.02.03
הודעות: 317
|
|
בעיה מרגיזה: C# בVS2003...
אני מתכנת בC#, בVISUAL STUDIO 2003.
אני עובד על משחק, ובקטע מסויים אני זקוק לשני מספרים רנדומליים בין 1ל13.
הבעיה היא שכאשר אני מריץ את האפליקציה שני המספרים הנבחרים רנדומלית תמיד זהים.
אך אם אני מריץ את האפליקציה במצב DEBUG, כלומר כאשר אני עוקב אחרי קטע הקוד שמפיק מספרים רנדומליים הם אכן יוצאים רנדומליים ושונים.
איזו סיבה יש לדבר לקרות וכיצד אני יכול להתגבר עליה? שמתי לב שגם אם אני עוקב אחרי הקטע קוד אבל בצורה מהירה (כלומר ברגע שהוא מגיע לBREAKPOINT אני לוחץ F5 כדי שהוא יעבור על הקטע במהירות) אני מקבל תמיד שני מספרים זהים. יכול להיות שזה קשור לנושא הזמן? כי אם אני לא טועה הבחירה הרנדומלית תלוייה איכשהו בזמן.
הנה המתודה שבה אני משתמש (פשוטה להפליא):
קוד:
public int NewCard()
{
Random rnd = new Random();
return rnd.Next(1,14);
}
למתודה הזאת אני קורא פעמיים ומכניס את המספרים לARRAYLIST
בתודה מראש!
_____________________________________
...Tonight, if you're awake at all
נערך לאחרונה ע"י liwh0re בתאריך 22-02-2005 בשעה 13:32.
|