ABA


"מה עושה הראנדומיז בפאסקלrandomize?"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #7467 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 7467
mishmish

   19:31   02.12.03   
אל הפורום  
  מה עושה הראנדומיז בפאסקלrandomize?  
 
   מה הוא עושה בכלל
begin
randomize;
readln(num)
writeln(random(num));
end.
הוא בכלל משנה משהו מהתכנית?


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  בלי randomize כל random שתעשה Ice Cold  02.12.03 19:58 1
     לא נכון אחי... mishmish 02.12.03 20:11 2
         ככה: UC 02.12.03 22:42 3
  תפקידו לאתחל את מחולל המספרים האקראיים dryice 05.12.03 11:12 4

       
Ice Cold  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 3.8.02
28041 הודעות, 19 פידבק
   19:58   02.12.03   
אל הפורום  
  1. בלי randomize כל random שתעשה  
בתגובה להודעה מספר 0
 
יקבל תמיד אותו מספר.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
mishmish

   20:11   02.12.03   
אל הפורום  
  2. לא נכון אחי...  
בתגובה להודעה מספר 1
 
   ניסיתי ויצא לי אותו דבר בלי הראנדומיז?
אתה יכול לפרט איפה שמים את הרנדומיז והכל?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
UC

   22:42   02.12.03   
אל הפורום  
  3. ככה:  
בתגובה להודעה מספר 2
 
   את randomize אתה רושם אחרי ה-begin הראשי של התכנית(או הפונקציה, או הפרוצדורה)
בעיקרון, פעולת הרנדומיז לא יכולה להתבצע בלי כתיבת randomize לפני.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
dryice

   11:12   05.12.03   
אל הפורום  
  4. תפקידו לאתחל את מחולל המספרים האקראיים  
בתגובה להודעה מספר 0
 
   כשאר אנו מגרילים מספרים אקראיים אנו משתמשים במחולל מספרים אקראיים כלשהוא: לרוב איזה שהוא LFN:
Linear Feedback Shift Register אבל זאת בכל זאת פונקציה
דטרמיניסטית, על כל ערך התחלתי באוגר אני אקבל את אותו רצף
של מספרים פסאדו אקראיים. על כן הפונקציה randomize עושה
למעשה משהוא מאוד פשוט ומאתחלת את האוגר לפי מספר השניות שהמחשב
דלוק(או משהוא אחר שקשור בשעון). וכך אנו מקבלים רצף מספרים
אקראיים שונה בכל הפעלה של התוכנית.
במערכות Linux מערכת ההפעלה מספקת מחולל מספרים אקראיים שמתבסס
על המון המון נתוני מערכת. בשביל להקשות על חזייתם, ואפשר
להשתמש בו /dev/random אבל זה לפעמים פתרון טיפה איטי, אני הרבה
פעמים מתפשר באמצע ורק מאתחל מדיי פעם את מחולל המספרים הפסאדו-אקראיים על סמך מספר אקראי באמת.

אם תרצו עוד הסבר על ייצור מספרים אקראיים אשמח לעזור.

DRYICE


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net