33
מבוא לתכנות מדעי הרצאה1 חלק2 למה לתכנת2016 Igor Kleiner

מבוא לתכנות מדעי פייתון הרצאה 1 חלק 2 Python

Embed Size (px)

Citation preview

מבוא לתכנות מדעי

2חלק 1הרצאה

למה לתכנת

2016Igor Kleiner

מחשבים בכל מקום

:כמעט בכל מקוםמחשבהיום אפשר למצוא •מקרר•

מכונת קפה•

מצלמה•

טלפון•

מכונית•

מעלית•

מד לחץ דם•

•...

לעזור לנו" רוצים"מחשבים

מחשבים בנויים כדי לעזור לאנשים לבצע משימות שונות•

לעזור לנו" רוצים"מחשבים

מחשבים בנויים כדי לעזור לאנשים לבצע משימות שונות•

אנו צריכים לדעת לדבר , אבל כדי להגיד למחשב מה לעשות•: עם מחשבים

MAKE PEACE

Calculate solution of equation

Improve my photo

לעזור לנו" רוצים"מחשבים

מחשבים בנויים כדי לעזור לאנשים לבצע משימות שונות•

אנו צריכים לדעת לדבר , אבל כדי להגיד למחשב מה לעשות•: עם מחשבים

ת ושיודעבתוכנית קיימת צריכים להשתמש משתמשים רגילים •:לענות על דרישות שלהם

• Moodle (site for students)

• Photoshop (photo improvements)

• Matlab (mathematical calculation)

• Windows (operational system)

• Microsoft office (electronical documents)

• ….

לעזור לנו" רוצים"מחשבים

מחשבים בנויים כדי לעזור לאנשים לבצע משימות שונות•

אנו צריכים לדעת לדבר , אבל כדי להגיד למחשב מה לעשות•: עם מחשבים

ת ושיודעבתוכנית קיימת צריכים להשתמש משתמשים רגילים •:לענות על דרישות שלהם

?מי כותב תוכנות•

לעזור לנו" רוצים"מחשבים

מחשבים בנויים כדי לעזור לאנשים לבצע משימות שונות•

אנו צריכים לדעת לדבר , אבל כדי להגיד למחשב מה לעשות•: עם מחשבים

ת ושיודעבתוכנית קיימת צריכים להשתמש משתמשים רגילים •:לענות על דרישות שלהם

(programmer)מתכנת ?מי כותב תוכנות•

מתכנת יודע לדבר עם מחשב•

מתכנת

מתכנתים יודעים לדבר עם מחשב•

מקצוע מבוקש•

ממחשב מה " לקבל"מתכנתים יודעים כלים שעוזרים להם •שהם רוצים

משתמשים מוכנים לשלם למתכנת כדי לקבל תכנית שהם •צריכים

?למה כדאי ללמוד תכנות

?למה כדאי ללמוד תכנות

קורס חובה•

?למה כדאי ללמוד תכנות

קורס חובה•

קורס שיכול לעזור בלימודים•אלגוריתמים•

הסתברות•

למידה ממוחשבת•

סטטיסטיקה•

סימולציה•

?למה כדאי ללמוד תכנות

קורס חובה•

בלימודיםקורס שיכול לעזור •

:קורס שיכול לעזור בעבודה•אקטואריה•

•Data science

סטטיסטיקאי•

?למה כדאי ללמוד תכנות

קורס חובה•

בלימודיםקורס שיכול לעזור •

קורס שיכול לעזור בעבודה•

לתכנת זה מאתגר•

לפעמים לא קיימת תוכנה שאנו נזדקק ואז נצטרך או לקנות אותה או לבנות אותה•

•....

•...

תוכנה

? מה היא תוכנת מחשב•

תוכנה

?מה היא תוכנת מחשב•

:נראה כמה דוגמאות•

תוכנה

?מה היא תוכנת מחשב•

:נראה כמה דוגמאות•

• Machine code

תוכנה

?מה היא תוכנת מחשב•

:נראה כמה דוגמאות•

• Machine Code

קשה ללמוד לסטודנט , קל לטעות בזמן כתיבת קוד, קשה להבין מה קורה: שפת מכונהמתחיל

תוכנה

?מה היא תוכנת מחשב•

:נראה כמה דוגמאות•

• Assembly

תוכנה

?מה היא תוכנת מחשב•

:נראה כמה דוגמאות•

• Assembly

קשה ללמוד לסטודנט , קל לטעות בזמן כתיבת קוד, קשה להבין מה קורה: אסמבלר•מתחיל

תוכנה

?מה היא תוכנת מחשב•

:נראה כמה דוגמאות•

• C

תוכנה

?מה היא תוכנת מחשב•

:נראה כמה דוגמאות•

• C

•C :יותר קל ללמוד לסטודנט מתחיל, יותר קל להבין מה קורה

תוכנה

?מה היא תוכנת מחשב•

:נראה כמה דוגמאות•

• Python

print “hello world”

תוכנה

?מה היא תוכנת מחשב•

:נראה כמה דוגמאות•

• Python

print “hello world”

נראה פשוט:פייתון•

תוכנה

?מה היא תוכנת מחשב•

סדרת פקודות •במחשבשלנוהאינטליגנציהשלחתיכה קטנהזאת•

אנו יכולים לתת תוכנה שלנו לאנשים אחרים שיוכלו להשתמש בה•

"תוכנה טובה היא במו ציור מוצלח משמח הרבה אנשים"•

תוכנה לבן אדם

• https://www.youtube.com/watch?v=vlzwuFkn88U

תוכנה לבן אדם

• https://www.youtube.com/watch?v=vlzwuFkn88U

תוכנה לבן אדם

• https://www.youtube.com/watch?v=vlzwuFkn88U

תוכנה לבן אדם

אנו כבן אדם יודעים לתקן טעויות קטנות•

לפעמים אנו אפילו לא שמים לב שיש טעות•

!ולא כל כך נחמד!אבל מחשב לא כל כך חכם•

!מחשב לא ידע לתקן אותנו•

בהתחלה כאשר נלמד לתכנת נעשה לא מאט טעויות•

!לא להתאכזב•

?מחשב נגד בן אדם

יש דברים שאנשים עושים יותר טוב ממחשב•

יש דברים שמחשבים עושים הרבה יותר טוב ומהר מבני אדם•

?"מלחמה ושלום"מה היא מילה הכי נפוצה בספר : דוגמא•

?מחשב נגד בן אדם

יש דברים שאנשים עושים יותר טוב ממחשב•

יש דברים שמחשבים עושים הרבה יותר טוב ומהר מבני אדם•

?"מלחמה ושלום"מה היא מילה הכי נפוצה בספר : דוגמא•

מחשב יודע לעשות משימה זו תוך חלקי שניה ולבן אדם זה •ייקח המון זמן

מלון

אוסף פקודות שמגדירות דרך חישוב(program)תוכנה •

• Igor Kleiner (Hebrew version adaptation 2016)