לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 22-02-2005, 13:27
צלמית המשתמש של liwh0re
  liwh0re liwh0re אינו מחובר  
 
חבר מתאריך: 02.02.03
הודעות: 317
שלח הודעה דרך ICQ אל liwh0re
פיגוע בעיה מרגיזה: 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.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #4  
ישן 23-02-2005, 23:03
צלמית המשתמש של fat fish
  fat fish fat fish אינו מחובר  
 
חבר מתאריך: 20.06.03
הודעות: 5,616
זה אמור לעזור לך...(:
בתגובה להודעה מספר 1 שנכתבה על ידי liwh0re שמתחילה ב "בעיה מרגיזה: C# בVS2003..."

קוד PHP:
 // Create a random object with a timer-generated seed.
    
static void AutoSeedRandoms( )
    {
        
// Wait to allow the timer to advance.
        
Thread.Sleep);
 
        
Console.WriteLine
            
"\nRandom numbers from a Random object " +
            
"with an auto-generated seed:" );
        
Random randObj= new Random( );
 
           
// Generate the first six random integers.
        
for( int j 06j++ )
            
Console.Write" {0,10} "randObj.Next( ) );
        
Console.WriteLine( );
 
        
// Generate the first six random doubles.
        
for( int j 06j++ )
            
Console.Write" {0:F8} "randObj.NextDouble( ) );
        
Console.WriteLine( );
 
    } 

והפלט (לאחר 3 הרצות שונות):
קוד PHP:
 Random numbers from a Random object with an auto-generated seed:
  
380213349   127379247  1969091178  1983029819  1963098450  1648433124
 0.08824121  0.41249688  0.36445811  0.05637512  0.62702451  0.49595560

Random numbers from a Random object with an auto
-generated seed:
  
861793304  2133528783  1947358439   124230908   921262645  1087892791
 0.56880819  0.42934091  0.60162512  0.74388610  0.99432979  0.30310005

Random numbers from a Random object with an auto
-generated seed:
 
1343373259  1992194672  1925625700   412915644  2026910487   527352458
 0.04937517  0.44618494  0.83879212  0.43139707  0.36163507  0.11024451 


מידע נוסף:
http://msdn.microsoft.com/library/d...mclasstopic.asp
_____________________________________
[ זיו ]
[ fat fish ]


נערך לאחרונה ע"י fat fish בתאריך 23-02-2005 בשעה 23:07.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 23:13

הדף נוצר ב 0.05 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר