[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:01.87,0:00:03.82,Default,,0000,0000,0000,,הנה איפה שהפסקנו עם משחק הטלת המטבע שלנו. Dialogue: 0,0:00:03.82,0:00:06.60,Default,,0000,0000,0000,,התחלנו בכך שיצרנו מספר אקראי (רנדומלי) בין 0 ל-1, Dialogue: 0,0:00:06.60,0:00:08.88,Default,,0000,0000,0000,,ואז עיגלנו את המספר הזה למספר השלם הקרוב ביותר Dialogue: 0,0:00:08.88,0:00:12.21,Default,,0000,0000,0000,,כך שקיבלנו מספר שהוא או 0 או 1 Dialogue: 0,0:00:12.21,0:00:18.91,Default,,0000,0000,0000,,ואז ציירנו את המטבע הסופר אמיתי שלנו עם אליפסה שהייתה או סגולה או צהובה, תלוי באיזה מספר יצא. Dialogue: 0,0:00:18.91,0:00:20.99,Default,,0000,0000,0000,,והנה הקוד שאיתו עשינו את זה. Dialogue: 0,0:00:20.99,0:00:25.82,Default,,0000,0000,0000,,אז אמרנו שאם המספר השלם (ה-integer), שווה ל-0, אז נמלא את האליפסה בצבע סגול, אחרת, נמלא אותה בצהוב. Dialogue: 0,0:00:25.82,0:00:27.92,Default,,0000,0000,0000,,ואז ציירנו את המטבע כאן למטה. Dialogue: 0,0:00:27.92,0:00:32.46,Default,,0000,0000,0000,,אבל עכשיו החלטתי שלמעשה למטבע שלי יש 3 צדדים. כן, מטבע עם שלושה צדדים. Dialogue: 0,0:00:32.46,0:00:34.19,Default,,0000,0000,0000,,אז בואו נוסיף צד שלישי. Dialogue: 0,0:00:34.19,0:00:37.11,Default,,0000,0000,0000,,אני הולכת להתחיל ביצירת מספר בין 0 ל-2, Dialogue: 0,0:00:37.11,0:00:41.53,Default,,0000,0000,0000,,ואחרי שנעגל אותו, נקבל מספר שלם שהוא או 0,1 או 2 Dialogue: 0,0:00:41.53,0:00:45.61,Default,,0000,0000,0000,,אבל אם נסתכל על הקוד שלנו שמצייר, אנחנו מוכנים רק לשני מקרים. Dialogue: 0,0:00:45.61,0:00:48.82,Default,,0000,0000,0000,,אם integer הוא 0, המטבע סגול, אחרת, הוא צהוב. Dialogue: 0,0:00:48.82,0:00:51.88,Default,,0000,0000,0000,,אבל עכשיו, ה״אחרת״ יכול להיות גם 1 או 2. Dialogue: 0,0:00:51.88,0:00:54.93,Default,,0000,0000,0000,,אבל רגע, מה אם אני אעשה את מה שעשינו כבר קודם Dialogue: 0,0:00:54.93,0:00:57.40,Default,,0000,0000,0000,,בתוך הבלוק הזה של ה-else. אני פשוט אגיד: Dialogue: 0,0:00:57.40,0:01:04.93,Default,,0000,0000,0000,,אם integer שווה ל-1 אז צבע המילוי צריך להיות צהוב, כמו מקודם, Dialogue: 0,0:01:04.93,0:01:11.40,Default,,0000,0000,0000,,אחרת (else), צבע המילוי יהיה אדום. אדום זה טוב. Dialogue: 0,0:01:11.40,0:01:15.48,Default,,0000,0000,0000,,אז מה שזה אומר, שאם integer שווה ל-0, הצבע יהיה סגול, Dialogue: 0,0:01:15.48,0:01:18.98,Default,,0000,0000,0000,,אחרת, אם זה 1, הצבע יהיה צהוב, Dialogue: 0,0:01:18.98,0:01:24.61,Default,,0000,0000,0000,,אחרת, זאת אומרת, אם זה לא 0 וזה לא 1, זה חייב להיות 2, תעשה אותו אדום. Dialogue: 0,0:01:24.61,0:01:28.57,Default,,0000,0000,0000,,אני אלחץ אתחול כמה פעמים. זה עובד! ווהוו! Dialogue: 0,0:01:28.57,0:01:31.54,Default,,0000,0000,0000,,אז אם הייתי רוצה להוסיף עוד צדדים למטבע שלי, Dialogue: 0,0:01:31.54,0:01:37.99,Default,,0000,0000,0000,,יכולתי ללכת לכאן למעלה, לעשות את זה 0 עד 3, ואז להיכנס עמוק יותר לבלוק ה-else ולהוסיף עוד if-else-ים עוד ועוד Dialogue: 0,0:01:37.99,0:01:40.16,Default,,0000,0000,0000,,עד שיהיו לי זיליון בלוקים מיושרים אחד אחרי השני. Dialogue: 0,0:01:40.16,0:01:44.70,Default,,0000,0000,0000,,ורק אז אני אבין שהקוד הזה מזעזע! די דוחה! Dialogue: 0,0:01:44.70,0:01:48.35,Default,,0000,0000,0000,,קוד אמור להיות קל לקריאה ויפה, לא מכוער ומסובך. Dialogue: 0,0:01:48.35,0:01:50.07,Default,,0000,0000,0000,,אז הנה מה שאנחנו הולכים לעשות: Dialogue: 0,0:01:50.07,0:01:55.68,Default,,0000,0000,0000,,בכל פעם שיש לכם רק הצהרת if אחת או הצהרת if-else בתוך בלוק של else, Dialogue: 0,0:01:55.68,0:01:58.31,Default,,0000,0000,0000,,זה אומר שאנחנו לא עושים משהו אחר מעבר לבלוק הזה, Dialogue: 0,0:01:58.31,0:02:04.49,Default,,0000,0000,0000,,אנחנו לא משנים את צבע קו המתאר, אין לנו עוד הצהרות if, כלום. Dialogue: 0,0:02:04.49,0:02:08.44,Default,,0000,0000,0000,,כל מה שיש לנו הוא הצהרת ה-if היחידה הזו, ואולי היא באה עם בלוק של else Dialogue: 0,0:02:08.44,0:02:13.16,Default,,0000,0000,0000,,אז אנחנו יכולים לשלב את התנאי הזה עם השורה לפני ולהגיד: Dialogue: 0,0:02:13.16,0:02:17.07,Default,,0000,0000,0000,,else if integer = 1 אז תשנה את הצבע לצהוב. Dialogue: 0,0:02:17.07,0:02:21.94,Default,,0000,0000,0000,,ואז בלוק ה-else האחרון הזה לא צריך להיות מיושר פנימה יותר, הוא פשוט מגיע בסוף בעצמו. Dialogue: 0,0:02:21.94,0:02:27.07,Default,,0000,0000,0000,,נהדר! אז עכשיו מה שזה אומר זה שאם integer שווה ל-0, הצבע יהיה סגול, Dialogue: 0,0:02:27.07,0:02:30.24,Default,,0000,0000,0000,,אחרת אם integer שווה ל-1, הצבע יהיה צהוב, Dialogue: 0,0:02:30.24,0:02:34.48,Default,,0000,0000,0000,,אחרת, אם שני אלו הם שקר, הצבע יהיה אדום. Dialogue: 0,0:02:34.48,0:02:37.74,Default,,0000,0000,0000,,אני לוחצת על אתחול כמה פעמים ואתם רואים שזה עדיין עובד. Dialogue: 0,0:02:37.74,0:02:41.82,Default,,0000,0000,0000,,נהדר! והדבר המגניב ביותר בזה הוא שיכולים להיות להיות כמה משפטי else-if שאנחנו רוצים, Dialogue: 0,0:02:41.82,0:02:44.70,Default,,0000,0000,0000,,מה שעושה את זה ממש קל להוסיף עוד צדדים למטבע שלי. Dialogue: 0,0:02:44.70,0:02:48.01,Default,,0000,0000,0000,,אז בואו נעשה את זה עכשיו, אני הולכת לייצר מספר בין 0 ל-3, Dialogue: 0,0:02:48.01,0:02:56.06,Default,,0000,0000,0000,,ואז להוסיף עוד בלוק else שאומר שאם integer שווה ל-2 Dialogue: 0,0:02:56.14,0:02:59.66,Default,,0000,0000,0000,,נעשה את צבע המילוי אדום, Dialogue: 0,0:02:59.66,0:03:02.66,Default,,0000,0000,0000,,ואז בלוק ה-else האחרון הזה יהיה למקרה ש-integer שווה ל-3, Dialogue: 0,0:03:02.66,0:03:08.97,Default,,0000,0000,0000,,ונעשה את זה כחול. נהדר! Dialogue: 0,0:03:08.97,0:03:12.82,Default,,0000,0000,0000,,אוקיי, אז בשביל לעשות את זה, אתם תמיד צריכים להתחיל עם הצהרת if, Dialogue: 0,0:03:12.82,0:03:16.91,Default,,0000,0000,0000,,ואז אתם יכולים לשים כמה הצהרות else-if שתרצו, Dialogue: 0,0:03:16.91,0:03:18.70,Default,,0000,0000,0000,,ואז הבלוק האחרון הזה פה הוא אופציונאלי. Dialogue: 0,0:03:18.70,0:03:21.90,Default,,0000,0000,0000,,למעשה אנחנו יכולים להסתדר בלעדיו, וזה אפשרי שכל אלו יהיו שקר, Dialogue: 0,0:03:21.90,0:03:23.72,Default,,0000,0000,0000,,כך שאף אחד מהבלוקים הללו לא ייתבצע. Dialogue: 0,0:03:23.72,0:03:30.48,Default,,0000,0000,0000,,אבל כל עוד יש לנו אותו שם, אז בטוח שאחד מהבלוקים האלו ירוץ. Dialogue: 0,0:03:30.48,0:03:37.02,Default,,0000,0000,0000,,מגניב? עכשיו זה מקרה שבו לא ממש משנה אם תכתוב f else-if else-if else Dialogue: 0,0:03:37.02,0:03:45.51,Default,,0000,0000,0000,,או שפשוט תכתבו הצהרות if כמו שעשינו בהתחלה, כמו למשל אם integer שווה ל-3. Dialogue: 0,0:03:45.51,0:03:50.73,Default,,0000,0000,0000,,וזה בגלל שזה לעולם לא אפשרי למספר שלם להיות שווה גם ל-0 וגם ל-1,2,3. Dialogue: 0,0:03:50.73,0:03:54.22,Default,,0000,0000,0000,,נהדר. אז התנאים האלו סותרים. Dialogue: 0,0:03:54.22,0:03:56.61,Default,,0000,0000,0000,,זאת אומרת שרק אחד מהבלוקים האלו ירוץ אי פעם. Dialogue: 0,0:03:56.61,0:03:58.28,Default,,0000,0000,0000,,אבל זה לא תמיד המקרה. Dialogue: 0,0:03:58.28,0:04:01.64,Default,,0000,0000,0000,,מה אם היינו עושים משחק מבלי לעגל את המספר העשרוני למספר שלם? Dialogue: 0,0:04:01.64,0:04:04.48,Default,,0000,0000,0000,,אז אני אפטר מהחלק שבו אנו מעגלים את המספר, Dialogue: 0,0:04:04.48,0:04:06.64,Default,,0000,0000,0000,,והחלק בו אנחנו מציירים את זה למסך Dialogue: 0,0:04:06.64,0:04:09.28,Default,,0000,0000,0000,,ובואו נמציא כמה חוקים חדשים למשחק שלי. Dialogue: 0,0:04:09.28,0:04:12.64,Default,,0000,0000,0000,,אז אני עדיין מייצרת מספר בין 0 ל-3, Dialogue: 0,0:04:12.64,0:04:15.32,Default,,0000,0000,0000,,בואו נשים כמה סמנים על הקו שלנו, Dialogue: 0,0:04:15.32,0:04:23.38,Default,,0000,0000,0000,,אז בואו נגיד שאם המספר בין 0 ל-1, הצבע יהיה סגול. Dialogue: 0,0:04:23.38,0:04:26.15,Default,,0000,0000,0000,,אוקיי, זה סגול. Dialogue: 0,0:04:26.15,0:04:30.50,Default,,0000,0000,0000,,ואז אם זה בין 1 ל-2, אנחנו נעשה את זה צהוב. Dialogue: 0,0:04:30.50,0:04:35.53,Default,,0000,0000,0000,,ואם זה בין 2 ל-3, נעשה את זה אדום. Dialogue: 0,0:04:35.53,0:04:38.65,Default,,0000,0000,0000,,נהדר. אז בואו נראה מה אנחנו יכולים לעשות עם if ו-else-if. Dialogue: 0,0:04:38.65,0:04:43.54,Default,,0000,0000,0000,,אז אני אתחיל בלהגיד שאם המספר קטן מ-1, Dialogue: 0,0:04:43.54,0:04:51.44,Default,,0000,0000,0000,,אז אם זה פחות מ-1, ואני יודעת שזה בין 0 ל-3, אז זה חייב להיות בטווח הזה. Dialogue: 0,0:04:51.44,0:04:54.16,Default,,0000,0000,0000,,אז אני אגדיר את צבע המילוי לסגול. Dialogue: 0,0:04:54.16,0:05:06.70,Default,,0000,0000,0000,,אחרת, אם המספר הוא קטן מ-2, אני אגדיר את צבע המילוי לצהוב... Dialogue: 0,0:05:06.70,0:05:13.26,Default,,0000,0000,0000,,ואחרת, אני אגדיר את צבע המילוי לאדום Dialogue: 0,0:05:13.26,0:05:15.60,Default,,0000,0000,0000,,נהדר! וזה עובד בדיוק כמו שתיכננתי. Dialogue: 0,0:05:15.60,0:05:19.31,Default,,0000,0000,0000,,אז אם המספר קטן מ-1, שוב, זה בטווח הזה. Dialogue: 0,0:05:19.31,0:05:23.60,Default,,0000,0000,0000,,אחרת, זה גדול או שווה ל-1, אבל זה גם קטן מ-2 Dialogue: 0,0:05:23.60,0:05:26.73,Default,,0000,0000,0000,,אז זה אומר שזה בטווח הזה, אז הצבע יהיה צהוב. Dialogue: 0,0:05:26.73,0:05:31.90,Default,,0000,0000,0000,,אחרת, זה חייב להיות גדול או שווה מ-2 ולהיות בטווח הזה, Dialogue: 0,0:05:31.90,0:05:36.28,Default,,0000,0000,0000,,והנה מקרה שלא יכולנו להגיד אם המספר קטן מ-2 Dialogue: 0,0:05:36.28,0:05:39.65,Default,,0000,0000,0000,,ואם המספר קטן מ-3, Dialogue: 0,0:05:39.65,0:05:42.93,Default,,0000,0000,0000,,מכיוון שאם המספר קטן מ-1, הוא בהחלט קטן מ-2 Dialogue: 0,0:05:42.93,0:05:44.90,Default,,0000,0000,0000,,והוא גם בהחלט קטן מ-3 Dialogue: 0,0:05:44.90,0:05:46.78,Default,,0000,0000,0000,,אז צבע המטבע שלנו יהיה אדום. Dialogue: 0,0:05:46.78,0:05:50.78,Default,,0000,0000,0000,,ולכן במקרה הזה, מאוד מועיל להשתמש ב-else-if.