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

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



  #2  
ישן 11-01-2007, 23:15
צלמית המשתמש של noam906
  noam906 noam906 אינו מחובר  
 
חבר מתאריך: 21.09.05
הודעות: 5,321
שלח הודעה דרך MSN אל noam906
יש לי מעיין רעיון.
בתגובה להודעה מספר 1 שנכתבה על ידי White Lion שמתחילה ב "זקוק לאלגוריתם קומבינציות"

את האפשרויות של מס' אחד (1-5) כלשהו תוכל להציג ע"י לולאת for אחת.
את האפשרויות של שני מס' (1-5) כלשהו תוכל להציג ע"י 2 לולאות for.
את האפשרויות של שלושה מס' (1-5) כלשהו תוכל להציג ע"י 3 לולאות for.

ההדגמה מראה כי יש יחס ישר בין מס' הלולאות המקוננות לבין מס' הצירופים.

ההצעה שלי היא להכין לולאת for ראשית, מ-1 עד 5, והיא מוסיפה בכל הרצה לולאת for נוספת. (לא חייבים להסתבך, שפוט אפשר שלכל לולאת for פנימית יהיה תנאי שונה לגבי האינדקס של הלולאה הראשית).
הכוונה שלי היא שבכל סיבוב של הלולאה הראשית תפעלנה עוד לולאה פנימית.
לולאה הפנימית הראשונה יהיה התנאי (i>0), לפנימית יותר (i>1) ...ועד (i>4).

בהצלחה ואם לא ניסחתי מספיק ברור, רק תגיד.
_____________________________________
בברכה, נעם בריקמן
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #5  
ישן 12-01-2007, 15:06
  סאשה הסוס סאשה הסוס אינו מחובר  
 
חבר מתאריך: 14.07.06
הודעות: 1,070
בוא נתחיל מראש בקיר
בתגובה להודעה מספר 1 שנכתבה על ידי White Lion שמתחילה ב "זקוק לאלגוריתם קומבינציות"

יש לך מערך A, בגודל N, ואתה רוצה למצוא את כל האפשרויות הללו. נקרא לפונקציה
שמחזירה אותן מצא-אפשרויות(A). מה שהיא צריכה לעשות זה למצוא את כל האפשרויות
בגדלים 1,2,3...N. כלומר, לקרוא לפונקציה אחרת, שנקרא לה מצא-אפשרויות-בגודל(A,N),
ולקרוא לה בערך כך:


  1. עבור i מ-1 עד N
    1. מצא-אפשרויות-בגודל(A,i)
    2. הוסף תוצאה לרשימה
  2. החזר רשימת תוצאות
עכשיו, איך נראית מצא-אפשרויות-בגודל(A,N)? לא יודע. בוא נחשוב מה היא עושה, ואז נראה
איך זה נראה בקוד:

הפונקציה מקבלת מערך (או קבוצה), ומטרתה למצוא את כל תת-המערכים שלו בגודל N. איך
עושים את זה? מתחילים מהמספר הראשון, בוחרים מספר, ועוד מספר, ועוד מספר (לא כולל
אלו שכבר נבחרו), עד עד שנבחרו N מספרים. זו אפשרות אחרת.

לאחר מכן מנסים לבחור מספר אחר בתור המספר האחרון (ה-N-י), וכך יוצרים עוד אפשרויות.
ברגע שנגמרו האפשרויות עבור המספר ה-N-י, מנסים לבחור מספר אחר בתור המספר ה-(N-1)-י,
וכך הלאה.

אם במקרה זה נשמע לך כמו הסבר לנוסחות קומבינטוריות בסיסיות, אתה בכיוון הנכון. אם
במקרה זה נשמע לך זועק "רקורסיה", אתה בכיוון הנכון.


כדי לבחור סדרת מספרים, אתה בוחר מספר ראשון, K, ומצרף אליו את הסדרה הקטנה ב-1
באורכה שנוצרת מאותו מערך, ללא האיבר שכבר נבחר.


(אולי תרצה להשתמש במחסנית של ממש במקום ברקורסיה, אבל אתה יכול בהתחלה לכתוב
את הקוד באופן רקורסיבי, מה שיהיה פשוט יותר כנראה, ואז כשיהיה לך משהו עובד מול
העיניים להסיר את הרקורסיה)
_____________________________________
סאשה הסוס, סוכן אוסינט.‏

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

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

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

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

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



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

הדף נוצר ב 0.03 שניות עם 12 שאילתות

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

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