חשיבה אלגוריתמית - מדעי המחשב כיתה י
Document Details
Uploaded by TidyOakland3557
Technion - Israel Institute of Technology
חניל זרבאילוב
Tags
Summary
המסמך מציג מושגים בסיסיים של חשיבה אלגוריתמית, כולל הגדרה של אלגוריתם, תכונות של אלגוריתם טוב, דוגמאות לאלגוריתמים, תרשים אלגוריתם והדגמה לתרגום אלגוריתם לשפת תכנות Java. המסמך מיועד לכיתה י'
Full Transcript
.3חשיבה אלגוריתמית .3 חשיבה אלגוריתמית 1 חניל זרבאילוב | מדעי המחשב | כיתה י׳ .3חשיבה אלגוריתמית...
.3חשיבה אלגוריתמית .3 חשיבה אלגוריתמית 1 חניל זרבאילוב | מדעי המחשב | כיתה י׳ .3חשיבה אלגוריתמית מהו אלגוריתם? הגדרה אלגוריתם הוא סדרת הוראות מדויקת שמסבירה איך לבצע משימה או לפתור בעיה. תכונות של אלגוריתם טוב דוגמאות מחיינו מסתיים תוך מספר ניתן מסודר פתרון תרגיל הוראות מתכון צעדים סופי לביצוע וברור מתמטי הגעה ליעד לפסטה 2 חניל זרבאילוב | מדעי המחשב | כיתה י׳ דוגמאות לאלגוריתמים .3חשיבה אלגוריתמית כל סדרת פעולות יכולה להיות מתוארת כאלגוריתם ,למשל: קבע עם בחר זמן בחר בית חברים הקרנה קולנוע צפייה בסרט בקולנוע עם חברים תהנו מהסרט! תגיעו בחר סרט הכנס לאתר לקולנוע בזמן 3 חניל זרבאילוב | מדעי המחשב | כיתה י׳ דוגמאות לאלגוריתמים .3חשיבה אלגוריתמית אבל לא כל סדר פעולות הוא כזה פשוט ,למשל: התחל לאסוף מבחנים מתלמידים חישוב ממוצע האם אספת את ציונים כל המבחנים? כן סכום את חלק במספר לא כל הציונים התלמידים יש לנו את הממוצע! 4 אסוף מבחן מתלמיד חניל זרבאילוב | מדעי המחשב | כיתה י׳ .3חשיבה אלגוריתמית תרשים אלגוריתם אז איך בתכלס מתארים אלגוריתם בצורה ויזואלית? בעזרת תרשים מסודר עם צורות מוסכמות כמובן! )מפתחים אוהבים תרשימים ,תתרגלו( חץ מקבילית מעויין מלבן/ריבוע פינות מעוגלות מעבר בין פעולת תנאי שלב באלגוריתם התחלה/סוף שלבים קלט/פלט (אם -אז) או פעולה 5 חניל זרבאילוב | מדעי המחשב | כיתה י׳ .3חשיבה אלגוריתמית תרשים אלגוריתם בנוסף ,גם נצטרך לתאר מה מקבלים באלגוריתם ,מה עושים ומה התוצאה הרצויה פלט עיבוד קלט Output Process Input מה התוצאה מה השלבים מה המידע שהאלגוריתם מחזיר? שהאלגוריתם מבצע? שהאלגוריתם מקבל? למשל: למשל: מספר ,טקסט ,רשימה מספר ,טקסט ,רשימה 6 חניל זרבאילוב | מדעי המחשב | כיתה י׳ דוגמא לאלגוריתם .3חשיבה אלגוריתמית הבעיה לבדוק אם מספר הוא זוגי או אי-זוגי. תרשים התחלה פלט עיבוד קלט Output Process Input מה התוצאה מה השלבים מה המידע שהאלגוריתם מחזיר? שהאלגוריתם מבצע? שהאלגוריתם מקבל? האם המספר מתחלק ב2- לא כן ללא שארית? ״זוגי״ אם המספר מתחלק ב2- מספר שלם נדפיס נדפיס או ללא שארית ,הוא זוגי. ״אי-זוגי״ ״זוגי״ ״אי-זוגי״ אחרת ,הוא אי-זוגי. סוף 7 חניל זרבאילוב | מדעי המחשב | כיתה י׳ .3חשיבה אלגוריתמית אלגוריתמים ופתרון בעיות אוקיי...אבל בשביל מה אנחנו צריכים את כל זה בכלל? אלגוריתמים עוזרים לנו לפרק בעיות מורכבות לצעדים פשוטים וברורים. בעזרתם אנו יכולים לכתוב תוכניות מחשב בקלות בעזרות שפות תכנות. 8 חניל זרבאילוב | מדעי המחשב | כיתה י׳ תרגום אלגוריתם .3חשיבה אלגוריתמית תרשים התחלה לשפת תוכנה נחזור לדוגמא שהיתה לנו ניקח את התרשים ונתרגם אותו לפקודות x=2 בשפת התוכנה :Java אנו מניחים כי המספר ( )Xהוא 2למען הפשטות האם המספר ;int x = 2 לא מתחלק ב2- כן { )if (x % 2 == 0 ללא שארית? ;)"זוגי"(System.out.println { } else נדפיס נדפיס ;)"אי-זוגי"(System.out.println ״אי-זוגי״ ״זוגי״ } סוף 9 חניל זרבאילוב | מדעי המחשב | כיתה י׳ .3חשיבה אלגוריתמית מסקנה כתיבת אלגוריתמים היא חלק בלתי נפרד מפיתוח תוכנה! 10 חניל זרבאילוב | מדעי המחשב | כיתה י׳ .3חשיבה אלגוריתמית אז על מה דיברנו? הגדרה אלגוריתם הוא סדרת הוראות מדויקת שמסבירה איך לבצע משימה או לפתור בעיה. פלט עיבוד קלט Output Process Input מה התוצאה מה השלבים מה המידע שהאלגוריתם מחזיר? שהאלגוריתם מבצע? שהאלגוריתם מקבל? חץ מקבילית מעויין מלבן/ריבוע פינות מעוגלות מעבר בין פעולת תנאי שלב באלגוריתם התחלה/סוף שלבים קלט/פלט (אם -אז) או פעולה 11 חניל זרבאילוב | מדעי המחשב | כיתה י׳ .3חשיבה אלגוריתמית נתראה בסרטון הבא! בו נדבר על שפות תכנות Join the World of Programming חניל זרבאילוב | מדעי המחשב | כיתה י׳