Upload
igor-kleiner
View
163
Download
5
Embed Size (px)
Citation preview
מבוא לתכנות מדעי
2חלק 2הרצאה
אלגוריתם
תוכנה
2016
Igor Kleiner
אלגוריתם
אלגוריתם-לפני שנמשיך ללמוד פייתון נצטרך להגדיר מושג חדש וחשוב •
אלגוריתם
אלגוריתם–לפני שנמשיך ללמוד פייתון נצטרך להגדיר מושג חדש וחשוב •
?מה זה אלגוריתם•
?מה הבדל בין אלגוריתם לתוכנה•
אלגוריתם
אלגוריתם הוא תיור מדויק של פתרון לבעיה מסוימת: במילים פשוטות•
:אלגוריתם דומה למתכון•במתכון רשומים שלבים להכנת אוכל •
לביעהבאלגוריתם רשומים שלבים של פתרון •
אלגוריתם
אלגוריתם הוא תיור מדויק של פתרון לבעיה מסוימת: במילים פשוטות•
:אלגוריתם דומה למתכון•במתכון רשומים שלבים להכנת אוכל •באלגוריתם רשומים שלבים של פתרון של ביעה•
אלגוריתם יכול להיות כתוב בשפה כלשהי•...,בערבית, ברוסית, בעברית, באנגלית•בשפה מתמטית•בשפת מחשב•בעזרת דיאגרמת מעברים••....
אלגוריתם
אלגוריתם הוא תיור מדויק של פתרון לבעיה מסוימת: במילים פשוטות•
:אלגוריתם דומה למתכון•במתכון רשומים שלבים להכנת אוכל •באלגוריתם רשומים שלבים של פתרון של ביעה•
אלגוריתם יכול להיות כתוב בשפה כלשהי•...,בערבית, ברוסית, בעברית, באנגלית•בשפה מתמטית•בשפת מחשב•בעזרת דיאגרמת מעברים•
אנשים שונים יכולים לכתוב אלגוריתמים שונים לאותה בעיה •
דוגמא לאלגוריתם
לפתח אלגוריתם שמעביר טמפרטורה מעלות צלזיוס למעלות פרנהייט: בעיה•
דוגמא לאלגוריתם
לפתח אלגוריתם שמעביר טמפרטורה מעלות צלזיוס למעלות פרנהייט: בעיה•
:תיור כללי של אלגוריתם•(input)קבלת טמפרטורה בצלזיוס •
(processing)חישובים מתמטיים•
(output)הצגת תשובה•
דוגמא לאלגוריתם
לפתח אלגוריתם שמעביר טמפרטורה מעלות צלזיוס למעלות פרנהייט: בעיה•
:תיור כללי של אלגוריתם•קבלת טמפרטורה בצלזיוס•
חישובים מתמטיים•
הצגת תשובה•
:אלגוריתם•(X-נסמן קלט ב)קבלת קלט ממשתמש •
32לתוצאה נוסיף , 5-את התוצאה נחלק ב, 9-בXנכפיל •
נחזיר למשתמש תוצאת חישוב אחרונה•
דוגמא לאלגוריתם
לפתח אלגוריתם שמעביר טמפרטורה מעלות צלזיוס למעלות פרנהייט: בעיה•
:תיור כללי של אלגוריתם•קבלת טמפרטורה בצלזיוס•
חישובים מתמטיים•
הצגת תשובה•
:אלגוריתם•(X-נסמן קלט ב)קבלת קלט ממשתמש •
32לתוצאה נוסיף , 5-את התוצאה נחלק ב, 9-בXנכפיל •
נחזיר למשתמש תוצאת חישוב אחרונה•
:בדיקה•12->12*9=108->108/5=21.6->21.6+32=53.6
דוגמא לאלגוריתם
לפתח אלגוריתם שמעביר טמפרטורה מעלות צלזיוס למעלות פרנהייט: בעיה•
:אלגוריתם•(X-נסמן קלט ב)קבלת קלט ממשתמש 1.
9-בXנכפיל 2.
5-באת התוצאה נחלק 3.
32לתוצאה נוסיף 4.
נחזיר למשתמשת תוצאת חישוב אחרונה5.
Algorithm vs Program
?מהו הבדל בין אלגוריתם לתוכנה•
?האם זה אותו דבר•
Algorithm vs Program
?מהו הבדל בין אלגוריתם לתוכנה•
?האם זה אותו דבר•
:נסתכל בדוגמא•
Algorithm vs Program
?מהו הבדל בין אלגוריתם לתוכנה•
?האם זה אותו דבר•
:נסתכל בדוגמא•
•www.codeskulptor.org/#user42_SE25eQSD1D_0.py
Algorithm vs Programאיך לפתור את הבעיה-אלגוריתם זה תיור •
תוכנה היא מימוש של האלגוריתם בשפת תכנות כלשהי•
ויכול לבצע" מבין"תוכנה היא סדרת הפקודות שמחשב •
R-למשל בפייתון או ב, בהינתן אלגוריתם אנו יכולים לממש אותו בשפת תכנות נתונה•או בשפת תכנות אחרת
( האם הוא יעיל, האם הוא נכון, האם הוא טוב)אפשר לכתוב אלגוריתם ולנתח אותו •ללא קשר לשום שפת תוכנה
('סמסטר ב)יש קורסים שלמים ששם לומדים רק אלגוריתמים וניתוח שלהם •
אלגוריתם נגד מתכון
!אנחנו חכמים-אנשים יכול להבין מתכון לא מאוד מדויק או מתכון עם טעויות קטנות •
משמעי-אבל להבדיל ממתכן אלגוריתם חייב להיות מדויק וחד•
כך שמחשב יוכל להריץ אותה, ללא טעויותגם תוכנה צריכה להיות מדויקת •