More Related Content
More from Igor Kleiner (20)
תכנות מדעי: פייתון: הרצאה 10: : תחום הכרעה
- 5. השמות מרחב מהו
•בפייתוןהשמות מרחבלאובייקטים משתנים שמות בין מיפוי טבלת הוא
•מודול לכל בפייתון,פונקציה לכל,מחלקה ולכל(נלמד לא)משלו השמות מרחב יש
•נקרא כזה השמות מרחבלוקאלימסוים לאובייקט משויך הוא כי–פונקציה,וכו מודול'
Namespace
x 12
z 22
y “Hello”
- 6. השמות מרחב מהו
•בפייתוןהשמות מרחבלאובייקטים משתנים שמות בין מיפוי טבלת הוא
•מודול לכל בפייתון,פונקציה לכל,מחלקה לכל(נלמד לא)משלו השמות מרחב יש
•נקרא כזה השמות מרחבלוקאלימסוים לאובייקט משויך הוא כי:פונקציה,וכו מודול'
•הסתיים הפונקציה של ביצוע וכאשר עבורה מיוצר השמות מרחב לפונקציה קוראים אנו כאשר
נמחק המרחב
Namespace
x 12
z 22
y “Hello”
- 7. השמות מרחב מהו
•בפייתוןהשמות מרחבלאובייקטים משתנים שמות בין מיפוי טבלת הוא
•מודול לכל בפייתון,פונקציה לכל,מחלקה לכל(נלמד לא)משלו השמות מרחב יש
•נקרא כזה השמות מרחבלוקאלימסוים לאובייקט משויך הוא כי:פונקציה,וכו מודול'
•הסתיים הפונקציה של ביצוע וכאשר עבורה מיוצר השמות מרחב לפונקציה קוראים אנו כאשר
נמחק המרחב
•גלובאלי שמות למרחב ושייכים גלובאליים נקראים תוכנה של ראשי בגוף שמוגדרים משתנים
Namespace
x 12
z 22
y “Hello”
- 12. השמות מרחב מהו
•בפייתוןהשמות מרחבלאובייקטים משתנים שמות בין מיפוי טבלת הוא
•מודול לכל בפייתון,פונקציה לכל,מחלקה ולכל(למדנו לא)משלו השמות מרחב יש
•נקרא הזה השמות מרחבלוקאלימסוים לאובייקט משויך הוא כי:פונקציה,וכו מודול'
•הסתיים הפונקציה של ביצוע וכאשר עבורה מיוצר השמות המרחב לפונקציה קוראים אנו כאשר
נמחק המרחב
•גלובאלי שמות למרחב ושייכים גלובאליים נקראים תוכנה של ראשי בגוף שמוגדרים משתנים
•שונים שמות במרחבי למשתנים שם אותו לתת אפשר
Namespace
x 12
z 22
y “Hello”
- 16. השמות מרחב–תזכורת
•משלה השמות מרחב יש מחלקה או מודול או פונקציה לכל בפייתון
•לפונקציה קריאה בעתהפונקציה של השמות מרחב מיוצר
•נמחק הפונקציה של השמות המרחב מהפונקציה יוצאים כאשר
- 17. השמות מרחב–תזכורת
•משלה השמות מרחב יש מחלקה או מודול או פונקציה לכל בפייתון
•לפונקציה קריאה בעתהפונקציה של השמות מרחב מיוצר
•נמחק שמות המרחב מהפונקציה יוצאים כאשר
•מסקנה:תוכנה ביצוע בזמן–השמות מרחבי מספר קיים
- 18. השמות מרחב–תזכורת
•משלה השמות מרחב יש מחלקה או מודול או פונקציה לכל בפייתון
•לפונקציה קריאה בעתהפונקציה של השמות מרחב מיוצר
•נמחק שמות המרחב מהפונקציה יוצאים כאשר
•מסקנה:תוכנה ביצוע בזמן–השמות מרחבי מספר קיים
•בו משתמשים שכעת משתנה מצביע שעליו ערך מהו יודע פייתון איך?
- 19. ההכרה תחום
•בקוד מקום מכל משתנה לכל לגשת ניתן לא
•בו להשתמש וניתן קיים המשתנה שבו קוד של חלק הוא משתנה של ההכרה תחום
•לפי המשתנה הגדרת את מחפש תמיד הוא המשתנה מוגדר איפו מחפש פייתון כאשר
הבא סדר:
Local->Enclosed->Global->Built-In
- 20. ההכרה תחום
•בקוד מקום מכל משתנה לכל לגשת ניתן לא
•בו להשתמש וניתן קיים המשתנה שבו קוד של חלק הוא משתנה של ההכרה תחום
•לפי המשתנה הגדרת את מחפש תמיד הוא המשתנה מוגדר איפו מחפש פייתון כאשר
הבא סדר:
Local->Enclosed->Global->Built-in
•מודול או פונקציה בתוך השמות מרחב הוא לוקאלי השמות מרחב
•Local:המודול או הפונקציה בתוך לוקלי הוא מודול או פונקציה בתוך המוגדר משתנה כל
•Enclosedמשתמשים שבה פונקציה מוגדרת שבה הפונקציה של השמות מרחב הוא
במשתנה
•Globalהתוכנה כל של השמות מרחב הוא
•Built-Inפייתון של השמורים המשתנים הפונקציות כל עם פייתון של השמות מרחב
- 21. ההכרה תחום
•המשתנה של הערך את אחפש קודם פייתון אז בקוד במשתנה נשתמש אנו כאשר ולכן
הלוקאלי השמות במרחב,השמות במרחב אזי אותו ימצא לא ואםEnclosedאז לא ואם
ב-Globalב אז לא ואם-Built-In
- 22. ההכרה תחום
•המשתנה של הערך את אחפש קודם פייתון אז בקוד במשתנה נשתמש אנו כאשר ולכן
הלוקאלי השמות במרחב,השמות במרחב אזי אותו ימצא לא ואםEnclosedאז לא ואם
ב-Globalב אז לא ואם-Built-In
- 23. ההכרה תחום
•המשתנה של הערך את אחפש קודם פייתון אז בקוד במשתנה נשתמש אנו כאשר ולכן
הלוקאלי השמות במרחב,השמות במרחב אזי אותו ימצא לא ואםEnclosedאז לא ואם
ב-Globalב אז לא ואם-Built-In
- 24. ההכרה תחום
•המשתנה של הערך את אחפש קודם פייתון אז בקוד במשתנה נשתמש אנו כאשר ולכן
הלוקאלי השמות במרחב,השמות במרחב אזי אותו ימצא לא ואםEnclosedאז לא ואם
ב-Globalב אז לא ואם-Built-In
- 25. ההכרה תחום
•המשתנה של הערך את אחפש קודם פייתון אז בקוד במשתנה נשתמש אנו כאשר ולכן
הלוקאלי השמות במרחב,השמות במרחב אזי אותו ימצא לא ואםEnclosedאז לא ואם
ב-Globalב אז לא ואם-Built-In
- 26. ההכרה תחום
•המשתנה של הערך את אחפש קודם פייתון אז בקוד במשתנה נשתמש אנו כאשר ולכן
הלוקאלי השמות במרחב,השמות במרחב אזי אותו ימצא לא ואםEnclosedאז לא ואם
ב-Globalב אז לא ואם-Built-In
- 27. ההכרה תחום
•המשתנה של הערך את אחפש קודם פייתון אז בקוד במשתנה נשתמש אנו כאשר ולכן
הלוקאלי השמות במרחב,השמות במרחב אזי אותו ימצא לא ואםEnclosedאז לא ואם
ב-Globalב אז לא ואם-Built-In
- 28. ההכרה תחום
•המשתנה של הערך את אחפש קודם פייתון אז בקוד במשתנה נשתמש אנו כאשר ולכן
הלוקאלי השמות במרחב,השמות במרחב אזי אותו ימצא לא ואםEnclosedאז לא ואם
ב-Globalב אז לא ואם-Built-In
- 33. סיכום
הפונקציה של גוף הוא הפונקציה בתוך המוגדרים ומשתנים פונקציה של פרמטרים של ההכרה תחום
פונקציות של ופרמטרים למשתנים לגשת ניתן לא גלובאלי מקוד
למעט אחרת בפונקציה המוגדרים משתנים או לפרמטרים לגשת ניתן לא אחד פונקציה מתוךמקרים
פונקציה כאשרשניה פונקציה בתוך מוגדרת אחד
- 37. מטרה
לפונקציה פרמטרים העברת מנגנון להבין
לשינוי שניתנים פונקציה של פרמטרים בין הבדל להבין
(mutable)לשינוי ניתנים שלא לפרמטרים(immutable)
- 43. Mutable Immutable types
Int, float, bool immutable
str immutable
tuple immutable
List mutable
dictionary mutable
- 44. Example: immutability of integers
Int, float, bool immutable
str immutable
tuple immutable
List mutable
dictionary mutable
10i
- 45. Example: immutability of integers
Int, float, bool immutable
str immutable
tuple immutable
List mutable
dictionary mutable
10i
20
- 46. Example: immutability of integers
Int, float, bool immutable
str immutable
tuple immutable
List mutable
dictionary mutable
10i
- 47. Example: immutability of integers
Int, float, bool immutable
str immutable
tuple immutable
List mutable
dictionary mutable
10i
j
- 48. Example: immutability of integers
Int, float, bool immutable
str immutable
tuple immutable
List mutable
dictionary mutable
10i
j
20
- 54. Immutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
- 55. Immutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
1j
- 56. Immutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
1j
i
- 57. Immutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
1j
i 2
- 58. Immutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
1j
- 59. Immutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
•מסקנה:כאשר קיבלה שהיא ארגומנט של הערך את לשנות יכולה לא פונקציה
הוא הארגומנטimmutable
- 60. Immutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
•מסקנה:כאשר קיבלה שהיא ארגומנט של הערך את לשנות יכולה לא פונקציה
הוא הארגומנטimmutable
•פונקציה לעשות רוצים אנו זאת בכל אםincב פרמטר של הערך את שמגדילה-1אזי
הבא בקוד להשתמש אפשר:
1
- 61. Mutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
[1]l
- 62. mutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
[1]l
m
- 63. mutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
[2]l
m
- 64. mutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
[2]l
- 65. mutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
•חשובה מסקנה:הוא כאשר שלה הארגומנט את לשנות יכולה פונקציהmutable
- 66. mutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
•חשובה מסקנה:הוא כאשר שלה הארגומנט את לשנות יכולה פונקציהmutable
•דוגמא:
- 67. mutable objects as function arguments
•להבין חשובשל פרמטר וגם הארגומנט גם אזי ארגומנט לפונקציה מעבירים שכאשר
הפונקציהמצביעיםערך אותו על(aliasing)
•חשובה מסקנה:הוא כאשר שלה הארגומנט את לשנות יכולה פונקציהmutable
•דוגמא:
- 75. בגודל סופי לוח על חיים משחקn*n
•מטרהסופי לוח על חיים משחק לממש היא שלנו
•הלוח על אקראית מקונפיגורציה יתחיל המשחק,בהסתברות כאשרpכל
ובהסתברות חייה תהי משבצת1-pב באופן מתה תהיה משבצת כל"ת
משבצות בשאר
- 76. בגודל סופי לוח על חיים משחקn*n
•מטרהסופי לוח על חיים משחק לממש היא שלנו
•הלוח על אקראית מקונפיגורציה יתחיל המשחק,בהסתברות כאשרpכל
ובהסתברות חייה תהי משבצת1-pב באופן מתה תהיה משבצת כל"ת
משבצות בשאר
•הבא דור לחישוב המשחק חוקי:
•למשבצת אםחייהמ יותר יש-3הבא בדור מצפיפות תמות היא שכנים
•למשבצת אםחייהמ פחות יש-2הבא בדור בידור מחוסר תמות היא שכנים
•יש מתה למשבצת אם3תהיה היא הבא בדור אזי שכניםחייה
•של המצב המקרים בשארהמשבצתמשתנה לא
- 77. בגודל סופי לוח על חיים משחקn*n
•מטרהסופי לוח על חיים משחק לממש היא שלנו
•אותו נעדן ואז אלגוריתם של כללי מתיור נתחיל
- 78. בגודל סופי לוח על חיים משחקn*n
•מטרהסופי לוח על חיים משחק לממש היא שלנו
•אותו נעדן ואז אלגוריתם של כללי מתיור נתחיל
•חדש אקראי לוח נכין–דור0אותו ונצייר
- 79. בגודל סופי לוח על חיים משחקn*n
•מטרהסופי לוח על חיים משחק לממש היא שלנו
•אותו נעדן ואז אלגוריתם של כללי מתיור נתחיל
•חדש אקראי לוח נכין–דור0ונציירהלוח את
•נגמר לא שהמשחק עד,הבא לוח נחשב(הבא דור)אותו ונצייר
- 80. בגודל סופי לוח על חיים משחקn*n
•מטרהסופי לוח על חיים משחק לממש היא שלנו
•אותו נעדן ואז אלגוריתם של כללי מתיור נתחיל
•חדש אקראי לוח נכין–דור0,הלוח את נצייר
•נגמר לא שהמשחק עד,הבא לוח נחשב(הבא דור)אותו ונצייר
- 81. בגודל סופי לוח על חיים משחקn*n
•מטרהסופי לוח על חיים משחק לממש היא שלנו
•אותו נעדן ואז אלגוריתם של כללי מתיור נתחיל
•חדש אקראי לוח נכין–דור0,הלוח את נצייר
•נגמר לא שהמשחק עד,הבא לוח נחשב(הבא דור)אותו ונצייר
- 82. בגודל סופי לוח על חיים משחקn*n
•מטרהסופי לוח על חיים משחק לממש היא שלנו
•אותו נעדן ואז אלגוריתם של כללי מתיור נתחיל
•חדש אקראי לוח נכין–דור0,הלוח את נצייר
•נגמר לא שהמשחק עד,הבא לוח נחשב(הבא דור)אותו ונצייר
שתי לפחות לממש שנצטרך רואים אנו מכאן
פונקציות
- 83. משחק לוח לייצוג נתונים מבנה בחירת
•המשחק של הלוח את נציג שבעזרתו נתונים מבנה ולבחור לחשוב צריכים אנו:
•רשימה
•דו רשימהמימדית
•tuple
•מחרוזת
•מילון
•set
- 84. משחק לוח לייצוג נתונים מבנה בחירת
•המשחק של הלוח את נציג שבעזרתו נתונים מבנה ולבחור לחשוב צריכים אנו:
•רשימה
•דו רשימהמימדית
•tuple
•מחרוזת
•מילון
•set
•בעזרת הלוח את נציגמימדית דו רשימה,מספר פנימית רשימה כאשרiתציג
לוח של שורהמספרi
- 85. משחק לוח לייצוג נתונים מבנה בחירת
•המשחק של הלוח את נציג שבעזרתו נתונים מבנה ולבחור לחשוב צריכים אנו:
•רשימה
•דו רשימהמימדית
•tuple
•מחרוזת
•מילון
•set
•בעזרת הלוח את נציגמימדית דו רשימה,מספר פנימית רשימה כאשרiתציג
לוח של שורהמספרi
עם מימדית דו רשימה הגדרת
FALSEמשבצת בכל
- 86. משחק לוח לייצוג נתונים מבנה בחירתטריק
•הבא דור של לוח נבנה אנו כאשר,לבחון נצטרך משבצת כל עבור?שכנים
שלה
- 87. משחק לוח לייצוג נתונים מבנה בחירתטריק
•הבא דור של לוח נבנה אנו כאשר,לבחון נצטרך משבצת כל עבור8שכנים
שלה
- 88. משחק לוח לייצוג נתונים מבנה בחירתטריק
•הבא דור של לוח נבנה אנו כאשר,לבחון נצטרך משבצת כל עבור8שכנים
שלה
•בעיה יש אבל:
- 89. משחק לוח לייצוג נתונים מבנה בחירתטריק
•הבא דור של לוח נבנה אנו כאשר,לבחון נצטרך משבצת כל עבור8שכנים
שלה
•בעיה יש אבל:יש משבצת לכל לא8שכנים
- 90. משחק לוח לייצוג נתונים מבנה בחירתטריק
•הבא דור של לוח נבנה אנו כאשר,לבחון נצטרך משבצת כל עבור8שכנים
שלה
•בעיה יש אבל:יש משבצת לכל לא8שכנים
8
5
3
- 91. משחק לוח לייצוג נתונים מבנה בחירתטריק
•הבא דור של לוח נבנה אנו כאשר,לבחון נצטרך משבצת כל עבור8שכנים
שלה
•בעיה יש אבל:יש משבצת לכל לא8שכנים
•עלבטריק נעזר בפתרון הכלליות את לשבור לא מנתהבא:לוח לייצר במקום
בגודלn*nבגודל לוח נייצרn+2עלn+2כולה תהי החיצונית המעטפת כאשר
False
8
8
8
- 92. בגודל סופי לוח על חיים משחקn*n
•מטרהסופי לוח על חיים משחק לממש היא שלנו
•אותו נעדן ואז אלגוריתם של כללי מתיור נתחיל
•חדש אקראי לוח נכין–דור0,הלוח את נצייר
•נגמר לא שהמשחק עד,הבא לוח נחשב(הבא דור)אותו ונצייר
- 93. GenerateNewBoard(n,p)
•מקבלת הפונקציהלוח של גודל–nמסוימת שמשבצת והסתברותחיהp
•מחזירה הפונקציהדו רשימה-בגודל ממידית(n+2)*(n+2)
•ערך בעלות הן חיצונית מעטפת של משבצות כל זו ברשימה כאשרFalse
•היא המשבצות משאר אחת וכלTrueבהסתברותpו-Falseבהסתברות1-p
- 94. GenerateNewBoard(n,p)
•מקבלת הפונקציהלוח של גודל–nחיה מסוימת שמשבצת והסתברותp
•מחזירה הפונקציהדו רשימה-בגודל ממידית(n+2)*(n+2)
•ערך בעלות הן חיצונית מעטפת של משבצות כל זו ברשימה כאשרFalse
•היא המשבצות משאר אחת וכלTrueבהסתברותpו-Falseבהסתברות1-p
- 95. GenerateNewBoard(n,p)
•מקבלת הפונקציהלוח של גודל–nחיה מסוימת שמשבצת והסתברותp
•מחזירה הפונקציהדו רשימה-בגודל ממידית(n+2)*(n+2)
•ערך בעלות הן חיצונית מעטפת של משבצות כל זו ברשימה כאשרFalse
•היא המשבצות משאר אחת וכלTrueבהסתברותpו-Falseבהסתברות1-p
- 96. GenerateNewBoard(n,p)
•מקבלת הפונקציהלוח של גודל–nחיה מסוימת שמשבצת והסתברותp
•מחזירה הפונקציהדו רשימה-בגודל ממידית(n+2)*(n+2)
•ערך בעלות הן חיצונית מעטפת של משבצות כל זו ברשימה כאשרFalse
•היא המשבצות משאר אחת וכלTrueבהסתברותpו-Falseבהסתברות1-p
- 100. בגודל סופי לוח על חיים משחקn*n
•מטרהסופי לוח על חיים משחק לממש היא שלנו
•אותו נעדן ואז אלגוריתם של כללי מתיור נתחיל
•חדש אקראי לוח נכין–דור0,הלוח את נצייר
•נגמר לא שהמשחק עד,הבא לוח נחשב(הבא דור)אותו ונצייר
סיימנו
- 103. GenerateNextBoard(Board)
•מקבלת הפונקציהמימדית דו רשימה:נוכחי דור שמייצג לוחומחזירה
מימדית דו רשימה:הבא דור שמייצג לוח
•אלגוריתם:
•עם חדשה מימדית דו רשימה נכיןFalseמקום בכל–הבא דור של לוח נשמור כאן
•ישן בלוח פנימית משבצת כל על נעבור,נשמור ואז למשבצת יש שכנים כמה נספור
של ערך מתאים במקום חדש בלוחהמשבצת:משחק כללי לפי מתה או חיה
שהגדרנו
- 104. GenerateNextBoard(Board)
•מקבלת הפונקציהמימדית דו רשימה:נוכחי דור שמייצג לוחומחזירה
מימדית דו רשימה:הבא דור שמייצג לוח
•אלגוריתם:
•עם חדשה מימדית דו רשימה נכיןFalseמקום בכל–הבא דור של לוח נשמור כאן
•ישן בלוח פנימית משבצת כל על נעבור,נשמור ואז למשבצת יש שכנים כמה נספור
של ערך מתאים במקום חדש בלוחהמשבצת:משחק כללי לפי מתה או חיה
שהגדרנו
- 105. GenerateNextBoard(Board)
•מקבלת הפונקציהמימדית דו רשימה:נוכחי דור שמייצג לוחומחזירה
מימדית דו רשימה:הבא דור שמייצג לוח
•אלגוריתם:
•עם חדשה מימדית דו רשימה נכיןFalseמקום בכל–הבא דור של לוח נשמור כאן
•ישן בלוח פנימית משבצת כל על נעבור,נשמור ואז למשבצת יש שכנים כמה נספור
של ערך מתאים במקום חדש בלוחהמשבצת:משחק כללי לפי מתה או חיה
שהגדרנו