< Return to Video

עוד משתנים (גירסת הוידאו)

  • 0:02 - 0:10
    אז כבר עשינו את המשתנה הסופר מגניב הזה בשביל העין של ווינסטון (eyeSize), מה שמאוד עזר מכיוון שזה חוסך המון הקלדה כשאנחנו רוצים לשנות את גודל העיניים של ווינסטון.
  • 0:10 - 0:15
    זכרו שלפני כן היינו צריכים לכתוב את אותו המספר ארבע פעמים, מתי שרצינו לשנות את העיניים שלו.
  • 0:15 - 0:19
    אבל האם אנחנו יכולים להשתמש במשתנים על מנת להחליף מספרים שהם לא כולם אותו הדבר?
  • 0:19 - 0:21
    מה אם היינו רוצים להזיז את ווינסטון טיפה?
  • 0:21 - 0:27
    היינו צריכים לשנות את כל קוארדינאטות ה-X, אבל לא כולן אותו הדבר, אז אני לא יכולה פשוט להחליף את כולן עם אותו המשתנה.
  • 0:27 - 0:33
    אבל חכו! ברגע שאני אקצה מספר למשתנה, אני יכול להשתמש במשתנה הזה בדיוק כאילו הוא היה המספר הזה.
  • 0:33 - 0:37
    מה שאומר, שאני יכולה להשתמש במשתנים בביטויים מתמטיים.
  • 0:37 - 0:40
    אז מה תגידו על זה, בואו נעשה משתנה עבור נקודת ה-x של ווינסטון.
  • 0:40 - 0:43
    בואו נקרא לזה, "var x"
  • 0:43 - 0:48
    די פשוט. אוקיי, עכשיו בואו ניתן לו את הערך של קוארדינאטת ה-x של הפרצוף של ווינסטון
  • 0:48 - 0:51
    אז הפרצוף שלו צוייר בקוארדינאטת X של 200.
  • 0:51 - 0:54
    אז אני נאמר ש-X מקבל 200 (;var x = 200)
  • 0:55 - 1:02
    עכשיו אני יכולה ל החליף את המספר הזה עם המשתנה החדש שלי ״x״. וכשאני אשנה את הערך של X הוא יזיז את הפרצוף של ווינסטון.
  • 1:02 - 1:05
    אבל לא את האוזניים שלו או את הפה שלו.
  • 1:05 - 1:14
    בשביל לתקן את זה, אנחנו הולכים להגדיר את המיקום של העיניים והאף שלו, ביחס למיקום של הפרצוף.
  • 1:14 - 1:20
    אז קוארדינאטות ה-"x" הולכות להיות המרכז של כל שאר האליפסות, אז הפרצוף שלו צוייר ב....
  • 1:20 - 1:29
    ב-200, ועכשיו בואו נעשה את העין השמאלית שלו קודם, כך שהאליפסה הזו היא העין השמאלית שלו, ועכשיו אנחנו יכולים לראות שהיא מצויירת ב-150.
  • 1:29 - 1:33
    אז כאן זה 150.
  • 1:33 - 1:38
    ואני יודעת ש-150 זה 50 פחות מ-200.
  • 1:38 - 1:42
    אז העין השמאלית שלו צריכה להיות איפה שהפרצוף שלו נמצא, פחות 50.
  • 1:42 - 1:47
    אז זה הולך להיות ״x״, שזה המיקום של הפנים, פחות 50.
  • 1:47 - 1:53
    ועכשיו אם אני אשנה את הערך של קוארדינאטה "x", העין שלו תזוז יחד עם הפנים.
  • 1:53 - 1:54
    בואו נעשה את השאר.
  • 1:54 - 2:01
    אז העין הימנית שלו מצויירת ב-300, אני יכולה לראות, אז כאן זה 300.
  • 2:01 - 2:05
    ואני יודעת ש-300 זה 100 יותר מ-200.
  • 2:05 - 2:10
    אם כך העין הימנית שלו תהיה איפה שהפרצוף ועוד 100.
  • 2:10 - 2:13
    שזה (x + 100)
  • 2:13 - 2:16
    עכשיו אנחנו פשוט נגדיר את הפה, שהוא צוייר ב-250.
  • 2:16 - 2:23
    שזה פה, יש לנו 250, ו-250 זה 200 ועוד 50.
  • 2:23 - 2:30
    אז זה הולך להיות איפה שהפרצוף ועוד 50 - (x + 50)
  • 2:30 - 2:37
    עכשיו אני הולכת להיפטר מהקשקושים האלו. מתי שאני אשנה את הערך של "x" זה מזיז את כל הפרצוף!
  • 2:39 - 2:43
    לפני שאתם יכולים ללכת, כדאי שתדעו עוד כמה דברים על משתנים.
  • 2:43 - 2:46
    ברגע שאתם יוצרים משתנה (var x)
  • 2:46 - 2:48
    אתם יכולים להכניס לו ערך כמה פעמים שתרצו.
  • 2:48 - 2:58
    אז אחרי שאתם נותנים ל-"x" את הערך 198, תוכלו להגיד ש-"x" מקבל 300 או "x" מקבל 150.
  • 2:58 - 3:04
    מאותו רגע והלאה המחשב ייתייחס ל-"x" בתור הערך האחרון שנתנו לו.
  • 3:04 - 3:06
    במקרה הזה, 150.
  • 3:06 - 3:08
    אבל אתם צריכים להדפיס את המילה var רק פעם אחת.
  • 3:08 - 3:15
    אם כאן הקלדתי (;var x = 150) במקום, זה היה מייצר משתנה חדש בשם "x".
  • 3:15 - 3:21
    לגמרי היה הורס את המשתנה הקודם "x" בתהליך, כך שכל המשתנים האלו היו הולכים לערימת הזבל.
  • 3:21 - 3:24
    ולאחר מכן המחשב היה משתמש רק במשתנה החדש.
  • 3:24 - 3:29
    לפעמים אתם יכולים לעשות דבר כזה מבלי שדברים נוראיים ייקרו, אבל אנחנו ממש לא היינו מייעצים לעשות את זה.
  • 3:29 - 3:32
    לעכשיו אני רק הולכת לעשות את זה פעם אחת (var x = 150).
  • 3:32 - 3:39
    ועכשיו אני יכולה להזיז בנוחות את ווינסטון בכל המסך, אז אני יכולה לדבר על הנקודה הבאה שלי.
  • 3:39 - 3:47
    אז מתי שיש לנו משתנה שווה משהו, המשתנה הזה יושב במקום בטוח.
  • 3:47 - 3:53
    למעשה, מצד שמאל של סימן השווה זה המקום היחיד שמשתנה יכול להרגיש בו כמו עצמו
  • 3:53 - 3:57
    מכיוון שזה המקום היחידי שהמחשב מסתכל עליו בתור משתנה.
  • 3:57 - 4:00
    בכל מקום אחר, המחשב רק מעמיד פנים שזה ערך.
  • 4:00 - 4:06
    אפילו אם אנחנו עושים משהו כזה var x = 10
  • 4:06 - 4:12
    ואז עושים x = x. ואוו, מבלבל.
  • 4:12 - 4:20
    בצד שמאל, יש לנו את x, שהוא משתנה חופשי ומאושר, אחד שיכול לגדול, שיכול להשתנות!
  • 4:20 - 4:25
    אבל בצד שמאל, זה רק 10.
  • 4:25 - 4:29
    כל כך עצוב :( אבל זה אומר שאנחנו יכולים לעשות דברים ממש מועילים כמו זה.
  • 4:29 - 4:34
    אני יכולה להגיד ש-x מקבלת x + 1
    (x = x + 1)
  • 4:34 - 4:43
    אז בצד שמאל יש לנו את המשתנה שלנו במקום שקט ובטוח, ומצד ימין יש לנו משתנה שבאופן בסיסי הוא רק מספר.
  • 4:43 - 4:44
    זה רק 10.
  • 4:44 - 4:47
    אז אנחנו יכולים להחליף את זה עם x מקבל עשר ועוד 1
  • 4:47 - 4:51
    מה שבסך הכל אומר ש-x מקבל 11.
  • 4:51 - 4:57
    אז כל השורה הזו בסך הכל אומרת ש-x מקבל 11, כך שמעתה והלאה הערך של x הוא 11.
  • 4:57 - 5:01
    בואו נראה מה קורה אם אנחנו מביאים עוד משתנה לתוך המשוואה.
  • 5:01 - 5:06
    אנחנו הולכים להגיד ש-x מקבל 10
    (;var x = 10)
  • 5:06 - 5:10
    var y מקבל 20
    (var y = 20)
  • 5:10 - 5:13
    x מקבל את y
    (x = y;)
  • 5:13 - 5:17
    ו-y מקבל 7
    (y = 7)
  • 5:17 - 5:21
    אוקיי, ומה שאני רוצה לדעת, זה מה הערך של x?
  • 5:21 - 5:24
    בואו ננסה להבין את זה
  • 5:24 - 5:29
    אז בסימן הזה כאן אנחנו יוצרים משתנה x, ונותנים לו את הערך 10.
  • 5:29 - 5:31
    כך שהערך של x הוא 10
  • 5:31 - 5:36
    ובסימן הזה אנחנו יוצרים משתנה חדש y ונותנים לו את הערך 20.
  • 5:36 - 5:39
    אז אנחנו לא עושים בינתיים כלום עם x, כך שהערך של x הוא עדיין 10.
  • 5:39 - 5:44
    וכאן אנחנו אומרים ש-x מקבל את y.
    זה די מבלבל, אבל אם חושבים על זה
  • 5:44 - 5:48
    אנחנו יודעים שרק אחד מהמשתנים האלו נמצא בצד הבטוח והמאושר שלו (צד שמאל).
  • 5:48 - 5:52
    והמשתנה השני שנמצא בצד ימין, מתייחסים אליו בתור מספר.
  • 5:53 - 6:00
    אז בעצם אנחנו יכולים להחליף בראש את "y" עם הערך שלו 29, ואנחנו יודעים שהסימן בעצם אומר
  • 6:00 - 6:05
    ש-x מקבל 20.
    אז הערך של "x" כאן הוא 20!
  • 6:05 - 6:10
    אז כאן יש לנו את "y" במקום הבטוח והמאושר שלו, אז זה לא כזה מבלבל
  • 6:10 - 6:13
    בגלל שבסך הכל יש לנו מספר בצד השני.
  • 6:13 - 6:21
    השאלה הגדולה היא, מתי שאני משנה את הערך של "y" כאן, האם זה משנה את הערך של "x" כאן למעלה?
  • 6:21 - 6:26
    התשובה היא לא!
  • 6:26 - 6:31
    אתם חייבים לזכור שכאן למעלה, "y" מקבל יחס כמו של מספר
  • 6:31 - 6:36
    המחשב הולך להתעלם לגמרי מהעובדה שזה משתנה, ייתעלם מהעובדה שהוא יכול להשתנות
  • 6:36 - 6:42
    והוא פשוט הולך להגיד ״או, y, מה שאתה בעצם מתכוון אליו זה 20״.
  • 6:42 - 6:49
    אז כאן, אנחנו פשוט נותנים ערך מספרי ל-"x", אנחנו לא נותנים משתנה למשתנה, אנחנו פשוט נותנים את הערך של ״y״, שהוא 20.
  • 6:49 - 6:59
    וזה אומר שהערך של "x" נשאר 20, אפילו לאחר ששינינו את הערך של ה-"y" הזה מהשורה האחרונה.
  • 6:59 - 7:03
    פו! הבנתם את זה?
    עכשיו אתם מומחי על במשתנים, מזל טוב!
Title:
עוד משתנים (גירסת הוידאו)
Description:

ניתן לצפות בסרטים נוספים בכתובת:
https://www.khanacademy.org/cs/programming/

more » « less
Video Language:
English
Duration:
07:10

Hebrew subtitles

Revisions