1 00:00:00,000 --> 00:00:02,418 >> [השמעת מוסיקה] 2 00:00:02,418 --> 00:00:10,542 3 00:00:10,542 --> 00:00:12,000 אליסון BUCHHOLTZ-AU: היי לכולם. 4 00:00:12,000 --> 00:00:15,640 ברוכים הבאים לך הראשון סעיף CS50 רשמי. 5 00:00:15,640 --> 00:00:19,507 כפי שאתה, יכול לראות את זה הוא CS50-כמו סעיף, רק 6 00:00:19,507 --> 00:00:20,840 כדי למשוך את סדר היום שלנו להיום. 7 00:00:20,840 --> 00:00:23,990 אז, מי אני, כפי שאני בטוח שכולכם תוהה. 8 00:00:23,990 --> 00:00:25,514 אני TF שלך. 9 00:00:25,514 --> 00:00:27,930 אני לא רק תלמיד אקראי מי מתחזה TF שלך. 10 00:00:27,930 --> 00:00:31,190 >> ואני הולך לעבור סוג של יש קטעים יזרמו, 11 00:00:31,190 --> 00:00:34,900 ציפיות שיש לנו, משאבים, כך הלאה וכך הלאה. 12 00:00:34,900 --> 00:00:39,190 אנחנו הולכים לדבר על מערכים, ASCII פונקציות, פקודות בשורת הפקודה, 13 00:00:39,190 --> 00:00:42,020 וזה לא כאן, אבל אני גם יהיה לעזור 14 00:00:42,020 --> 00:00:45,054 אתה סוג של חושב דרך pset הבא שלך לשבוע הזה. 15 00:00:45,054 --> 00:00:46,720 שבו אני בטוח שכולכם יעריך. 16 00:00:46,720 --> 00:00:48,190 17 00:00:48,190 --> 00:00:53,390 >> אז, question-- הראשון שאני, מלבד TF שלך השופע כאן. 18 00:00:53,390 --> 00:00:55,390 אני אליסון Buchholtz-Au. 19 00:00:55,390 --> 00:00:57,970 זו השנה השנייה שלי TFing CS50. 20 00:00:57,970 --> 00:01:00,570 אני גם CS51 TF באביב. 21 00:01:00,570 --> 00:01:03,930 ייתכן שתראה שוב יש אם אתה מחליט לקחת את זה. 22 00:01:03,930 --> 00:01:07,370 אני גם PAF, ולכן כל Freshmen-- ואם אתה לא בכיתה ט ', 23 00:01:07,370 --> 00:01:09,980 זו השנה השלישית שלי כבחור ייעוץ. 24 00:01:09,980 --> 00:01:13,630 אני בקיא מאוד ב מייעץ לך על חיים ועל קורסים 25 00:01:13,630 --> 00:01:16,549 בתוך CS ולא בתוך CS. 26 00:01:16,549 --> 00:01:18,090 אני מדעי מחשב מרוכז. 27 00:01:18,090 --> 00:01:20,800 אני בכיר באדמס הבית, הבית הטוב ביותר. 28 00:01:20,800 --> 00:01:22,430 29 00:01:22,430 --> 00:01:26,050 ולפני שעברתי ל CS שלי הכיתה י האביב, 30 00:01:26,050 --> 00:01:27,640 למעשה הייתי מהנדס ביו-רפואי. 31 00:01:27,640 --> 00:01:29,020 אני הולך ללכת לבית הספר Med. 32 00:01:29,020 --> 00:01:30,530 אני הולך להיות מנתח טראומה. 33 00:01:30,530 --> 00:01:33,000 ושיש לו לחלוטין השתנה מאז שלקחתי CS50. 34 00:01:33,000 --> 00:01:34,250 35 00:01:34,250 --> 00:01:36,310 לקחתי את הקורס סתיו כיתת י 'שלי. 36 00:01:36,310 --> 00:01:38,920 הייתה זו הפעם הראשונה שלי לCS אי פעם. 37 00:01:38,920 --> 00:01:44,104 אני היה אחד מ78% מכם ש היה אפס ניסיון מגיע, 38 00:01:44,104 --> 00:01:45,520 וזה שינה לחלוטין את חיי. 39 00:01:45,520 --> 00:01:49,820 ועכשיו אני עובד ב מיקרוסופט, וTF היפה שלך. 40 00:01:49,820 --> 00:01:53,500 וCS50 הוא כנראה אחד מהחוויות הטובות ביותר 41 00:01:53,500 --> 00:01:56,210 שהיה לי כאן ב Harvard-- שני לוקחים את הכיתה 42 00:01:56,210 --> 00:01:59,040 ולהיות מסוגל לעזור ללמד את התלמידים כמוך. 43 00:01:59,040 --> 00:02:01,410 >> אז אני ממש מתרגש שכולכם כאן. 44 00:02:01,410 --> 00:02:04,270 במקרה שאתה בא ב מאוחר, יש ממתקים, 45 00:02:04,270 --> 00:02:07,227 שבו אתה צריך להרגיש חופשי לבוא לתפוס, או לשלוח 46 00:02:07,227 --> 00:02:08,560 מישהו אחר כדי לתפוס אותו בשבילך. 47 00:02:08,560 --> 00:02:09,399 זה בסדר. 48 00:02:09,399 --> 00:02:10,440 אני לא רוצה לאכול את זה. 49 00:02:10,440 --> 00:02:13,350 החדר שלי מספיק שוקולד, כל כך כולכם צריך לנסות ולסיים את זה. 50 00:02:13,350 --> 00:02:16,730 אני יודע שיש 100 חתיכות, אבל כמו, 04:00 ביום שני, 51 00:02:16,730 --> 00:02:19,000 אני חושב שכולם יכול להשתמש בחלק הסוכר. 52 00:02:19,000 --> 00:02:21,750 >> אז כל מי שאתה באופן רשמי בסעיף שלי 53 00:02:21,750 --> 00:02:24,700 צריך קיבל בדוא"ל ממני עם מספר הטלפון שלי, 54 00:02:24,700 --> 00:02:29,920 הדוא"ל address-- מוזמן להוסיף אותי ב Gchat כלשהו, ​​אל תהסס להוסיף אותי בפייסבוק, 55 00:02:29,920 --> 00:02:33,360 וגם לכולכם, אתה יכול לשלוח לי כאן. 56 00:02:33,360 --> 00:02:34,450 ישנם שני H של. 57 00:02:34,450 --> 00:02:37,090 כולם תמיד עושה כמו שני L's או שתיים של C. 58 00:02:37,090 --> 00:02:38,260 שני H של בשם המשפחה. 59 00:02:38,260 --> 00:02:41,800 אחרת זה הולך להקפיץ, ו אני לא הולך לקבל את הדואר האלקטרוני שלך. 60 00:02:41,800 --> 00:02:46,400 >> אז תרגיש חופשי לשלוח לי, ליצור איתי קשר בכל עת. 61 00:02:46,400 --> 00:02:51,440 אני לא יכול לחזור ל שלך תוך 24 דקות, 62 00:02:51,440 --> 00:02:53,760 אבל אני מבטיח לחזור אליך תוך 24 שעות. 63 00:02:53,760 --> 00:02:54,900 64 00:02:54,900 --> 00:02:58,067 אם אתה קורא לי חצי שעה לפני pset שלך נובע, אתה להיות כמו, 65 00:02:58,067 --> 00:02:59,650 אין לי מושג מה אני עושה אליסון. 66 00:02:59,650 --> 00:03:00,160 עזור לי. 67 00:03:00,160 --> 00:03:04,049 אני הולך להרגיע אותך, אבל בסופו של היום, 68 00:03:04,049 --> 00:03:07,340 אם אתה קורא לי חצי שעה לפני pset שלך נובע עם שום דבר שנכתב, 69 00:03:07,340 --> 00:03:11,570 אני הולך להיות כמו, כן, אולי זה זמן להשתמש באותו יום מאוחר. 70 00:03:11,570 --> 00:03:15,215 אז אני אענה לכולכם בקשות במאוד מועד. 71 00:03:15,215 --> 00:03:16,482 72 00:03:16,482 --> 00:03:18,190 הטלפון שלי הוא בדרך כלל אוחז ביד שלי. 73 00:03:18,190 --> 00:03:21,530 אני בדרך כלל מגיב הרבה מהר יותר מאשר 24 שעות, 74 00:03:21,530 --> 00:03:25,650 אבל אני יכול רק להבטיח תגובת 24 שעות ביממה. 75 00:03:25,650 --> 00:03:26,580 >> בְּסֵדֶר. 76 00:03:26,580 --> 00:03:28,410 אז למה אנחנו כאן? 77 00:03:28,410 --> 00:03:32,160 כמו כן, אם יש לך שאלות ב כל עת, בבקשה ליידע אותי. 78 00:03:32,160 --> 00:03:32,780 אני מדבר הרבה. 79 00:03:32,780 --> 00:03:35,320 אני מדבר מהר, אבל בבקשה תרגיש חופשי להפריע לי. 80 00:03:35,320 --> 00:03:36,980 זה נותן לי לנשום חדר גם כן. 81 00:03:36,980 --> 00:03:38,159 82 00:03:38,159 --> 00:03:40,200 אז חלקים הם זמן לנו באמת רק צלילה 83 00:03:40,200 --> 00:03:44,270 ב, לקבל קצת ניסיון מעשי, ל לעבור נושאים שהזכרנו 84 00:03:44,270 --> 00:03:49,760 בכיתה או בחומרי לימוד ש אנו ממליצים לך בחורים באינטרנט. 85 00:03:49,760 --> 00:03:52,980 ואנחנו באמת נלך דרך חלק מאותם משאבים בקצת. 86 00:03:52,980 --> 00:03:54,300 87 00:03:54,300 --> 00:03:57,400 >> אז כמה הערות על תמיכת סעיף. 88 00:03:57,400 --> 00:04:00,250 CS50-- אחד מהדברים שגורם לי זה אחד השיעורים האהובים עליי 89 00:04:00,250 --> 00:04:02,510 התחושה היא שאתה אף פעם לא לבד. 90 00:04:02,510 --> 00:04:05,430 יש לנו צוות של מעל 100 אנשים שנמצאים כאן כדי לעזור לך. 91 00:04:05,430 --> 00:04:08,080 יש לנו שעתי עבודה הימים שני עד חמישי. 92 00:04:08,080 --> 00:04:13,230 אז יש כל כך הרבה אנשים ש אוהב את הכיתה בדיוק כמו שאני עושה 93 00:04:13,230 --> 00:04:15,750 ומי באמת כאן כי הם רוצים להיות כאן. 94 00:04:15,750 --> 00:04:19,390 רובנו הסטודנטים, וזה זה כמו בכיתה החמישית בתוספת 95 00:04:19,390 --> 00:04:20,390 לשאר העבודה שלנו. 96 00:04:20,390 --> 00:04:22,723 >> וזה הרבה עבודה, אבל אנחנו עושים את זה כי אנחנו אוהבים את זה, 97 00:04:22,723 --> 00:04:25,600 ואנחנו באמת אוהבים ללמד אותך ולעזור לחלוק את ההתרגשות שלנו 98 00:04:25,600 --> 00:04:27,260 לנושא זה וזה בכיתה. 99 00:04:27,260 --> 00:04:28,490 אז בבקשה לנצל. 100 00:04:28,490 --> 00:04:29,370 בואו לדבר איתנו. 101 00:04:29,370 --> 00:04:33,034 אני ארגיש בודד כאשר התלמידים שלי לא מדבר אליי, כך שאם אתה רוצה, 102 00:04:33,034 --> 00:04:33,950 לבוא לבלות איתי. 103 00:04:33,950 --> 00:04:35,200 זה יהיה נהדר. 104 00:04:35,200 --> 00:04:37,400 >> אז קטע הוא ללא ספק אחד הדברים הכי גדולים שלך. 105 00:04:37,400 --> 00:04:41,770 אנחנו נלך דרך דברים שלמדת בהרצאה, 106 00:04:41,770 --> 00:04:44,100 לעשות כמה דוגמאות קצרות כאשר יש לנו זמן, 107 00:04:44,100 --> 00:04:46,187 ובאופן כללי סוג של לקבל מושג על דברים 108 00:04:46,187 --> 00:04:48,270 אתה צריך לחשוב על ללהגדיר את הבעיה שלך. 109 00:04:48,270 --> 00:04:49,540 110 00:04:49,540 --> 00:04:53,591 Shorts-- כמה אנשים באמת צפה בוידאו מההתחלה שלך 111 00:04:53,591 --> 00:04:54,090 קצר? 112 00:04:54,090 --> 00:04:55,460 113 00:04:55,460 --> 00:04:57,390 כל אחד מכיר אותי? 114 00:04:57,390 --> 00:04:59,720 אז אלה הם גדולים מאוד. 115 00:04:59,720 --> 00:05:01,210 אתה בהחלט צריך לצפות אותם. 116 00:05:01,210 --> 00:05:02,880 הרבה עבודה כבר הכניס לתוכם. 117 00:05:02,880 --> 00:05:06,690 והם נועדו רק כדי להיות בגודל ביס חתיכות כדי שתוכלו רק לצפות 118 00:05:06,690 --> 00:05:09,760 במשך שלוש או ארבע דקות ולקבל הבנה טובה יותר של מושג. 119 00:05:09,760 --> 00:05:11,147 120 00:05:11,147 --> 00:05:12,980 ללכת throughs-- איך אנשים רבים צופים ראו 121 00:05:12,980 --> 00:05:14,880 הנחיות המפורטות לקודמיו? 122 00:05:14,880 --> 00:05:16,240 Zamyla מדהים, נכון? 123 00:05:16,240 --> 00:05:18,100 כמו, הלוואי שהייתי Zamyla לפעמים. 124 00:05:18,100 --> 00:05:19,650 125 00:05:19,650 --> 00:05:21,640 אז בהחלט להשתמש ההנחיות המפורטות לך. 126 00:05:21,640 --> 00:05:25,070 היא תהיה לשבור אותו ל חתיכות בגודל ביס קטן,. 127 00:05:25,070 --> 00:05:28,079 וכאשר יש לך ענק אלה מפרטים מסטי הבעיה שלך, 128 00:05:28,079 --> 00:05:30,870 זה הולך להיות ממש חשוב כדי להיות מסוגל רק כדי למצוא מקום 129 00:05:30,870 --> 00:05:32,600 כדי להתחיל ולעבוד לאט דרכו. 130 00:05:32,600 --> 00:05:33,610 131 00:05:33,610 --> 00:05:40,260 >> בסדר, יש לנו גם Study50, ש הוא study50.harvard.edu, אני מאמין. 132 00:05:40,260 --> 00:05:42,270 אתה יכול רק גוגל ללמוד, ויבוא אותו. 133 00:05:42,270 --> 00:05:45,750 זהו אחד המשאבים הטובים ביותר שיש לנו. 134 00:05:45,750 --> 00:05:49,800 זה PowerPoints עם הערות ולתרגל בעיות בשבילך 135 00:05:49,800 --> 00:05:52,430 עם פתרונות שאתה למעשה יכול ללכת דרך. 136 00:05:52,430 --> 00:05:57,000 אז אם אי פעם אתה רוצה יותר בפועל, יותר מאיתנו בסעיפים או יותר 137 00:05:57,000 --> 00:06:00,700 מ סטי הבעיה שלך, זה הוא באמת מקום שאני ממליץ לך ללכת. 138 00:06:00,700 --> 00:06:03,590 הוא נבנה בקיץ שעבר על ידי כמה מהחברים שלי ממש טובים. 139 00:06:03,590 --> 00:06:04,480 וזה מדהים. 140 00:06:04,480 --> 00:06:05,540 141 00:06:05,540 --> 00:06:08,670 למעשה, הרבה שקופיות שאני אהיה באמצעות לסעיף 142 00:06:08,670 --> 00:06:10,190 יבוא מStudy50. 143 00:06:10,190 --> 00:06:12,000 >> כל כך הרבה TFS להשתמש בו. 144 00:06:12,000 --> 00:06:13,920 ולבסוף, כפי ש כאמור, שעתי עבודה. 145 00:06:13,920 --> 00:06:15,836 אם אתה נתקלת בבעיה בהכנת שיעורי בית, אתה 146 00:06:15,836 --> 00:06:18,270 נתקל בבעיה עם רעיון, לבוא לשעתי עבודה. 147 00:06:18,270 --> 00:06:20,190 ללכת בתחילת השבוע אם אתה יכול. 148 00:06:20,190 --> 00:06:23,130 צא למרובע, כי זה סוג של רחוק. 149 00:06:23,130 --> 00:06:24,780 אף אחד לא אוהב ללכת לשם. 150 00:06:24,780 --> 00:06:27,090 אבל זה לטובתך, כי אז אתה 151 00:06:27,090 --> 00:06:29,580 הולך להיות כל TFS אלה, [לא ברור] מקיף אותך. 152 00:06:29,580 --> 00:06:31,920 ובמיוחד עכשיו, רק טיפ, ימי חמישי 153 00:06:31,920 --> 00:06:35,310 הם קרים מאוד עכשיו ב ר כי psets שלך 154 00:06:35,310 --> 00:06:36,577 נובעים בימי חמישי. 155 00:06:36,577 --> 00:06:38,410 ולדעת רוצה משתמש בימים שלך מאוחר עדיין. 156 00:06:38,410 --> 00:06:40,030 >> אז אם יש לך בעיה עם מושגים, 157 00:06:40,030 --> 00:06:41,780 יש הרבה TFS ש הם שם כדי לעזור לך. 158 00:06:41,780 --> 00:06:43,196 אז יצא לMather ביום חמישי. 159 00:06:43,196 --> 00:06:45,280 אם אתה רוצה לראות אותי, אני הולך להיות שם. 160 00:06:45,280 --> 00:06:48,870 אני בדרך כלל אני עושה את שיעורי הבית שלי, כי אף אחד לא רוצה את העזרה שלי. 161 00:06:48,870 --> 00:06:50,260 אז בואו לראות אותנו. 162 00:06:50,260 --> 00:06:51,460 163 00:06:51,460 --> 00:06:52,440 >> לקראתנו. 164 00:06:52,440 --> 00:06:55,400 אז כמה אנשים השתתפו ב הרצאות או צפה בו באינטרנט? 165 00:06:55,400 --> 00:06:56,570 166 00:06:56,570 --> 00:06:59,140 כמה אנשים הלכו ל סעיף סופר בשבוע שעבר? 167 00:06:59,140 --> 00:07:00,171 168 00:07:00,171 --> 00:07:00,670 מגניב. 169 00:07:00,670 --> 00:07:02,190 זה בעצם מספר הוגן. 170 00:07:02,190 --> 00:07:05,425 כמה מכם קראו spec להשבוע, לpset שלך? 171 00:07:05,425 --> 00:07:07,081 172 00:07:07,081 --> 00:07:08,461 אוו, אני גאה בך חבר 'ה! 173 00:07:08,461 --> 00:07:09,335 יותר סוכריות לכולכם. 174 00:07:09,335 --> 00:07:11,070 175 00:07:11,070 --> 00:07:13,280 >> טוב, אז מה אנחנו אומר "לקראתנו," הוא 176 00:07:13,280 --> 00:07:16,440 הסעיף שהוא באמת רק הולך להיות סופר שימושי לך 177 00:07:16,440 --> 00:07:19,810 אם אתה בא שבקראת שלך מפרט pset שלך. 178 00:07:19,810 --> 00:07:23,859 כי כשאני עובר סקירה של דברים שאתה צריך להסתכל החוצה, 179 00:07:23,859 --> 00:07:25,650 זה לא הולך לעשות כמה שיותר הגיוני אם אתה 180 00:07:25,650 --> 00:07:28,358 לא יודע מה להגדיר את הבעיה שלך הולך להיות מבקשת ממך לעשות. 181 00:07:28,358 --> 00:07:29,020 182 00:07:29,020 --> 00:07:32,590 >> אם אתה לא בא לסעיף, ללא ספק אני לא יכול להיות שכדאי לך. 183 00:07:32,590 --> 00:07:36,600 אני לא הולך לקחת את זה באופן אישי אם אתה לא בא לחלק שלי עכשיו, 184 00:07:36,600 --> 00:07:38,570 אבל אתה בהחלט צריך. 185 00:07:38,570 --> 00:07:40,090 אם אתה לא יכול, לצפות בם באינטרנט. 186 00:07:40,090 --> 00:07:41,230 187 00:07:41,230 --> 00:07:42,519 הם שם מסיבה. 188 00:07:42,519 --> 00:07:43,560 שלי יהיה שם. 189 00:07:43,560 --> 00:07:44,187 190 00:07:44,187 --> 00:07:47,270 כפי שאתה שם לב, אנחנו מקליטים, כך זה יהיה ממש שם בשבילכם. 191 00:07:47,270 --> 00:07:49,110 192 00:07:49,110 --> 00:07:51,570 כמו גם, הולך lectures-- זה ברור 193 00:07:51,570 --> 00:07:53,790 שבו אתה מקבל את תתחיל מהחומר שלך כאן. 194 00:07:53,790 --> 00:07:57,430 אז בהחלט אני אנסה לעזור לך כמה שאני יכול, 195 00:07:57,430 --> 00:07:58,840 אבל אני יכול רק לפגוש אותך כל כך רחוק. 196 00:07:58,840 --> 00:08:01,220 יש לך לסוג של לפגוש אותנו באמצע דרך. 197 00:08:01,220 --> 00:08:04,050 >> Grading-- כך, כולכם שקיבל מייל ממני, 198 00:08:04,050 --> 00:08:05,445 אתה החלק הרשמי שלי. 199 00:08:05,445 --> 00:08:06,470 200 00:08:06,470 --> 00:08:08,120 אני אהיה לדירוג psets שלך. 201 00:08:08,120 --> 00:08:12,870 ואני רק רוצה לומר, דבר יחיד ש אתה באמת צריך לשים לב ל 202 00:08:12,870 --> 00:08:13,820 הן ההערות. 203 00:08:13,820 --> 00:08:17,390 לעתים קרובות ההערות שימושיות יותר מהציון בפועל אנחנו נותנים לכם. 204 00:08:17,390 --> 00:08:19,890 והדברים הם למעשה שבו אני מבלה הרבה מהזמן שלי 205 00:08:19,890 --> 00:08:20,770 כשאני דירוג. 206 00:08:20,770 --> 00:08:22,700 אז אני אעריך זה אם אתה קורא אותם. 207 00:08:22,700 --> 00:08:26,990 והם בעצם איך אתה הולך כדי ללמוד עוד על עיצוב וסגנון 208 00:08:26,990 --> 00:08:29,860 ודברים שהם פחות חתך קטן ויבש. 209 00:08:29,860 --> 00:08:31,770 >> אז באמת לשים לב להערות אלה. 210 00:08:31,770 --> 00:08:34,720 אם יש לך שאלות לגביהם, או שאלות על הציון שלך, 211 00:08:34,720 --> 00:08:37,620 בבקשה לבוא לדבר איתי בין לפני הסעיף, 212 00:08:37,620 --> 00:08:41,039 אני כנראה תהיה בחוץ בלובי, או לאחר מכן. 213 00:08:41,039 --> 00:08:43,559 אם אתה רוצה לתזמן אחד-על-אחד מפגשים על איך 214 00:08:43,559 --> 00:08:46,100 אתה יכול לעזור לשפר מאוחר יותר סטי בעיה, רק יודיעו לי. 215 00:08:46,100 --> 00:08:47,520 216 00:08:47,520 --> 00:08:49,750 >> ולאחר מכן רק כמה טיפים בשבילכם. 217 00:08:49,750 --> 00:08:53,110 אז אחד הדברים הגדולים ביותר ש אני תמיד מדגיש לסעיף שלי 218 00:08:53,110 --> 00:08:57,700 כאשר אתה לומד איך קוד הוא לכתוב דברים על נייר ראשון. 219 00:08:57,700 --> 00:09:01,080 אם יש לך תכנית משחק ל שם הקוד שלך צריך ללכת 220 00:09:01,080 --> 00:09:03,230 ומה שהוא צריך לעשות וזה מתפרק 221 00:09:03,230 --> 00:09:06,000 לחתיכות קטנות של פסאודו קוד קוד שהכתבת, 222 00:09:06,000 --> 00:09:09,780 אתה הולך להיות פחות צפוי לעשות שגיאות תחביר 223 00:09:09,780 --> 00:09:12,355 או ליצור אם לולאה ש אין אחר. 224 00:09:12,355 --> 00:09:14,064 225 00:09:14,064 --> 00:09:15,980 אם אתה יודע איפה אתה הולך כולל, אתה 226 00:09:15,980 --> 00:09:19,764 פחות סביר שיעשה זעיר אלה טעויות שלפעמים לוקחות אותך 227 00:09:19,764 --> 00:09:22,555 שעות לתקן, בגלל שאתה כמו, שבו אני חסר הסוגר זה? 228 00:09:22,555 --> 00:09:23,580 229 00:09:23,580 --> 00:09:27,420 >> בהקשר זה, אנא השתמש Style50. 230 00:09:27,420 --> 00:09:28,820 231 00:09:28,820 --> 00:09:31,590 במיוחד כשאתה הולך לשעתי עבודה, 232 00:09:31,590 --> 00:09:34,850 אם הקוד שלך הוא כל עבר לצד אחד, 233 00:09:34,850 --> 00:09:37,740 זה מדיניות כמובן שאנו יכולים לומר, לתקן את זה 234 00:09:37,740 --> 00:09:41,990 כך זה נראה כמו Style50 אומר שהוא צריך, ואז אנחנו נעזור לך. 235 00:09:41,990 --> 00:09:43,830 אז זה יעשה את החיים קלים יותר. 236 00:09:43,830 --> 00:09:45,030 זה יהיה להפוך את חיינו לקלים יותר. 237 00:09:45,030 --> 00:09:46,000 כולם מאושרים יותר. 238 00:09:46,000 --> 00:09:47,290 כל אחד מקבל ציונים טובים יותר. 239 00:09:47,290 --> 00:09:48,760 האם זה לא מה שכולנו רוצים? 240 00:09:48,760 --> 00:09:50,420 241 00:09:50,420 --> 00:09:53,860 >> אז לכתוב את דברים על נייר לפני אי פעם לגעת במחשב שלך. 242 00:09:53,860 --> 00:09:57,540 לדבר דברים החוצה ברמה גבוהה, ו ודא שאתה יודע לאן אתה הולך. 243 00:09:57,540 --> 00:09:59,940 ואם אתה לא בטוח, לשבת עם מישהו 244 00:09:59,940 --> 00:10:03,340 וללוות אותם באמצעות צעד אחר צעד מה הקוד שלך אמור לעשות. 245 00:10:03,340 --> 00:10:07,940 ותשע פעמים מתוך 10, אתה תהיה כמו, אה, שכחתי, אם מצב 246 00:10:07,940 --> 00:10:12,420 או שכחתי פסיק כאן או אני מעדכן שגוי משתנה זה. 247 00:10:12,420 --> 00:10:15,740 אז אלה הם הטיפים שלי להצלחה. 248 00:10:15,740 --> 00:10:19,820 >> אז מאז כמחצית אתה מסתכל כמוך השתתף סעיף סופר, 249 00:10:19,820 --> 00:10:24,080 אני רק הולך למאוד ללכת לזמן קצר באמצעות לולאות, 250 00:10:24,080 --> 00:10:26,650 אשר לא היו על סדר היום המקורי שלנו. 251 00:10:26,650 --> 00:10:28,190 אבל הם באמת חשובים. 252 00:10:28,190 --> 00:10:30,250 ואז אני הולך לסוג מהירות באמצעות אלה 253 00:10:30,250 --> 00:10:32,860 לפני שאנחנו נכנסים לסעיף בפועל שלנו. 254 00:10:32,860 --> 00:10:36,269 לפני שאני עושה את זה, יש כל questions-- לוגיסטי, 255 00:10:36,269 --> 00:10:38,060 באופן אישי, יש כל דבר שאתה רוצה דבר אחר 256 00:10:38,060 --> 00:10:40,990 לדעת עליי או על סעיף או בכיתה באופן כללי? 257 00:10:40,990 --> 00:10:43,195 258 00:10:43,195 --> 00:10:43,880 כל טוב? 259 00:10:43,880 --> 00:10:45,300 אישור, מגניב. 260 00:10:45,300 --> 00:10:46,781 261 00:10:46,781 --> 00:10:47,280 יפה. 262 00:10:47,280 --> 00:10:50,071 >> אז loops-- אתם כל צריכים להכיר יצירות אלה מהתחלה. 263 00:10:50,071 --> 00:10:51,310 264 00:10:51,310 --> 00:10:55,220 אז לולאות הן בעצם רק דרך שלנו לעשות משהו 265 00:10:55,220 --> 00:10:58,900 כמה מספר הפעמים, כמה חוזר ונשנה פעולה מבוססת על כמה תנאים. 266 00:10:58,900 --> 00:11:00,140 267 00:11:00,140 --> 00:11:02,090 אז יש לנו שלושה סוגים שונים. 268 00:11:02,090 --> 00:11:04,860 יש לנו ללולאה, ואילו, ולעשות-בזמן. 269 00:11:04,860 --> 00:11:06,430 270 00:11:06,430 --> 00:11:11,320 >> אז לloops-- רק שיש לנו מאוד פריסה כללית כאן ללולאה for. 271 00:11:11,320 --> 00:11:16,110 וזה נהדר עבור כאשר אתה יודע איך פעמים רבות משהו צריך לבצע. 272 00:11:16,110 --> 00:11:17,040 273 00:11:17,040 --> 00:11:18,790 כאשר אנו מדברים על לולאות אחרות, אתה 274 00:11:18,790 --> 00:11:20,650 מבין למה זה הבחנה חשובה. 275 00:11:20,650 --> 00:11:22,530 אבל ללולאות הם לסט משהו. 276 00:11:22,530 --> 00:11:24,590 אתה יודע או שאתה יכול לחשב את המספר 277 00:11:24,590 --> 00:11:29,230 או שאתה יודע את מספר הפעמים שאתה רוצה שזה חזר בתחילת. 278 00:11:29,230 --> 00:11:32,220 >> אז אם אתם רואים כאן, אנחנו יש רק סוג כללי 279 00:11:32,220 --> 00:11:34,480 של מסגרת שלד ללולאה for כאן. 280 00:11:34,480 --> 00:11:38,080 אז, זה לאתחול שבי המשתנים שלך מאותחלים. 281 00:11:38,080 --> 00:11:41,915 עם מריו, אני בטוח שאתם עשית משהו כמו i int שווה 0. 282 00:11:41,915 --> 00:11:42,920 283 00:11:42,920 --> 00:11:44,710 זה מקום שבי שיקרה בכחול. 284 00:11:44,710 --> 00:11:48,290 יש לך המצב שלך, ש זה מה שבדק את כל זמן. 285 00:11:48,290 --> 00:11:52,410 אם מצב זה נכון, אז שאר הקוד מבצע. 286 00:11:52,410 --> 00:11:54,749 ואז זה ירוץ again-- ולשאול. 287 00:11:54,749 --> 00:11:57,290 ואז יש לנו עדכון, שבו אתה מעדכן משתנה. 288 00:11:57,290 --> 00:12:01,410 אז, שוב, עם כמו מריו, אני בטוח ש אתם עשו משהו כמו שאני פלוס פלוס. 289 00:12:01,410 --> 00:12:04,640 אז בכל פעם שלולאה רן, יש לי כל כך מעודכן 290 00:12:04,640 --> 00:12:09,370 כי כאשר אנו בודקים אותו כנגד כמה מצב, זה היה שינוי. 291 00:12:09,370 --> 00:12:12,570 >> כי אם אתה רק יש לי משתנה סטטי, 292 00:12:12,570 --> 00:12:15,567 אם הוא מבצע בפעם הראשונה, זה רק הולך לבצע אין שיעור. 293 00:12:15,567 --> 00:12:18,025 אז אתה צריך לוודא שאתה לעדכן את משתנה כמו שצריך. 294 00:12:18,025 --> 00:12:19,350 295 00:12:19,350 --> 00:12:23,890 ויש לנו גם רק ייצוג חזותי יש. 296 00:12:23,890 --> 00:12:24,930 כולם טובים? 297 00:12:24,930 --> 00:12:25,630 ללולאות. 298 00:12:25,630 --> 00:12:27,540 היית צריך לראות את אלה בpset שלך. 299 00:12:27,540 --> 00:12:28,840 מגניב. 300 00:12:28,840 --> 00:12:31,870 >> אז הנה רק דוגמא קלה. 301 00:12:31,870 --> 00:12:32,860 הדפסה זו היא CS50! 302 00:12:32,860 --> 00:12:33,360 10 פעמים. 303 00:12:33,360 --> 00:12:34,850 304 00:12:34,850 --> 00:12:37,906 ולכן יש לנו האתחול שלנו, כפי שאנו רואים שם, עם i int 305 00:12:37,906 --> 00:12:41,280 שווה 0, להוא אני פחות מ -10, ואני פלוס פלוס. 306 00:12:41,280 --> 00:12:43,090 307 00:12:43,090 --> 00:12:44,540 וזה יהיה להדפיס כי 10 פעמים. 308 00:12:44,540 --> 00:12:46,230 309 00:12:46,230 --> 00:12:56,781 >> אז בזמן שloops-- תוך לולאות כאשר גדול שאתה עושה לא בהכרח 310 00:12:56,781 --> 00:12:59,530 צריך לדעת כמה פעמים זה הולך לעדכן בתחילת. 311 00:12:59,530 --> 00:13:00,640 312 00:13:00,640 --> 00:13:02,580 אתה פשוט צריך קצת מצב זה נבדק. 313 00:13:02,580 --> 00:13:09,550 וזה יכול להיות משהו כמו while-- בואו ניקח דוגמא מpset שלך. 314 00:13:09,550 --> 00:13:12,540 אם מריו, אתה מנסה קלט מספר שלילי. 315 00:13:12,540 --> 00:13:13,270 נכון? 316 00:13:13,270 --> 00:13:15,460 הייתם אמורים מחדש תנחה המשתמש שלך. 317 00:13:15,460 --> 00:13:20,890 אז אתה יכול להגיד, טוב, אם תשומות המשתמשים משהו פחות מאפס, מחדש הפקודה 318 00:13:20,890 --> 00:13:21,390 שלהם. 319 00:13:21,390 --> 00:13:23,890 ואני בטוח שאולי יש לי משהו היה שכמה מכם 320 00:13:23,890 --> 00:13:24,660 שימוש בקוד שלך. 321 00:13:24,660 --> 00:13:26,270 >> אז זה דבר פשוט. 322 00:13:26,270 --> 00:13:28,490 יש לך זמן, כמה תנאי שנבדק 323 00:13:28,490 --> 00:13:30,460 בכל פעם שהקוד הולך לבצע. 324 00:13:30,460 --> 00:13:32,660 אם זה בוחן לנכון, אנחנו מפעילים אותו. 325 00:13:32,660 --> 00:13:33,820 אחרת אין לנו. 326 00:13:33,820 --> 00:13:35,650 ומה באמת important-- משהו שאני 327 00:13:35,650 --> 00:13:38,155 חושב שהדוד דיבר על בlecture-- היא הפלטה. 328 00:13:38,155 --> 00:13:40,760 329 00:13:40,760 --> 00:13:42,930 לא משנה מה של ב הפלטה היא מה שבוצע. 330 00:13:42,930 --> 00:13:45,850 אם שכחת אותם פלטה, זה רק הולך 331 00:13:45,850 --> 00:13:48,800 להיות הקו ישיר לאחר הזמן שהוצא להורג. 332 00:13:48,800 --> 00:13:51,040 >> אז אם יש לך שלושה דברים שאמורים 333 00:13:51,040 --> 00:13:54,020 זה יקרה כאשר זה מצב מעריך לנכון, 334 00:13:54,020 --> 00:13:58,040 ואין לך פלטה אלה, רק הדבר הראשון שהולך לקרות. 335 00:13:58,040 --> 00:14:01,510 אז להיות מודע מאוד של איפה אתה שם את הפלטה שלך. 336 00:14:01,510 --> 00:14:04,880 אם אתה מקל עם Style50, זה בהחלט יעזור לך. 337 00:14:04,880 --> 00:14:06,220 338 00:14:06,220 --> 00:14:06,760 מגניב. 339 00:14:06,760 --> 00:14:10,835 >> אז זה ספירה לאחור מ -10 עד אפס. 340 00:14:10,835 --> 00:14:12,380 341 00:14:12,380 --> 00:14:16,210 וכפי שאתם רואים כאן, אנחנו לאתחל כמה דלפק מחוצה לה. 342 00:14:16,210 --> 00:14:19,250 דבר אחד ששונה הוא אנחנו לא אתחול כל משתנים 343 00:14:19,250 --> 00:14:20,300 בתוך לולאת ה while שלנו. 344 00:14:20,300 --> 00:14:22,150 זה אותחל מחוצה לה. 345 00:14:22,150 --> 00:14:25,480 אנחנו פשוט רק לשים להתנות לבעוד שלנו. 346 00:14:25,480 --> 00:14:28,630 אז במקרה הזה, זה זמן ש הספירה היא גדולה מאפס. 347 00:14:28,630 --> 00:14:35,134 ואנחנו להדפיס את מה שהיא הספירה שלנו, ואז אנחנו פחת משתנים. 348 00:14:35,134 --> 00:14:36,800 וזה גם דבר אחר לשים לב. 349 00:14:36,800 --> 00:14:40,440 העדכון שלנו לא קורה בתוך כי חלק הראשון של לולאת ה while. 350 00:14:40,440 --> 00:14:44,255 למעשה זה לא יקרה בתוך הפלטה, גוף הטקסט שלך. 351 00:14:44,255 --> 00:14:46,820 352 00:14:46,820 --> 00:14:51,860 >> אז אל-בזמן loops-- לעשות-בזמן לולאות נהדרים עבור אימות משתמש. 353 00:14:51,860 --> 00:14:54,820 אז כמה מכם אולי יש לי גם בשימוש זה בpset שלך. 354 00:14:54,820 --> 00:14:59,960 אתה יכול להגיד, לעשות, כמו, לשאול את המשתמש לקלט. 355 00:14:59,960 --> 00:15:04,690 ולאחר מכן בזמן, כמו, קלט הוא פחות ממספר. 356 00:15:04,690 --> 00:15:10,700 >> אז למקרה מפורש עם מריו, זה יהיה לעשות printf, להיכנס מספר שלם, 357 00:15:10,700 --> 00:15:13,820 ועוד קצת מספרים שלמים שווים getint. 358 00:15:13,820 --> 00:15:17,060 ואז זה באמת יהיה לבצע קוד שראשון. 359 00:15:17,060 --> 00:15:19,120 למעשה אתה תצטרך איזה מספר שלם. 360 00:15:19,120 --> 00:15:23,380 ואז אתה יכול לומר, בזמן ש המספר השלם שהוא פחות מאפס. 361 00:15:23,380 --> 00:15:26,120 אז מה זה הולך לעשות הוא זה הולך לבצע לפחות פעם אחת. 362 00:15:26,120 --> 00:15:27,536 זה הולך לבדוק את מצבו. 363 00:15:27,536 --> 00:15:29,690 אם המצב הוא נכון, זה יחזור לרוץ. 364 00:15:29,690 --> 00:15:32,900 >> אז לעשות-בזמן הלולאות נהדר עבור אימות משתמש, 365 00:15:32,900 --> 00:15:36,770 כי אתה יודע את הקוד הוא הולך לבצע לפחות 366 00:15:36,770 --> 00:15:39,720 פעם אחת, ואילו עם תוך לולאות, אתה לא 367 00:15:39,720 --> 00:15:41,630 מובטח כי זה הולך יתבצע פעם אחת. 368 00:15:41,630 --> 00:15:45,330 זה הולך לבדוק את מצבו ראשון ולאחר מכן מחליט לבצע את זה, 369 00:15:45,330 --> 00:15:48,350 תוך-לעשות בזמן שיהיה לבצע את הקוד ראשון 370 00:15:48,350 --> 00:15:51,110 ולאחר מכן בדוק אם אתה צריך לחזור עליה. 371 00:15:51,110 --> 00:15:52,985 האם הבחנה ש הגיוני לכולם? 372 00:15:52,985 --> 00:15:53,680 373 00:15:53,680 --> 00:15:54,180 אישור. 374 00:15:54,180 --> 00:15:55,651 375 00:15:55,651 --> 00:15:56,150 מגניב. 376 00:15:56,150 --> 00:15:57,380 377 00:15:57,380 --> 00:15:59,800 >> אז במקרה הזה, זה סוג ממה שדיברתי עליו, 378 00:15:59,800 --> 00:16:02,210 זה מחדש הנחיות עד ש לקבל מספר חיובי. 379 00:16:02,210 --> 00:16:05,060 אז אנחנו יודעים שprintf "יש להזין מספר חיובי" 380 00:16:05,060 --> 00:16:08,720 ובעצם מבקש ש קלט יקרה לפחות פעם אחת. 381 00:16:08,720 --> 00:16:12,650 אם המשתמש הוא רע ושומר הזנת מספר שלילי, ש 382 00:16:12,650 --> 00:16:14,210 יודע כמה פעמים זה יהיה לבצע. 383 00:16:14,210 --> 00:16:17,500 אבל הקוד הזה מובטח לבצע לפחות פעם אחת. 384 00:16:17,500 --> 00:16:20,040 ולכן זה נהדר לאימות קלט. 385 00:16:20,040 --> 00:16:22,300 ואתה משתמש בזה לא מעט. 386 00:16:22,300 --> 00:16:23,870 387 00:16:23,870 --> 00:16:25,830 >> בסדר, כל שאלות עד כה? 388 00:16:25,830 --> 00:16:27,080 389 00:16:27,080 --> 00:16:28,030 כולנו טוב? 390 00:16:28,030 --> 00:16:29,513 האם אני מדבר מהר מדי? 391 00:16:29,513 --> 00:16:30,520 392 00:16:30,520 --> 00:16:31,130 אנחנו טובים? 393 00:16:31,130 --> 00:16:31,630 אישור. 394 00:16:31,630 --> 00:16:32,960 395 00:16:32,960 --> 00:16:33,800 מדהים 396 00:16:33,800 --> 00:16:35,841 >> אז אנחנו הולכים קדימה ולדבר על מערכים. 397 00:16:35,841 --> 00:16:36,660 398 00:16:36,660 --> 00:16:37,600 מגניב. 399 00:16:37,600 --> 00:16:40,700 אז מערכים הם ביסודם רק מבני נתונים 400 00:16:40,700 --> 00:16:43,260 המאפשר לנו לאחסן דברים מאותו הסוג. 401 00:16:43,260 --> 00:16:47,920 אז אם אי פעם יש לי מערך, זה או פשוט אצטרך ints 402 00:16:47,920 --> 00:16:51,590 או שזה רק הולך להיות צף או שזה רק הולך להיות תווים. 403 00:16:51,590 --> 00:16:55,440 אתה לא הולך להיות int עם char עם מצוף עם דאבל. 404 00:16:55,440 --> 00:16:56,850 דבר אחד. 405 00:16:56,850 --> 00:17:00,810 מערכים הם רק גודל אחד, או שהם רק סוג אחד. 406 00:17:00,810 --> 00:17:05,679 >> אז הנה יש לנו מערך של גודל שלוש עם שלושה מספרים שלמים בזה. 407 00:17:05,679 --> 00:17:07,970 הם יכולים צף, אבל אנחנו הולך להגיד ints אתה. 408 00:17:07,970 --> 00:17:09,310 409 00:17:09,310 --> 00:17:16,970 אז דבר אחד הוא להבין כי מערכים הם בגודל מוגדר בעת האתחול 410 00:17:16,970 --> 00:17:22,285 שלהם, והם לא easily-- שכן כל שאתה פחות נוח, 411 00:17:22,285 --> 00:17:25,034 אתה פשוט צריך לחשוב עליהם כ לא להיות מסוגל להאריך בגודל. 412 00:17:25,034 --> 00:17:26,119 413 00:17:26,119 --> 00:17:28,740 גדול עם זאת אתם יוצאים המערך שלך בהתחלה, 414 00:17:28,740 --> 00:17:31,070 זה הגודל זה הולך להישאר, כי מערכים 415 00:17:31,070 --> 00:17:33,070 הם אבניים רציפים של זיכרון. 416 00:17:33,070 --> 00:17:34,007 417 00:17:34,007 --> 00:17:35,840 וכאשר אתם מקבלים לקצת יותר 418 00:17:35,840 --> 00:17:40,820 איך זיכרון של ממש מונח על דיסקים ובערמה והמחסנית, 419 00:17:40,820 --> 00:17:42,220 זה יעשה קצת יותר הגיוני. 420 00:17:42,220 --> 00:17:48,310 >> אבל אתה יכול רק לחשוב כמו, זה רק שורה של מקומות בדיסק שלך. 421 00:17:48,310 --> 00:17:52,540 ואתה לא יכול להבטיח שיש הולך להיות שטח פנוי אחריו. 422 00:17:52,540 --> 00:17:55,290 אתה יכול לאתחל מערך משלוש ואז אולי אתה 423 00:17:55,290 --> 00:17:59,190 לאתחל מערך נוסף של חמש מאוחר יותר, וזה מייד אחרי ש. 424 00:17:59,190 --> 00:18:04,000 אז אם היו לך ללכת מקום האחרון שלושה שבמערך הראשון, 425 00:18:04,000 --> 00:18:06,370 אתה הייתי כותב על משהו אחר. 426 00:18:06,370 --> 00:18:10,390 אז מערכי are-- בשבילכם, רק לחשוב עליהם כגודל קבוע. 427 00:18:10,390 --> 00:18:12,700 428 00:18:12,700 --> 00:18:16,890 >> אז יצירת array-- אתה הולך לצריך לעשות את זה לא מעט. 429 00:18:16,890 --> 00:18:18,240 430 00:18:18,240 --> 00:18:22,080 אז, באותו אופן שיש לנו מבנה כללי לנו ללולאות, 431 00:18:22,080 --> 00:18:24,910 יש לנו בכלל נחמד מבנה למערך שלנו. 432 00:18:24,910 --> 00:18:28,430 כי הם מסוג אחד, כל אלמנטים במערך הם מסוג אחד, 433 00:18:28,430 --> 00:18:30,950 אתה צריך לאתחל מה הוא הסוג ש. 434 00:18:30,950 --> 00:18:33,804 >> אז, כפי שאתה רואה כאן, יש לנו סוג נתוני הסוגר קטן ונחמד. 435 00:18:33,804 --> 00:18:35,970 אז אם אנחנו יוצרים int מערך, שיהיה int. 436 00:18:35,970 --> 00:18:38,830 אם אנו יוצרים char מערך, זה יהיה char. 437 00:18:38,830 --> 00:18:41,890 אם אנו יוצרים מחרוזת מערך, זה יהיה מחרוזת. 438 00:18:41,890 --> 00:18:45,140 ולאחר מכן את השם של המערך שלך, כל מה שהיית רוצה שזה יהיה. 439 00:18:45,140 --> 00:18:51,750 אז אולי זה ציונים מבחנים או אולי זה סטודנטים או אולי זה ממתק. 440 00:18:51,750 --> 00:18:54,440 לא משנה מה תחליט את השם שלך מערך, שזה מה שזה יהיה. 441 00:18:54,440 --> 00:18:57,260 >> ולאחר מכן בסוגריים, שתצליח יש לי הגודל שאתה רוצה. 442 00:18:57,260 --> 00:19:01,350 אז, אנו מאחסנים 10 תלמידים או אנחנו אחסון 15 סוגים של ממתקים? 443 00:19:01,350 --> 00:19:03,200 444 00:19:03,200 --> 00:19:03,920 מה לא. 445 00:19:03,920 --> 00:19:06,830 לכן בדוגמא שלנו כאן, אנו יוצרים מערך 446 00:19:06,830 --> 00:19:10,100 גודל שלושה, שאתם לראות ממש כאן בצד הימין. 447 00:19:10,100 --> 00:19:11,350 448 00:19:11,350 --> 00:19:15,990 וכאשר אנו לאתחל ראשון זה, כל מה שמוגדר כאפס. 449 00:19:15,990 --> 00:19:18,970 אז זה פשוט חשב ש כמו לוח חלק. 450 00:19:18,970 --> 00:19:22,550 יש לנו את כל המקומות האלה, יש לנו את כל קופסות האלה שאנחנו יכולים לשים את הנתונים שלנו ל, 451 00:19:22,550 --> 00:19:25,530 אבל הם פשוט ריקים לעת עתה. 452 00:19:25,530 --> 00:19:28,700 >> אז אם אנחנו רוצים בעצם להקצות להם ערכים אלה, 453 00:19:28,700 --> 00:19:33,050 אנו עושים זאת כממש מתחת לכאן מראה. 454 00:19:33,050 --> 00:19:39,170 אז יש לך כל מה שהשם שלך מערך הוא ואז מה מדד שאתה רוצה. 455 00:19:39,170 --> 00:19:43,070 אז המדד פשוט מתייחס ל, כמו, מה חריץ אנחנו מסתכלים. 456 00:19:43,070 --> 00:19:47,830 ודבר חשוב לשים לב הוא שמערכים צמודים לאפס. 457 00:19:47,830 --> 00:19:53,160 אז אם אנחנו רוצים החלל הראשון בזיכרון של המערך שלנו, זה הולך להיות אפס. 458 00:19:53,160 --> 00:19:54,740 אם אנחנו רוצים שני, זה יהיה אחד. 459 00:19:54,740 --> 00:19:56,198 אם אנחנו רוצים שלישיים, זה יהיה שני. 460 00:19:56,198 --> 00:19:57,820 כן הלאה וכן הלאה. 461 00:19:57,820 --> 00:20:02,130 >> זו גם הסיבה ש, כמקובל, אני כשאנחנו עושים לloops-- בטוח 462 00:20:02,130 --> 00:20:05,030 אתם תוהים, מדוע אנחנו מתחילים ב 0 לעומת 1? 463 00:20:05,030 --> 00:20:09,909 וזה בגלל שכאשר אנו מעבר לשימוש במערכים, זה ממפה בצורה נכונה. 464 00:20:09,909 --> 00:20:11,700 אז אם אתם רוצים לחזר למערך, זה 465 00:20:11,700 --> 00:20:14,830 עושה הרבה יותר הגיוני האם אני שווה 0, כי אנחנו 466 00:20:14,830 --> 00:20:17,940 יודע שיהיה מתאים למקום הראשון בזיכרון. 467 00:20:17,940 --> 00:20:18,990 468 00:20:18,990 --> 00:20:19,990 כולם טובים בזה? 469 00:20:19,990 --> 00:20:21,060 470 00:20:21,060 --> 00:20:21,560 מגניב. 471 00:20:21,560 --> 00:20:26,240 >> ולאחר מכן על התחתון כאן הוא פשוט דרך נוספת לאתחל מערך. 472 00:20:26,240 --> 00:20:29,590 עדיין יש לך שלך סוג הנתונים ואת השם, 473 00:20:29,590 --> 00:20:31,960 אבל במקום באמת לשים גודל שם, 474 00:20:31,960 --> 00:20:33,830 אתה פשוט יכול לעשות סוגריים ריקים. 475 00:20:33,830 --> 00:20:36,350 ולאחר מכן, בסוגריים מסולסלים אלה פלטה בתחתית, 476 00:20:36,350 --> 00:20:40,270 אתה יכול פשוט להכניס את הנתונים ש אתה רוצה מופרד בפסיקים. 477 00:20:40,270 --> 00:20:43,070 וזה יהיה באופן אוטומטי אומר, בסדר, אני רואה 478 00:20:43,070 --> 00:20:47,300 כי יש לך שלוש דברים בסיכות אלה. 479 00:20:47,300 --> 00:20:51,410 אז אני יודע שאני צריך להקצות שלוש בלוקים של זיכרון ולאחר מכן לאחסן אותם. 480 00:20:51,410 --> 00:20:55,300 481 00:20:55,300 --> 00:21:01,670 >> אז הגרסה הראשונה שאתה עשוי להשתמש בי אם אתה שואל את המשתמשים שלך לכניסה 482 00:21:01,670 --> 00:21:04,770 ערכים, כך שאתה יכול איטרציות במערך 483 00:21:04,770 --> 00:21:07,660 וask-- לקבל קצת int לקלטם. 484 00:21:07,660 --> 00:21:10,500 אם אתה יודע את הערכים מראש, זה עושה הרבה יותר הגיוני 485 00:21:10,500 --> 00:21:12,110 להשתמש בדרך השנייה. 486 00:21:12,110 --> 00:21:17,270 אבל ברוב המקרים, אתה אולי לא יודע מה הערכים אלה הולכים להיות. 487 00:21:17,270 --> 00:21:19,060 488 00:21:19,060 --> 00:21:19,560 מגניב. 489 00:21:19,560 --> 00:21:20,393 יש עוד שאלות? 490 00:21:20,393 --> 00:21:21,206 491 00:21:21,206 --> 00:21:21,705 בסדר. 492 00:21:21,705 --> 00:21:25,960 493 00:21:25,960 --> 00:21:30,370 >> אז גישה elements-- כך אחד הדברים הגדולים על מערכים 494 00:21:30,370 --> 00:21:33,310 הוא שהם אקראיים גישה, כלומר, אתה 495 00:21:33,310 --> 00:21:36,010 לא צריך להסתכל דרך כל בלוק. 496 00:21:36,010 --> 00:21:38,150 אם אתה יודע שאתה רוצה את מה שהוא בבלוק שני, 497 00:21:38,150 --> 00:21:40,820 אתה יכול רק להגיד, תן לי לחסום שני. 498 00:21:40,820 --> 00:21:44,160 ולכן אלה מדדים הם כל כך חשובים, 499 00:21:44,160 --> 00:21:46,220 וככה אנחנו בעצם לגשת אליהם. 500 00:21:46,220 --> 00:21:50,660 אז במקרה הזה, כפי שראינו קודם לכן, כאשר היינו הקצאת ערכים, באחד 501 00:21:50,660 --> 00:21:55,360 לפני, היו לנו את השם ו מדד שאנחנו רוצים גישה, נכון? 502 00:21:55,360 --> 00:21:59,370 אז באותה הדרך, זה כל מה ש לעשות דווקא למשוך את זה החוצה נתונים. 503 00:21:59,370 --> 00:22:02,940 יש לנו שם ואנחנו יש מדד שאנחנו רוצים. 504 00:22:02,940 --> 00:22:06,710 >> אז במקרה הזה, ללולאה כאן למטה בתחתית, כל אחד 505 00:22:06,710 --> 00:22:09,060 יודע מה הוא עושה, איך זה יהיה להדפיס את? 506 00:22:09,060 --> 00:22:13,771 507 00:22:13,771 --> 00:22:14,270 "ממממ? 508 00:22:14,270 --> 00:22:17,790 509 00:22:17,790 --> 00:22:18,520 בדיוק. 510 00:22:18,520 --> 00:22:20,130 אז כן, זה פשוט iterating דרך. 511 00:22:20,130 --> 00:22:23,410 היא i שווה לzero-- אנחנו יכולים ללכת באמצעות הקוד פשוט במהירות. 512 00:22:23,410 --> 00:22:26,680 היא i שווה לאפס, אני פחות משלושה, בשלב זה, נכון? 513 00:22:26,680 --> 00:22:27,780 כך שבודק את. 514 00:22:27,780 --> 00:22:33,370 ואנחנו אומרים, בסדר, ו הדפסה מה היא בטמפרטורת i. 515 00:22:33,370 --> 00:22:37,990 הוא לי אפס ממש כאן כאשר אנו ראשון לחזר, ולכן אנחנו הולכים למקום הראשון, 516 00:22:37,990 --> 00:22:40,840 ואנחנו אומרים, בסדר, 65 הוא מספר שאנחנו רוצים להדפיס. 517 00:22:40,840 --> 00:22:43,570 אז זה יהיה להדפיס את 65 ואז לעשות קו חדש. 518 00:22:43,570 --> 00:22:46,550 אני אעדכן, אז זה מדפיס 87. 519 00:22:46,550 --> 00:22:48,780 הוא מעדכן שוב, וזה יהיה להדפיס 30. 520 00:22:48,780 --> 00:22:49,810 521 00:22:49,810 --> 00:22:50,630 כולם מגניבים? 522 00:22:50,630 --> 00:22:51,630 523 00:22:51,630 --> 00:22:52,130 מדהים. 524 00:22:52,130 --> 00:22:54,340 525 00:22:54,340 --> 00:22:54,840 >> בְּסֵדֶר. 526 00:22:54,840 --> 00:22:57,710 אז הנה סוג של אחד דבר שאני אומר איך 527 00:22:57,710 --> 00:23:00,020 אתה יכול לעקוב אחר הציון של מישהו ומדוע 528 00:23:00,020 --> 00:23:03,300 עליך להשתמש בראשון דרך של אתחול זה 529 00:23:03,300 --> 00:23:04,890 במקום שהדרך השנייה. 530 00:23:04,890 --> 00:23:06,620 וזה רק עובר. 531 00:23:06,620 --> 00:23:08,945 ושים לב שיש לנו מספר תלמידים בכיתה של 30. 532 00:23:08,945 --> 00:23:10,690 533 00:23:10,690 --> 00:23:15,770 ואנחנו אתחול זה מערך של ints שהוא בגודל 30. 534 00:23:15,770 --> 00:23:18,070 ואז אנחנו iterating דרך ואנחנו 535 00:23:18,070 --> 00:23:20,910 לשאול את המשתמש לכניסה ציונים לכל אחד מאלה 536 00:23:20,910 --> 00:23:23,700 ולאחר מכן הקצה אותו ל במקום מסוים בזיכרון 537 00:23:23,700 --> 00:23:24,860 אי שם במערך ש. 538 00:23:24,860 --> 00:23:26,700 539 00:23:26,700 --> 00:23:27,890 מגניב? 540 00:23:27,890 --> 00:23:29,650 האם זה הגיוני לכולם? 541 00:23:29,650 --> 00:23:30,150 "ממממ? 542 00:23:30,150 --> 00:23:32,910 543 00:23:32,910 --> 00:23:40,360 >> אז hashtag להגדיר גודל כיתה 30 היא הוראת עיבוד מוקדמת, 544 00:23:40,360 --> 00:23:43,780 שרק אומר את זה gets-- יש לו לעשות כמו תהליך הקומפילציה. 545 00:23:43,780 --> 00:23:47,595 אתה יכול לחשוב על זה כמשתנה גלובלי. 546 00:23:47,595 --> 00:23:49,260 547 00:23:49,260 --> 00:23:53,030 הדרך בה אנו עושים את זה היא typically-- היא מאפשרת את הקוד שלך 548 00:23:53,030 --> 00:23:54,770 להיות שונה בקלות רבה יותר. 549 00:23:54,770 --> 00:23:59,480 אז נניח שגודל הכיתה שלנו פתאום הולך 30-15, 550 00:23:59,480 --> 00:24:03,930 אם לא הייתי מגדיר אותה בדרך זו, הייתי צריך לעבור את כל התכנית שלי 551 00:24:03,930 --> 00:24:07,420 ולשנות את כל מופעים של 30-15. 552 00:24:07,420 --> 00:24:11,590 אבל עם זה, אני מקבל לשנות אחד מקום, ושינויי כל דבר אחר. 553 00:24:11,590 --> 00:24:14,930 >> אם אי פעם אתה רוצה לעשות חשיש להגדיר במקרה 554 00:24:14,930 --> 00:24:19,020 לאן אתה עוקב אחרי כמה להגדיר מספר הציונים לכיתה 555 00:24:19,020 --> 00:24:23,250 או שאתה משתמש במספר שישמש, כמו, 556 00:24:23,250 --> 00:24:27,740 בכל תכנית ארוכה מאוד, זה עדיף להגדיר כי בתחילת 557 00:24:27,740 --> 00:24:34,440 כך שאם אי פעם הוא משנה, אתה מקבל לשנות מקום אחד, במקום 100. 558 00:24:34,440 --> 00:24:34,940 כן? 559 00:24:34,940 --> 00:24:39,830 >> תלמיד: בין לעשות את זה ופשוט הכרזה [לא ברור] על בחלק העליון. 560 00:24:39,830 --> 00:24:42,470 >> אליסון BUCHHOLTZ-AU: אז זה יש לעשות עם efficient-- 561 00:24:42,470 --> 00:24:45,460 זה סוג של מחוץ להיקף של מה שאנחנו יכולים לכסות בסעיף זה. 562 00:24:45,460 --> 00:24:49,236 זה יש לעשות יותר עם יעילות ואיך בעצם דברים 563 00:24:49,236 --> 00:24:50,485 עבודה בתהליך הקומפילציה. 564 00:24:50,485 --> 00:24:52,590 565 00:24:52,590 --> 00:24:55,006 אם אתה רוצה באמת לדעת על זה, אני שמח לשלוח לך 566 00:24:55,006 --> 00:24:56,450 דואר אלקטרוני עם משאבים על זה. 567 00:24:56,450 --> 00:24:57,810 568 00:24:57,810 --> 00:25:03,880 חשיש להגדיר נוטה להיות העדיף לדברים. 569 00:25:03,880 --> 00:25:06,380 וכמו שאתה לקודד יותר, אתה סוג של ללמוד את הניואנסים 570 00:25:06,380 --> 00:25:09,135 כאשר אתה צריך להשתמש ב הגלובלי לעומת החשיש להגדיר. 571 00:25:09,135 --> 00:25:11,010 אבל לעת עתה, באמת אין לך 572 00:25:11,010 --> 00:25:13,290 לדאוג בקשר לזה הוא כי התשובה הקצרה. 573 00:25:13,290 --> 00:25:15,360 574 00:25:15,360 --> 00:25:16,360 כולם טובים בזה? 575 00:25:16,360 --> 00:25:18,151 וגם, אם אתה רוצה להשתמש חשיש להגדיר, 576 00:25:18,151 --> 00:25:21,120 זה באמת חשוב לשים לב שהשם צריך להיות באותיות הגדולות. 577 00:25:21,120 --> 00:25:22,210 578 00:25:22,210 --> 00:25:24,674 אנחנו לא רק עושים גודל כיתה להיות דרמטי. 579 00:25:24,674 --> 00:25:26,090 זה צריך להיות ממש בכל כמוסות. 580 00:25:26,090 --> 00:25:27,880 581 00:25:27,880 --> 00:25:28,610 מגניב. 582 00:25:28,610 --> 00:25:30,130 כל דבר אחר שם? 583 00:25:30,130 --> 00:25:31,190 אנחנו טובים? 584 00:25:31,190 --> 00:25:32,220 יפה. 585 00:25:32,220 --> 00:25:32,720 ברוך הבא. 586 00:25:32,720 --> 00:25:34,240 587 00:25:34,240 --> 00:25:38,495 >> אוקיי, אז אני רוצה שבחורים להעיף מבט בשלב זה ולראות אם אתה יכול למצוא את הבאג. 588 00:25:38,495 --> 00:25:45,580 589 00:25:45,580 --> 00:25:46,507 אני אתן לך רמז. 590 00:25:46,507 --> 00:25:47,840 זה איפשהו שבלולאה ל. 591 00:25:47,840 --> 00:25:53,070 592 00:25:53,070 --> 00:25:53,665 "ממממ? 593 00:25:53,665 --> 00:25:55,704 >> תלמיד: צריך להיות פחות מ שווה ל 2. 594 00:25:55,704 --> 00:25:56,920 595 00:25:56,920 --> 00:26:01,094 >> אליסון: אז זה יכול להיות פחות או שווה ל 2, או שזה יכול להיות פחות מ -3. 596 00:26:01,094 --> 00:26:02,510 ומה הסיבות לכך? 597 00:26:02,510 --> 00:26:05,135 >> תלמיד: [לא ברור], 0, 1, 2. 598 00:26:05,135 --> 00:26:06,080 >> אליסון: בדיוק. 599 00:26:06,080 --> 00:26:12,180 אז במערך בגודל n, אנחנו יש רק מדדים של n מינוס 1. 600 00:26:12,180 --> 00:26:13,700 601 00:26:13,700 --> 00:26:14,200 מגניב. 602 00:26:14,200 --> 00:26:15,091 603 00:26:15,091 --> 00:26:17,840 ואז אנחנו יכולים לקבל באמת מטורפים ולקבל מערכים רב-ממדיים. 604 00:26:17,840 --> 00:26:19,340 605 00:26:19,340 --> 00:26:23,960 אחת הבעיות כשלקחתי אותה בי מערכי שנה הנדרשים רב-ממדיים, 606 00:26:23,960 --> 00:26:28,720 ואני חושב שאחד מהם עלול לחייב זה השנה, כך יהיה נוח. 607 00:26:28,720 --> 00:26:30,140 לעטוף את הראש סביבו עכשיו. 608 00:26:30,140 --> 00:26:33,087 זה יחזור לרדוף את אתה, אבל בצורה מגניב. 609 00:26:33,087 --> 00:26:35,420 אז אתה באמת יכול לחשוב רק מערכים רב-ממדיים 610 00:26:35,420 --> 00:26:36,870 כמערכים של מערכים. 611 00:26:36,870 --> 00:26:38,060 612 00:26:38,060 --> 00:26:43,809 אז אתה סוג של יכול לחשוב על החלק העליון הזה שורה כנתח הראשון של זיכרון. 613 00:26:43,809 --> 00:26:45,600 ואת זה הוא נתח שני של זיכרון, 614 00:26:45,600 --> 00:26:47,570 והשורה האחרונה היא נתח שלישי של זיכרון. 615 00:26:47,570 --> 00:26:50,740 ובתוך כך, יש מגוון. 616 00:26:50,740 --> 00:26:53,250 אבל כמובן, זה יותר קל לתאר כזה. 617 00:26:53,250 --> 00:26:55,610 >> אז אתה לאתחל אותו באותה דרך. 618 00:26:55,610 --> 00:26:57,290 619 00:26:57,290 --> 00:27:01,610 זוהי דמות מועצת המנהלים של שלוש מול שלוש. 620 00:27:01,610 --> 00:27:04,180 אז יש לך שלוש שורות ושלוש עמודות. 621 00:27:04,180 --> 00:27:06,760 אנחנו מייצגים אותה בדרך זו. 622 00:27:06,760 --> 00:27:11,800 והיית לגשת אליו אותו אופן, טורו של שורה. 623 00:27:11,800 --> 00:27:14,840 וכך 1,1 כפי שאנו רואים כאן. 624 00:27:14,840 --> 00:27:18,730 אנחנו להקצות אפס, אפס שם למעלה. 625 00:27:18,730 --> 00:27:21,900 2,0 ו0,2. 626 00:27:21,900 --> 00:27:26,900 אז היית לגשת them-- רק אם מישהו אי פעם עשה אלגברה לינארית, 627 00:27:26,900 --> 00:27:31,580 באותו אופן הגישה לאלמנט ב matrice, זה אותו הרעיון כאן. 628 00:27:31,580 --> 00:27:33,030 אז אתה יכול להתייחס אותו בחזרה למתמטיקה. 629 00:27:33,030 --> 00:27:34,130 630 00:27:34,130 --> 00:27:36,380 אתה לא צריך לדאוג יותר מדי הרבה על זה עכשיו. 631 00:27:36,380 --> 00:27:38,671 זה טוב שיש חשיפה, לדעת שאתה יכול לעשות את זה. 632 00:27:38,671 --> 00:27:42,700 אתה יכול ליצור כמה משוגע number-- שאתה יכול 633 00:27:42,700 --> 00:27:44,750 ליצור מערכים משוגעים הוא כל מה שאני הולך להגיד. 634 00:27:44,750 --> 00:27:45,250 [לא ברור] 635 00:27:45,250 --> 00:27:46,585 636 00:27:46,585 --> 00:27:48,460 זה נהיה קצת משוגע, אבל זה ממש מגניב. 637 00:27:48,460 --> 00:27:50,020 638 00:27:50,020 --> 00:27:50,670 מדהים. 639 00:27:50,670 --> 00:27:52,550 >> ולאחר מכן, כך שיש לנו פה דוגמא. 640 00:27:52,550 --> 00:27:54,165 היא מחשבת אורך מחרוזת. 641 00:27:54,165 --> 00:27:55,210 642 00:27:55,210 --> 00:27:59,670 אז כמה אנשים ידעו ש המחרוזות שאתה משתמש ב 643 00:27:59,670 --> 00:28:01,265 רק מערכים של תווים? 644 00:28:01,265 --> 00:28:03,670 645 00:28:03,670 --> 00:28:04,655 אישור, כן. 646 00:28:04,655 --> 00:28:08,000 אז אתם יכולים לחשוב שיש לך לא מערכים השתמשו בעבר, אבל בכל פעם 647 00:28:08,000 --> 00:28:10,740 אתה משתמש getstring ב ספריית CSView, אתה 648 00:28:10,740 --> 00:28:14,690 למעשה רק לבקש מערך של תווים. 649 00:28:14,690 --> 00:28:17,450 ואנחנו דואגים לכל כי בקצה האחורי בשבילך. 650 00:28:17,450 --> 00:28:20,184 אבל יש לך כבר משתמשים ב מערכים מאז שהתחלתם. 651 00:28:20,184 --> 00:28:21,350 אתה פשוט לא יודע את זה עדיין. 652 00:28:21,350 --> 00:28:22,420 653 00:28:22,420 --> 00:28:28,390 >> ובכל פעם שיש לך מערך תווים או מערך זה אחסון מחרוזת, 654 00:28:28,390 --> 00:28:32,050 הדבר האחרון שהוא תמיד מה ש בשם שליחות קטלנית null, ש 655 00:28:32,050 --> 00:28:33,830 זה ממש כאן. 656 00:28:33,830 --> 00:28:37,300 וזה בסופו של כל מילה שאתה אחסון. 657 00:28:37,300 --> 00:28:41,170 אז אם אנחנו רוצים להבין את אורך של מחרוזת, אנחנו יכולים לומר, 658 00:28:41,170 --> 00:28:45,320 גם, אתה יודע, תוכן של בלוק ש 659 00:28:45,320 --> 00:28:46,867 אינו שווה לשליחות קטלנית null. 660 00:28:46,867 --> 00:28:49,450 זה אומר שיש כמה אופי יש שאנחנו באמת 661 00:28:49,450 --> 00:28:51,540 אכפת שזה חלק מהמילה. 662 00:28:51,540 --> 00:28:52,665 אתה מגדיל את האורך שלך. 663 00:28:52,665 --> 00:28:55,540 ולאחר מכן כאשר אנו מקבלים למעשה סוף המילה, זה יהיה לסיים 664 00:28:55,540 --> 00:28:58,790 וזה יחזור האורך שלנו בשבילנו. 665 00:28:58,790 --> 00:29:00,098 "ממממ? 666 00:29:00,098 --> 00:29:02,906 >> תלמיד: האם החלל נחשב שליחות קטלנית null? 667 00:29:02,906 --> 00:29:04,780 אליסון: אז חלל הוא לא שליחות קטלנית null. 668 00:29:04,780 --> 00:29:10,590 אז אם יש לך multiple-- חלל הוא למעשה ערך ASCII ספציפי. 669 00:29:10,590 --> 00:29:11,719 670 00:29:11,719 --> 00:29:13,552 תלמיד: מה קריאה שווה שוב? 671 00:29:13,552 --> 00:29:17,080 אליסון: אז, זה מה שאתה מתייחס ל. 672 00:29:17,080 --> 00:29:21,220 אם אי פעם אתה שומע אותי בשעתי עבודה, אני תמיד קורא לזה, כמו, מפץ שווה. 673 00:29:21,220 --> 00:29:23,520 אז מפץ הוא לא. 674 00:29:23,520 --> 00:29:25,370 אז זה לא שווה. 675 00:29:25,370 --> 00:29:28,480 676 00:29:28,480 --> 00:29:32,290 אז אם אתה מנסה לראות אם משהו לא נכון, 677 00:29:32,290 --> 00:29:35,915 אתה תמיד יודע לעשות, מפץ מה משתנה הוא, ואם הוא שגוי, 678 00:29:35,915 --> 00:29:38,540 זה מעריך לנכון ואתה יכול לעשות דברים מגניבים עם זה. 679 00:29:38,540 --> 00:29:39,830 680 00:29:39,830 --> 00:29:40,675 עוד על כך בהמשך. 681 00:29:40,675 --> 00:29:42,090 682 00:29:42,090 --> 00:29:42,590 מגניב. 683 00:29:42,590 --> 00:29:44,260 כל מה שטוב שם? 684 00:29:44,260 --> 00:29:44,760 מדהים. 685 00:29:44,760 --> 00:29:48,045 >> אז עכשיו זה הזמן של החבר'ה שלך ל לעבוד, מאז שאני מדבר. 686 00:29:48,045 --> 00:29:49,220 687 00:29:49,220 --> 00:29:53,200 אז אני רוצה אותך רק כדי ליצור מערך עם המספרים השלמים אחד, שתיים, שלוש, 688 00:29:53,200 --> 00:29:54,660 ואז יש להם הדפיס. 689 00:29:54,660 --> 00:29:58,050 אתה לא צריך לעשות, כמו, עיקרי, בלה, בלה, בלה, לא משנה מה. 690 00:29:58,050 --> 00:30:00,840 אני רק רוצה שלאתחל המערך ולאחר מכן ליצור 691 00:30:00,840 --> 00:30:04,790 ללולאה כדי להדפיס אותם out-- או לולאה בזמן, עד שאתה. 692 00:30:04,790 --> 00:30:07,600 >> אני רק אתן לך כמה דקות לעבוד על זה. 693 00:30:07,600 --> 00:30:09,320 אני הולך לנוח את הקול שלי. 694 00:30:09,320 --> 00:30:13,290 אם יש לך שאלות, אני שמח לבוא ולדבר אתכם. 695 00:30:13,290 --> 00:30:15,290 תרגיש חופשי לדבר אחד עם השני. 696 00:30:15,290 --> 00:30:16,125 קבל עוד ממתקים. 697 00:30:16,125 --> 00:30:17,181 698 00:30:17,181 --> 00:30:18,930 למעשה, אני פשוט מסתובב עם ממתקים. 699 00:30:18,930 --> 00:30:19,600 איך זה? 700 00:30:19,600 --> 00:30:22,974 701 00:30:22,974 --> 00:30:23,938 >> האם אתה רוצה בכלל? 702 00:30:23,938 --> 00:30:34,703 703 00:30:34,703 --> 00:30:36,675 עוד מישהו בחדר הזה רוצה סוכרייה? 704 00:30:36,675 --> 00:30:47,030 705 00:30:47,030 --> 00:30:49,206 אתה יכול גם לקחת יותר מאחד, בחורים. 706 00:30:49,206 --> 00:30:50,330 קח קומץ אם אתה רוצה. 707 00:30:50,330 --> 00:30:52,690 708 00:30:52,690 --> 00:30:53,190 מאי גם כן. 709 00:30:53,190 --> 00:30:54,929 710 00:30:54,929 --> 00:30:55,720 טוב שכולם? 711 00:30:55,720 --> 00:30:57,561 712 00:30:57,561 --> 00:30:58,060 אישור. 713 00:30:58,060 --> 00:31:02,750 714 00:31:02,750 --> 00:31:07,290 >> כמו כן, אני הולך ליצור טופס Google אנונימי, 715 00:31:07,290 --> 00:31:09,830 ואתם יכולים פשוט להגיש משוב לאחר כל סעיף 716 00:31:09,830 --> 00:31:14,115 אם יש משהו שאתה רוצה לשפר או משהו שאתה רוצה לעשות. 717 00:31:14,115 --> 00:31:17,135 אם אני קטן ומלאה חיים יותר מדי בשבילך, אני יכול למתן את זה. 718 00:31:17,135 --> 00:31:18,510 719 00:31:18,510 --> 00:31:20,885 אני ליצור ושלשלוח את זה לכל לך אחר כך. 720 00:31:20,885 --> 00:32:39,420 721 00:32:39,420 --> 00:32:40,020 >> בְּסֵדֶר. 722 00:32:40,020 --> 00:32:41,050 אז בואו נתחיל בקטן. 723 00:32:41,050 --> 00:32:42,740 איך היינו לאתחל המערך שלנו? 724 00:32:42,740 --> 00:32:49,690 725 00:32:49,690 --> 00:32:51,670 מה סוג המערך שלנו? 726 00:32:51,670 --> 00:32:52,410 Int, נכון? 727 00:32:52,410 --> 00:32:54,740 אוקיי, אז מה אתה רוצה לקרוא המערך שלך? 728 00:32:54,740 --> 00:32:57,880 729 00:32:57,880 --> 00:32:59,230 מערך int, מגניב. 730 00:32:59,230 --> 00:33:04,200 בסדר, אז יש לנו מערך int int שווה, ומה יש לנו אחרי זה? 731 00:33:04,200 --> 00:33:07,009 732 00:33:07,009 --> 00:33:08,259 תלמיד: [לא ברור] בסוגריים. 733 00:33:08,259 --> 00:33:09,140 אליסון: סוגריים מסולסלים. 734 00:33:09,140 --> 00:33:10,330 735 00:33:10,330 --> 00:33:11,775 ואז בתוך הסוגריים המסולסלים? 736 00:33:11,775 --> 00:33:14,360 737 00:33:14,360 --> 00:33:16,830 אחד פסיק שתיים פסיק שלוש. 738 00:33:16,830 --> 00:33:17,330 מגניב. 739 00:33:17,330 --> 00:33:18,660 אז זה בסדר. 740 00:33:18,660 --> 00:33:21,480 אז עכשיו יש לנו שלנו ללולאה. 741 00:33:21,480 --> 00:33:24,180 אז בחלקו הראשון שלנו ללולאה, מה יש לנו? 742 00:33:24,180 --> 00:33:25,796 743 00:33:25,796 --> 00:33:27,420 >> תלמיד: אני שווה 0? 744 00:33:27,420 --> 00:33:31,400 >> אליסון: אז int i שווה 0, ואז מה המצב שלנו? 745 00:33:31,400 --> 00:33:33,750 746 00:33:33,750 --> 00:33:36,120 מה שאני הולך להיות פחות מ? 747 00:33:36,120 --> 00:33:39,510 פחות משלושה, ו איך אנחנו לעדכן אותי? 748 00:33:39,510 --> 00:33:41,630 אני פלוס פלוס, מעדכן אותו על ידי אחד. 749 00:33:41,630 --> 00:33:46,150 ואז אנחנו הולכים לי כמה printf של המספר השלם, 750 00:33:46,150 --> 00:33:49,530 ומה שעבר חלק זה בעצם 751 00:33:49,530 --> 00:33:51,370 הולך להגיד את מה שאנחנו צריכים להדפיס? 752 00:33:51,370 --> 00:33:55,610 753 00:33:55,610 --> 00:33:59,120 זה יהיה שמו של מערך, שהוא מערך int, נכון? 754 00:33:59,120 --> 00:34:01,090 ומה בסוגריים של מערך int? 755 00:34:01,090 --> 00:34:02,540 756 00:34:02,540 --> 00:34:03,640 אני. 757 00:34:03,640 --> 00:34:06,550 [? אז] אני? בשם שלי דוגמא, אבל הנה לך. 758 00:34:06,550 --> 00:34:07,939 759 00:34:07,939 --> 00:34:08,480 לא כל כך נורא. 760 00:34:08,480 --> 00:34:09,250 כולם טובים? 761 00:34:09,250 --> 00:34:10,220 762 00:34:10,220 --> 00:34:10,719 מגניב. 763 00:34:10,719 --> 00:34:12,949 764 00:34:12,949 --> 00:34:14,340 >> אז סיימנו עם המערכים. 765 00:34:14,340 --> 00:34:15,190 מזל טוב. 766 00:34:15,190 --> 00:34:18,274 אתה הצליח לחזר דרך כל the-- כן? 767 00:34:18,274 --> 00:34:19,705 >> תלמיד: [לא ברור] 768 00:34:19,705 --> 00:34:20,659 >> אליסון: כן. 769 00:34:20,659 --> 00:34:26,383 770 00:34:26,383 --> 00:34:27,798 >> תלמיד: יש לי שאלה. 771 00:34:27,798 --> 00:34:30,288 אתה אמור להגביה את הפלטה? 772 00:34:30,288 --> 00:34:34,150 >> אליסון: אז הפלטה צריכה להיות בקו עם ללולאה, ואז הכל 773 00:34:34,150 --> 00:34:35,699 בתוך יש מסוכסך הפלטה. 774 00:34:35,699 --> 00:34:37,824 >> תלמיד: בסדר, צריך ללולאה להיות מסוכסך? 775 00:34:37,824 --> 00:34:41,159 >> אליסון: ללולאה לא צריך להיות מסוכסך בשלב זה. 776 00:34:41,159 --> 00:34:46,750 אם הייתם בעיקרי, אם למעשה הייתה פונקציה העיקרית כאן, 777 00:34:46,750 --> 00:34:48,929 זה יהיה מסוכסך מראשי. 778 00:34:48,929 --> 00:34:52,590 אבל במקרה הזה, זה בסדר. 779 00:34:52,590 --> 00:34:53,354 כן, שאלה. 780 00:34:53,354 --> 00:34:55,687 >> תלמיד: האם אתה צריך סוגריים אחרי דוגמא? 781 00:34:55,687 --> 00:34:59,050 782 00:34:59,050 --> 00:35:01,260 >> אליסון: כן, אם אתה אתחול את זה ככה. 783 00:35:01,260 --> 00:35:03,430 784 00:35:03,430 --> 00:35:06,860 אז לזכור, זה השני דרך של אתחול מערך שבו 785 00:35:06,860 --> 00:35:10,680 יש לנו הפלטה ולאחר מכן בפועל שלנו נתונים מופרדים בפסיקים בתוך. 786 00:35:10,680 --> 00:35:14,700 787 00:35:14,700 --> 00:35:17,281 >> תלמיד: חשבתי שיש סוגריים לדוגמא ש. 788 00:35:17,281 --> 00:35:19,010 >> אליסון: לא, הם פלטה. 789 00:35:19,010 --> 00:35:20,039 הם פלטה. 790 00:35:20,039 --> 00:35:22,330 אם אתה מאתחל אותו כי דרך שנייה, זה פלטה. 791 00:35:22,330 --> 00:35:28,780 אם היינו אומר, int example-- אם רק רצינו מערך ריק לints, 792 00:35:28,780 --> 00:35:32,270 זה יהיה דוגמא int סוגר שלוש. 793 00:35:32,270 --> 00:35:34,670 סוגריים מייצגים את הגודל. 794 00:35:34,670 --> 00:35:36,720 כאשר יש לך פלטה, זה הנתונים בפועל 795 00:35:36,720 --> 00:35:39,244 אתה מכניס את זה בדרך זו. 796 00:35:39,244 --> 00:35:40,535 אנחנו יכולים לגלול אחורה ממש מהר. 797 00:35:40,535 --> 00:35:42,370 798 00:35:42,370 --> 00:35:48,010 >> אז בזה, זה רק שלנו מערך ראשוני, אתחול. 799 00:35:48,010 --> 00:35:51,640 והנה, אנחנו באופן אישי הקצאת מקומות אליהם, 800 00:35:51,640 --> 00:35:56,730 כך זה מייצג את המדד שלנו מערך, וזו הסיבה שיש לנו בסוגריים. 801 00:35:56,730 --> 00:36:01,630 אבל כאן, אם אתה שם לב, יש לנו עזבו הסוגריים בלי גודל, 802 00:36:01,630 --> 00:36:05,969 ואנחנו לאתחל אותו עם הנתונים בפועל כל אחד ב-עם פלטה. 803 00:36:05,969 --> 00:36:08,260 תלמיד: אז למה אין לנו בסוגריים בדוגמא זו? 804 00:36:08,260 --> 00:36:11,030 אליסון: אז, שבו חלק? 805 00:36:11,030 --> 00:36:14,645 תלמיד: לא היינו למשל, סוגריים דוגמא int 806 00:36:14,645 --> 00:36:19,710 שווה פלטה [לא ברורה] סוגריים לדוגמא. 807 00:36:19,710 --> 00:36:20,900 >> אליסון: הו, אני מצטער. 808 00:36:20,900 --> 00:36:21,560 אתה צודק. 809 00:36:21,560 --> 00:36:22,690 יש לנו בסוגריים יש. 810 00:36:22,690 --> 00:36:23,486 מצטער חבר, הרע שלי. 811 00:36:23,486 --> 00:36:25,150 812 00:36:25,150 --> 00:36:27,560 כן, צריך להיות לך סוגריים אחרי הדוגמא. 813 00:36:27,560 --> 00:36:28,850 אתה צודק לגמרי. 814 00:36:28,850 --> 00:36:29,750 >> תלמיד: [לא ברור] לא עושה את זה. 815 00:36:29,750 --> 00:36:31,270 >> אליסון: לא, אתה צריך שתהיה לי סוגריים, כי אחר זה 816 00:36:31,270 --> 00:36:32,810 לא הולך להצהיר על מערך. 817 00:36:32,810 --> 00:36:33,685 תלמיד: [לא ברור]. 818 00:36:33,685 --> 00:36:34,200 מצטער על זה. 819 00:36:34,200 --> 00:36:36,200 >> אליסון: מצטער, אתה צריך סוגריים אחרי הדוגמא. 820 00:36:36,200 --> 00:36:36,620 821 00:36:36,620 --> 00:36:37,120 טעות דפוס. 822 00:36:37,120 --> 00:36:40,650 823 00:36:40,650 --> 00:36:43,160 לתפוס טוב, כוכב זהב בשבילך. 824 00:36:43,160 --> 00:36:47,730 כמו כן, אם אתה שואל את שאלה, אם אתם היו אומרים לי רק השמות שלך, 825 00:36:47,730 --> 00:36:48,570 אני אשמח ש. 826 00:36:48,570 --> 00:36:50,630 אני אשמח להיות מסוגל יודע את כל השמות שלך. 827 00:36:50,630 --> 00:36:53,187 אני לא הולך לקור קורא לך, אני ממש 828 00:36:53,187 --> 00:36:54,520 אין רק רוצה לדעת את השם שלכם. 829 00:36:54,520 --> 00:36:57,530 אז בבקשה בעצם אומר לי את השמות שלכם. 830 00:36:57,530 --> 00:36:58,426 >> לאה: לאה. 831 00:36:58,426 --> 00:36:59,340 >> אליסון: לאה. 832 00:36:59,340 --> 00:37:03,960 אוקיי, אז functions-- אני יודע בקצרה הם דיברו על זה בהרצאה. 833 00:37:03,960 --> 00:37:07,590 אז פונקציות הן סוג של פשוט כמו הדברים בגודל ביס הקטנים האלה 834 00:37:07,590 --> 00:37:11,525 שבו אתה עובר בתשומות, משהו קסום קורה, ואתה מקבל פלטים. 835 00:37:11,525 --> 00:37:12,680 836 00:37:12,680 --> 00:37:13,180 מגניב. 837 00:37:13,180 --> 00:37:15,013 אז אתה בעצם משמש כבר הרבה כאלה. 838 00:37:15,013 --> 00:37:15,970 839 00:37:15,970 --> 00:37:18,840 קבל int, תקבל מחרוזת, ו הדפסה. 840 00:37:18,840 --> 00:37:21,790 כל אלה הם הפונקציות שבו אתה פשוט קורא להם, 841 00:37:21,790 --> 00:37:24,370 יש המון דברים קסומים קורה ברקע 842 00:37:24,370 --> 00:37:27,390 שאתה לא בהכרח רואה, ואתה מקבל את מה שאתה רוצה. 843 00:37:27,390 --> 00:37:30,280 או לפחות שאתה מקבל מה שאתה מקווה שאתה רוצה. 844 00:37:30,280 --> 00:37:31,920 845 00:37:31,920 --> 00:37:35,620 >> ובעצם הנקודה של פונקציות, ואחד הנושאים העיקריים של CS, 846 00:37:35,620 --> 00:37:38,700 הוא לשבור את הקוד שלך לחתיכות לניהול. 847 00:37:38,700 --> 00:37:41,520 כאשר אתה מתחיל בכתיבה תוכניות ארוכות באמת אלה, 848 00:37:41,520 --> 00:37:44,970 או בגרד כאשר היה לך הרעיון הגדול הזה למשחק, 849 00:37:44,970 --> 00:37:48,070 אתה צריך להיות מסוגל לשבור אותו עד ל, כמו, אישור, איך אני מתחיל? 850 00:37:48,070 --> 00:37:50,470 מה הן החתיכות הקטנות שאני צריך? 851 00:37:50,470 --> 00:37:53,320 אה, אני צריך לשאול משתמש למשהו. 852 00:37:53,320 --> 00:37:54,830 עכשיו אני צריך להדפיס משהו. 853 00:37:54,830 --> 00:37:56,590 אה, אני צריך לחשב ערך זה. 854 00:37:56,590 --> 00:38:00,050 >> וללמוד איך לשבור אותך קוד והבעיות הגדולות ש 855 00:38:00,050 --> 00:38:02,740 יש לי לחתיכות קטנות האלה ויצירת פונקציות 856 00:38:02,740 --> 00:38:05,330 הוא למעשה אחד אבני יסוד גדול של CS. 857 00:38:05,330 --> 00:38:06,440 858 00:38:06,440 --> 00:38:11,740 אז אתה יכול לחשוב על פונקציה בדיוק כפי ש כמו קופסא שחורה, קופסא שחורה קסומה, 859 00:38:11,740 --> 00:38:15,030 כי אתה לשים את הדברים ב ולקבל פלט. 860 00:38:15,030 --> 00:38:16,290 861 00:38:16,290 --> 00:38:19,460 ושאר התכנית לא צריך לדעת בהכרח 862 00:38:19,460 --> 00:38:21,150 מה קורה בתוך הקופסה שחורה ש. 863 00:38:21,150 --> 00:38:24,190 כל מה שמעניין אותו זה מה ש נכנס ומה יוצא. 864 00:38:24,190 --> 00:38:26,230 865 00:38:26,230 --> 00:38:26,730 מגניב. 866 00:38:26,730 --> 00:38:27,820 >> אז למה פונקציות? 867 00:38:27,820 --> 00:38:33,240 Organization-- כמו שאמרתי, כשאתה התמודדות עם בסיסי קוד גדולים מאוד, 868 00:38:33,240 --> 00:38:37,357 איך לך לארגן את הקוד שלך יהיה הרבה יותר קל אם אתה משתמש בפונקציות. 869 00:38:37,357 --> 00:38:39,190 מכיוון שאתה יכול להיות, כמו, אישור, זה 870 00:38:39,190 --> 00:38:41,849 זה מה שהפונקציה הזו עושה ו הנה מה שעוד אחד עושה. 871 00:38:41,849 --> 00:38:43,890 ואתה יכול בקלות לראות איך כולם מתאים זה לזה. 872 00:38:43,890 --> 00:38:45,590 873 00:38:45,590 --> 00:38:48,210 אז לשבור אותו לכל subparts ניהול אלה. 874 00:38:48,210 --> 00:38:51,860 >> אז simplification-- אני בטוח שאתם כל ראה את זה, כמו שאמרתי, עם גרד. 875 00:38:51,860 --> 00:38:53,230 876 00:38:53,230 --> 00:38:56,790 יש לך הרעיון הזה גדול, ו אתם כמו, איך עושים את כל העבודה הזאת? 877 00:38:56,790 --> 00:38:59,710 אבל אם אתה מתקרב אליו טיפין טיפין, אתה אומר, בסדר, 878 00:38:59,710 --> 00:39:03,650 כיצד אוכל לבצע ספרייט אחד לצוף על פני המסך? 879 00:39:03,650 --> 00:39:04,805 זה קצת יותר קל. 880 00:39:04,805 --> 00:39:06,000 881 00:39:06,000 --> 00:39:09,590 שימוש כל כך טוב של גורם פונקציה הקוד שלך הרבה יותר קל לקרוא. 882 00:39:09,590 --> 00:39:13,800 זה עושה את זה קל יותר לאתר באגים שכ אתה נכנסת לסטי הבעיה במועד מאוחר יותר, 883 00:39:13,800 --> 00:39:15,900 אתה הולך באמת רוצה להיות מסוגל לעשות. 884 00:39:15,900 --> 00:39:17,900 והם גם קלים יותר כדי לתכנן וליישם. 885 00:39:17,900 --> 00:39:21,100 אתה יכול לקודד את קטן לתפקד במהירות יחסית 886 00:39:21,100 --> 00:39:25,260 ולוודא שזה עובד לעומת מנסה כדי ליצור תכנית ארוכה כל כך 887 00:39:25,260 --> 00:39:28,960 ולאחר מכן סוג של לעבור ו לראות מה עובד ומה לא. 888 00:39:28,960 --> 00:39:30,300 >> ולאחר מכן שימוש חוזר. 889 00:39:30,300 --> 00:39:33,380 אז פונקציות צריכים רק להיות כתוב פעם אחת, 890 00:39:33,380 --> 00:39:35,586 ואז אתה יכול להשתמש בם כמו פעמים רבות ככל האפשר. 891 00:39:35,586 --> 00:39:37,210 אז זה, כמו, ידידותי לסביבה במובן מסוים. 892 00:39:37,210 --> 00:39:39,660 893 00:39:39,660 --> 00:39:42,070 אם היה לך דברים כמו ו הדפסה, שבו אתה 894 00:39:42,070 --> 00:39:47,420 הייתי צריך לכתוב את הקסם שהולך מאחורי להדפיס F בכל פעם 895 00:39:47,420 --> 00:39:51,040 אתה רוצה להדפיס משהו, אתה יהיה די חולה ועייף מזה 896 00:39:51,040 --> 00:39:51,650 עד הסוף. 897 00:39:51,650 --> 00:39:52,660 898 00:39:52,660 --> 00:39:55,292 >> אחד מהדברים שאתה ללמוד בכיתות מאוחר יותר CS, 899 00:39:55,292 --> 00:39:57,000 או אחד הטוב ביותר עצות שאני מקבל 900 00:39:57,000 --> 00:40:00,870 כלומר, אם אתה מעתיק ומדביק קוד, זה כנראה צריך להיות פונקציה. 901 00:40:00,870 --> 00:40:01,880 902 00:40:01,880 --> 00:40:06,007 אם יש לך את אותו הדבר קווים לאורך כל הקוד שלך, 903 00:40:06,007 --> 00:40:08,090 אם אתה בחשבון אותם, הקוד שלך כנראה שהיית עושה 904 00:40:08,090 --> 00:40:11,860 חמש להיות, כמו, זמנים קצרים יותר ולהיות הרבה יותר קל לקריאה. 905 00:40:11,860 --> 00:40:15,230 ובמקום לנסות לפתור כל המקומות השונים הללו שבו דברים 906 00:40:15,230 --> 00:40:18,021 עלול להשתבש, יש לך תפקיד אחד שאתה מקבל כדי לפתור. 907 00:40:18,021 --> 00:40:19,230 908 00:40:19,230 --> 00:40:21,890 ואני מבטיח, הרבה זה אולי נראה סוג של מופשט עכשיו, 909 00:40:21,890 --> 00:40:24,620 אבל כפי שאתה להיכנס מאוחר יותר והבעיה מאוחר יותר קובעת, 910 00:40:24,620 --> 00:40:28,950 זה יעשה הרבה יותר מובן ובאמת להיות מונע על הבית. 911 00:40:28,950 --> 00:40:31,775 האם יש שאלות על פונקציות עד כה? 912 00:40:31,775 --> 00:40:32,650 למה אנחנו משתמשים בהם? 913 00:40:32,650 --> 00:40:34,775 אני יודע שלא קיבלתי לגרגירי nitty עדיין. 914 00:40:34,775 --> 00:40:40,610 אז הגדרת function-- בדיוק כמו מערכים, אנחנו צריכים איזה של-- זה 915 00:40:40,610 --> 00:40:41,860 רק הפלט הכללי. 916 00:40:41,860 --> 00:40:45,110 אז זה פונקציה זה רק הולך קובייה קצת קלט. 917 00:40:45,110 --> 00:40:50,120 ובעמוד הבא, למעשה, יש לנו את כל הדברים האלה מדהים קטנים כאן. 918 00:40:50,120 --> 00:40:52,420 אז, כל אחד יכול לקרוא ש, מתוך סקרנות? 919 00:40:52,420 --> 00:40:55,050 אני יודע סגול ושחור יכול להיות קצת קשה. 920 00:40:55,050 --> 00:41:00,730 >> אבל דברים גדולים יודע-- כך הראשון אחד כאן הוא סוג ההחזרה שלנו. 921 00:41:00,730 --> 00:41:05,270 על הפלט אז זה מדבר של פונקציה זו בעת, במקרה זה, 922 00:41:05,270 --> 00:41:08,990 אנחנו שמים בחלק המספר, מה שאנחנו מקבלים הוא שחתוך לקוביות מספר. 923 00:41:08,990 --> 00:41:11,090 אז זה צריך להיות int במקרה זה. 924 00:41:11,090 --> 00:41:14,055 אולי זה יהיה כפול או משהו אחר מאוחר יותר, אבל במקרה הזה, 925 00:41:14,055 --> 00:41:14,555 זה int. 926 00:41:14,555 --> 00:41:15,620 927 00:41:15,620 --> 00:41:19,440 >> עם ג, אתה תמיד צריך סוג החזרה. 928 00:41:19,440 --> 00:41:20,267 זה יהיה int. 929 00:41:20,267 --> 00:41:20,975 זה יהיה לצוף. 930 00:41:20,975 --> 00:41:22,180 זה יהיה כפול. 931 00:41:22,180 --> 00:41:25,370 אבל אתה צריך לציין מה פונקציה זו הולכת לחזור. 932 00:41:25,370 --> 00:41:26,480 933 00:41:26,480 --> 00:41:29,170 אחרת זה יהיה לצעוק על אתה, וזה לא יעבור הידור. 934 00:41:29,170 --> 00:41:30,462 אתה תהיה עצוב, ואני אהיה עצוב. 935 00:41:30,462 --> 00:41:31,420 וזה פשוט לא טוב. 936 00:41:31,420 --> 00:41:31,940 אישור. 937 00:41:31,940 --> 00:41:34,290 >> ולאחר מכן יש לנו שם הפונקציה שלנו. 938 00:41:34,290 --> 00:41:38,440 וכפי שאתם יכולים לראות כאן, עם ג יש פרדיגמה מאוד עקבית זו. 939 00:41:38,440 --> 00:41:42,630 מה הסוג שלך, מה זה שם, ואז משהו אחר בסופו של הדבר. 940 00:41:42,630 --> 00:41:45,550 אז יש לנו סוג ההחזרה שלנו, השם שלנו הפונקציה, ולאחר מכן 941 00:41:45,550 --> 00:41:49,320 יש לנו הכותרת שלנו עם רשימת הפרמטרים שלנו. 942 00:41:49,320 --> 00:41:52,080 >> אז רשימת הפרמטרים היא, מה הוא פונקציה זו הולכת לקחת ב? 943 00:41:52,080 --> 00:41:56,360 רשימת פרמטרים היא פשוט מילה נרדפת ל, מה הן התשומות שלנו? 944 00:41:56,360 --> 00:42:00,230 ובאותו אופן שאנו צריך להגדיר הפונקציה שלנו 945 00:42:00,230 --> 00:42:03,210 ולתת לו תמורה הקלד, כל אחד מהתשומות שלנו 946 00:42:03,210 --> 00:42:05,350 צריך להיות סוג הקשורים אליו. 947 00:42:05,350 --> 00:42:08,850 אז אנחנו יודעים מה התפקיד שלנו למעשה יכול לעבוד עם. 948 00:42:08,850 --> 00:42:11,290 >> אז במקרה הזה, יש לנו כמה קלט int. 949 00:42:11,290 --> 00:42:14,660 אז שוב, זה יהיה הסוג ומה שאתה קורא לזה. 950 00:42:14,660 --> 00:42:16,500 951 00:42:16,500 --> 00:42:19,040 ואז, כפי שאתה רואה כאן, יש לנו הגוף שלנו. 952 00:42:19,040 --> 00:42:23,600 אז יש לנו כמה פלט int, ש רק הפעמים הקלט שלנו עצמו 953 00:42:23,600 --> 00:42:25,810 פעמים את עצמו, שרק קוביות זה. 954 00:42:25,810 --> 00:42:27,610 ואז אנחנו חוזרים פלט ש. 955 00:42:27,610 --> 00:42:32,140 >> אז כפי שאתם רואים כאן, יש לנו int פעמים פעמים int int, 956 00:42:32,140 --> 00:42:35,420 כך היא מחזירה int, ש הוכרז שם. 957 00:42:35,420 --> 00:42:38,240 אז כל מה שהוא מלוכד. 958 00:42:38,240 --> 00:42:39,210 הכל שמח. 959 00:42:39,210 --> 00:42:40,250 הפונקציה שלך תפעל. 960 00:42:40,250 --> 00:42:41,192 961 00:42:41,192 --> 00:42:42,650 וזו רק הדבר הכללי. 962 00:42:42,650 --> 00:42:46,750 אז תמיד להיות סוג חזרה, שם, ורשימת הפרמטרים שלך. 963 00:42:46,750 --> 00:42:48,830 כל דבר בך רשימת פרמטרים, או קלט, 964 00:42:48,830 --> 00:42:51,410 צריך להיות סוג הקשורים אליו. 965 00:42:51,410 --> 00:42:54,210 ואז יש לך שלך גוף כאן עם כל מה ש 966 00:42:54,210 --> 00:42:55,590 אתה רוצה לעשות עם הקלט שלך. 967 00:42:55,590 --> 00:42:57,390 968 00:42:57,390 --> 00:43:00,410 >> ואז ברור שאתה רוצה להחזיר משהו. 969 00:43:00,410 --> 00:43:02,630 לפעמים פונקציות יהיו פשוט לחזור. 970 00:43:02,630 --> 00:43:06,090 הם לא באמת לחזור משהו כדי שתוכל להשתמש. 971 00:43:06,090 --> 00:43:08,660 אבל אתה צריך לחזור בדרך כלשהי. 972 00:43:08,660 --> 00:43:12,900 וכאשר אתה עושה פונקציות, משלך 973 00:43:12,900 --> 00:43:15,430 אנחנו יכולים להיכנס לזה קצת יותר לעומק. 974 00:43:15,430 --> 00:43:18,880 באופן אישי, אם אתה רוצה, יש הרבה דברים שונים שאתה יכול לעשות שם. 975 00:43:18,880 --> 00:43:21,350 976 00:43:21,350 --> 00:43:22,140 כולם טובים? 977 00:43:22,140 --> 00:43:25,900 שום דבר ברשימה זו שאתה רוצה אותי ללכת על, שאתה לא מבין? 978 00:43:25,900 --> 00:43:27,204 979 00:43:27,204 --> 00:43:28,120 כולם טובים שם? 980 00:43:28,120 --> 00:43:29,071 981 00:43:29,071 --> 00:43:29,570 מגניב. 982 00:43:29,570 --> 00:43:31,350 983 00:43:31,350 --> 00:43:32,120 מדהים. 984 00:43:32,120 --> 00:43:34,700 >> אוקיי, אז אנחנו מכניסים כולם ביחד זה עכשיו. 985 00:43:34,700 --> 00:43:35,720 986 00:43:35,720 --> 00:43:41,201 אז יש לנו קצת קלט קוביית int, כך זה הוא תכנית מלאה כאן. 987 00:43:41,201 --> 00:43:42,950 עד עכשיו, יש לי סוג של עושה לך 988 00:43:42,950 --> 00:43:45,699 קטעי בחורים שאולי הולך בתוך תכנית. 989 00:43:45,699 --> 00:43:47,240 אנחנו פשוט הסתכלנו בפונקציות. 990 00:43:47,240 --> 00:43:48,448 אבל הנה תכנית כולה. 991 00:43:48,448 --> 00:43:49,400 992 00:43:49,400 --> 00:43:53,690 אז כמה מכם זוכרים את אב טיפוס מילה מהרצאה? 993 00:43:53,690 --> 00:43:54,750 994 00:43:54,750 --> 00:43:55,300 מגניב. 995 00:43:55,300 --> 00:43:55,890 יש לנו אחד. 996 00:43:55,890 --> 00:43:57,160 997 00:43:57,160 --> 00:43:58,110 מה שמך? 998 00:43:58,110 --> 00:43:58,850 >> סטף: סטף. 999 00:43:58,850 --> 00:43:59,475 >> אליסון: סטף? 1000 00:43:59,475 --> 00:44:01,030 אישור, מדהים. 1001 00:44:01,030 --> 00:44:03,310 אז, אתה זוכר מה הוא אב-טיפוס? 1002 00:44:03,310 --> 00:44:04,651 1003 00:44:04,651 --> 00:44:10,230 >> תלמיד: אתה אומר [לא ברור] לפני שאתה בעצם מתמודד עם זה. 1004 00:44:10,230 --> 00:44:11,700 >> אליסון: האם אתה זוכר למה? 1005 00:44:11,700 --> 00:44:13,158 >> תלמיד: מס ' 1006 00:44:13,158 --> 00:44:14,620 >> אליסון: אישור. 1007 00:44:14,620 --> 00:44:16,090 כוכב זהב. 1008 00:44:16,090 --> 00:44:19,470 אז כן, יש לנו אב טיפוס לפני כן, כי אחר, 1009 00:44:19,470 --> 00:44:21,260 המהדר שלנו הולך לצעוק עלינו. 1010 00:44:21,260 --> 00:44:24,294 זה הולך לומר, אישור, מה היא פונקצית קובייה זה? 1011 00:44:24,294 --> 00:44:26,460 כמו, פשוטו כמשמעו, שיש לך אמר לי שום דבר על זה. 1012 00:44:26,460 --> 00:44:28,110 זה כמו שאתה נכנס לכיתה, 1013 00:44:28,110 --> 00:44:29,320 ומישהו כמו, יש חידון היום. 1014 00:44:29,320 --> 00:44:31,380 ואתם כמו, אף פעם לא סיפר לי על זה. 1015 00:44:31,380 --> 00:44:32,930 אני לא שמח איתנו. 1016 00:44:32,930 --> 00:44:34,300 1017 00:44:34,300 --> 00:44:37,020 אב הטיפוס הוא בעצם כמו תכנית הלימודים שלך אומרים, יסתכל. 1018 00:44:37,020 --> 00:44:37,900 ראשים למעלה. 1019 00:44:37,900 --> 00:44:39,570 יש הולך להיות חידון ביום זה. 1020 00:44:39,570 --> 00:44:41,420 לא להתחרפן כשאתה מגיע לזה. 1021 00:44:41,420 --> 00:44:42,690 אתה הולך להיות בסדר. 1022 00:44:42,690 --> 00:44:48,170 >> אז כל האב-טיפוס זה הוא אומר לי עיקרי, אני הולך להשתמש בפונקציה זו. 1023 00:44:48,170 --> 00:44:51,010 אני מבטיח שאני מגדיר אותה מאוחר יותר. 1024 00:44:51,010 --> 00:44:52,260 לא להתחרפן עליי. 1025 00:44:52,260 --> 00:44:54,750 רק לקמפל ולעשות את מה שאני אומר לך. 1026 00:44:54,750 --> 00:44:58,880 אז יש לנו אב הטיפוס יש רק כדי להפוך את המהדר שלנו מאושר. 1027 00:44:58,880 --> 00:45:04,360 וזה בעצם הבטחה ש שהגדרת פונקציה זו מאוחר יותר 1028 00:45:04,360 --> 00:45:07,960 ושאתה לא רק קורא הדבר האקראי הזה ש 1029 00:45:07,960 --> 00:45:10,070 אינו יודע מה אתה הולך לעשות. 1030 00:45:10,070 --> 00:45:11,910 >> אז במקרה הזה, יש לי העיקרי כאן. 1031 00:45:11,910 --> 00:45:14,660 נאתחל את חלק x מספר שלם. 1032 00:45:14,660 --> 00:45:15,620 זה שתי. 1033 00:45:15,620 --> 00:45:17,510 אנחנו הולכים להדפיס את מה שהוא x. 1034 00:45:17,510 --> 00:45:18,800 אנחנו הולכים לקוביית x. 1035 00:45:18,800 --> 00:45:21,520 כפי שאתם רואים, יש לנו שלנו הצהרה על פונקציה 1036 00:45:21,520 --> 00:45:23,770 כאן למטה ש דיבר על העבר. 1037 00:45:23,770 --> 00:45:28,260 זה יהיה קוביית x, ולאחר מכן, אם זכור, פונקצית הקובייה למעשה 1038 00:45:28,260 --> 00:45:31,340 מחזיר מספר שלם ל שלנו, אשר מאוחסן 1039 00:45:31,340 --> 00:45:35,860 בx שוב, כדי שנוכל להדפיס שמונה, או x קובייה עכשיו החוצה. 1040 00:45:35,860 --> 00:45:37,170 1041 00:45:37,170 --> 00:45:38,920 האם זה הגיוני לכולם? 1042 00:45:38,920 --> 00:45:40,360 אנחנו טובים? 1043 00:45:40,360 --> 00:45:41,160 בְּסֵדֶר. 1044 00:45:41,160 --> 00:45:41,660 מדהים. 1045 00:45:41,660 --> 00:45:45,540 1046 00:45:45,540 --> 00:45:46,840 >> בְּסֵדֶר. 1047 00:45:46,840 --> 00:45:50,879 כמה מכם הבחורים זוכר את זה כל כך זה 1048 00:45:50,879 --> 00:45:52,670 הוא בעצם רק שלך מחסנית והערימה שלך, 1049 00:45:52,670 --> 00:45:56,510 רק הדמיה של איך זיכרון מאוחסן כאן. 1050 00:45:56,510 --> 00:45:58,200 1051 00:45:58,200 --> 00:46:01,400 אז אנחנו פשוט רוצים לעשות בטוח שאתה מבין 1052 00:46:01,400 --> 00:46:03,680 איך אלה מיוצגים בזיכרון. 1053 00:46:03,680 --> 00:46:07,670 אם אתה לוקח שיעורים כמו CS61 ודברים מאוחר יותר, 1054 00:46:07,670 --> 00:46:10,570 אתה מקבל כדי ללמוד את זה הרבה יותר בעומק, וזה ממש מגניב. 1055 00:46:10,570 --> 00:46:11,730 אני מאוד ממליץ על זה. 1056 00:46:11,730 --> 00:46:12,740 1057 00:46:12,740 --> 00:46:14,720 אבל לעת עתה, אני אתן לי אתה הסקירה הרחבה 1058 00:46:14,720 --> 00:46:16,950 ולכן אין לך יודע nitty גרגירי. 1059 00:46:16,950 --> 00:46:20,820 >> אז החלק העליון רק קטע טקסט ש מכיל אפסים ואחדים בפועל, 1060 00:46:20,820 --> 00:46:23,740 בינארי של. 1061 00:46:23,740 --> 00:46:27,510 וזה משמש לאחסון משתנים גלובליים אם יש לך. 1062 00:46:27,510 --> 00:46:28,870 1063 00:46:28,870 --> 00:46:32,240 כפי שאתה לנוע למטה, אנחנו יש לי, כפי שאתה רואה כאן, 1064 00:46:32,240 --> 00:46:34,670 הנתונים אותחלו, שלא אותחל נתונים, ולאחר מכן ערימה. 1065 00:46:34,670 --> 00:46:35,800 1066 00:46:35,800 --> 00:46:38,584 >> אז אנחנו לא ממש מדברים על הערימה עכשיו. 1067 00:46:38,584 --> 00:46:39,500 עוד נגיע לזה מאוחר יותר. 1068 00:46:39,500 --> 00:46:40,762 1069 00:46:40,762 --> 00:46:42,970 לעת עתה, אני פשוט הולך ל מניף את הידיים שלי ולהיות כמו, 1070 00:46:42,970 --> 00:46:44,553 אתה לא צריך לדעת על זה עכשיו. 1071 00:46:44,553 --> 00:46:46,100 1072 00:46:46,100 --> 00:46:49,060 אבל נדבר קצת קצת על הערימה. 1073 00:46:49,060 --> 00:46:53,050 אז הערימה היא where-- יש לנו זום ב. 1074 00:46:53,050 --> 00:46:58,590 זהו למעשה איך התכנית רק הסתכלנו מתרחש בזיכרון. 1075 00:46:58,590 --> 00:47:01,630 >> אז מה שקורה הוא, בכל זמן שאנו מכנים פונקציה, 1076 00:47:01,630 --> 00:47:04,180 אנחנו מקבלים את מה שנקרא ערימה מסגרת, שהוא אחד מאלה. 1077 00:47:04,180 --> 00:47:05,870 פרמטרים אז של עיקריים. 1078 00:47:05,870 --> 00:47:07,944 אז אלה הם הדברים כי אנחנו עוברים לעיקריים. 1079 00:47:07,944 --> 00:47:11,110 אז הם צודקים כאן בתחתית, כי זה הדבר הראשון שאנחנו קוראים. 1080 00:47:11,110 --> 00:47:13,401 ואז אנחנו מגיעים לעיקר של המקומיים, וכאשר אנו אומרים ש, 1081 00:47:13,401 --> 00:47:15,970 אנו מתכוונים למשתנים המקומיים המאוחסנים בתוך עיקרי. 1082 00:47:15,970 --> 00:47:19,950 1083 00:47:19,950 --> 00:47:23,620 אז המקומיים כאן יהיה, כמו, x הוא שווה לשניים במקרה זה. 1084 00:47:23,620 --> 00:47:26,350 כי זה מקומי לעיקרי. 1085 00:47:26,350 --> 00:47:29,745 האם כולם זוכרים היקף, הולך על זה בהרצאה? 1086 00:47:29,745 --> 00:47:31,517 1087 00:47:31,517 --> 00:47:32,017 אישור. 1088 00:47:32,017 --> 00:47:36,110 אז, רק את המשתנים ש אותחלו בתוך עיקרי. 1089 00:47:36,110 --> 00:47:38,550 אז בגלל זה יש לנו [עיקרי? שירה. ?] 1090 00:47:38,550 --> 00:47:40,390 >> ואז בתוך עיקרי, שאנו מכנים קובייה. 1091 00:47:40,390 --> 00:47:41,000 נכון? 1092 00:47:41,000 --> 00:47:44,510 אז אנחנו מקבלים מסגרת אחרת עם הפרמטרים של הקובייה. 1093 00:47:44,510 --> 00:47:47,050 אז במקרה הזה, קובייה פרמטרים הם עכשיו 1094 00:47:47,050 --> 00:47:50,800 x שעברנו ב, שני שעברנו ב. 1095 00:47:50,800 --> 00:47:55,320 ולאחר מכן מקומי של הקובייה, שהוא שם עִקוּב בפועל קורה. 1096 00:47:55,320 --> 00:47:56,450 ואז זה חוזר. 1097 00:47:56,450 --> 00:48:02,120 >> אז מה שקורה הוא כקובייה בעצם עושה מה זה אמור לעשות, הוא חוזר. 1098 00:48:02,120 --> 00:48:07,020 כאשר הוא חוזר, מסגרת זו יוצאת, ו חזר אל עיקרי. 1099 00:48:07,020 --> 00:48:09,160 ואז בתוך עיקרי, אנחנו למעשה יכול להדפיס אותו. 1100 00:48:09,160 --> 00:48:10,840 1101 00:48:10,840 --> 00:48:14,500 לכן, כאשר אתה אתה חוזר משהו, כאשר הפונקציה שלך מחזירה, 1102 00:48:14,500 --> 00:48:19,900 זה כמו שעובר על ערכים אלה ל המסגרת מתחתיו ולאחר מכן עוזבת. 1103 00:48:19,900 --> 00:48:22,200 ודברים צריכים לבצע כדי. 1104 00:48:22,200 --> 00:48:25,550 >> וכשאתה מגיע לתוכניות גדולות יותר, אנחנו יכולים לעשות קרירים ויותר מסובכים 1105 00:48:25,550 --> 00:48:26,470 תרשימים. 1106 00:48:26,470 --> 00:48:29,070 אבל לעת עתה, זה הוא רק סקירה כללית 1107 00:48:29,070 --> 00:48:31,110 אז יש לך סוג של הבנה של מה ש 1108 00:48:31,110 --> 00:48:35,160 קורה כאשר אתה קורא לפונקציה ואיך בעצם שנראה בזיכרון. 1109 00:48:35,160 --> 00:48:37,230 1110 00:48:37,230 --> 00:48:37,770 מגניב? 1111 00:48:37,770 --> 00:48:38,353 כולם טובים? 1112 00:48:38,353 --> 00:48:39,920 1113 00:48:39,920 --> 00:48:40,420 מדהים. 1114 00:48:40,420 --> 00:48:42,070 1115 00:48:42,070 --> 00:48:50,575 >> אז זה אחד שהוא רק מנסה להחליף דברים. 1116 00:48:50,575 --> 00:48:52,260 1117 00:48:52,260 --> 00:48:54,930 כפי שאנו רואים כאן, יש לנו אב טיפוס הפונקציה שלנו 1118 00:48:54,930 --> 00:48:56,900 כך שהמהדר שלנו לא לצעוק עלינו. 1119 00:48:56,900 --> 00:48:59,220 יש לנו כמה עיקרי, ואנחנו רוצה לעבור x ו- y. 1120 00:48:59,220 --> 00:49:00,320 1121 00:49:00,320 --> 00:49:04,129 הם לא עשו בהדגמה זו בהרצאה עדיין, יש להם? 1122 00:49:04,129 --> 00:49:04,670 יש להם לא? 1123 00:49:04,670 --> 00:49:05,900 אישור. 1124 00:49:05,900 --> 00:49:08,450 אז אנחנו הולכים ללכת מעל לזמן קצר מאוד זה. 1125 00:49:08,450 --> 00:49:12,210 אתם תיכנסו לדוגמה זו יותר בעומק, אני חושב, זה שבוע. 1126 00:49:12,210 --> 00:49:15,680 ואז בשבוע הבא אנחנו באמת יכולים לצלול לתוך למה זה לא עובד. 1127 00:49:15,680 --> 00:49:18,810 >> אז יש לנו את החלל הזה החלפת here-- פונקציה. 1128 00:49:18,810 --> 00:49:20,720 אז חלל רק אומר ש שום דבר לא חזר. 1129 00:49:20,720 --> 00:49:22,000 1130 00:49:22,000 --> 00:49:24,110 ויש לנו int החלפה וint ב. 1131 00:49:24,110 --> 00:49:27,046 ויש לנו כמה זמני משתנה זה. 1132 00:49:27,046 --> 00:49:30,050 מקבל שהוקצה ל- B, ולאחר מכן ב מקבל שהוקצה לטמפ ' 1133 00:49:30,050 --> 00:49:32,235 כך שA ו- B של ערכים כעת עברו. 1134 00:49:32,235 --> 00:49:33,510 1135 00:49:33,510 --> 00:49:36,030 >> אבל, טוויסט העלילה, זה לא עובד. 1136 00:49:36,030 --> 00:49:37,390 1137 00:49:37,390 --> 00:49:42,380 וחלק ממנו בעצם יש לעשות עם העובדה ש 1138 00:49:42,380 --> 00:49:48,800 ו- B כאן, אלה שמועברים ב כאן, הם למעשה עותקים של x ו- y. 1139 00:49:48,800 --> 00:49:53,220 לכן, כאשר הפונקציה מחזירה למעשה, זה עובר עותקים, אבל לא 1140 00:49:53,220 --> 00:49:55,960 x ו- y של ממש. 1141 00:49:55,960 --> 00:50:02,370 אז דרך אחת לחשוב על זה הוא that-- להעמיד פנים אלה הם החלפה. 1142 00:50:02,370 --> 00:50:03,130 בסדר? 1143 00:50:03,130 --> 00:50:05,390 אז בעיקרי, יש לנו x ו- y אותחל. 1144 00:50:05,390 --> 00:50:06,530 1145 00:50:06,530 --> 00:50:10,760 אבל כאשר למעשה אנחנו לעלות למסגרות אלה עם החלפה, 1146 00:50:10,760 --> 00:50:15,740 אנחנו עוברים את הערכים מעל לזה, והם אותחלו. 1147 00:50:15,740 --> 00:50:18,570 >> והם היחידים שגרים כאן. 1148 00:50:18,570 --> 00:50:19,796 אז A ו- B לחיות כאן. 1149 00:50:19,796 --> 00:50:20,670 והם מקבלים החליפו. 1150 00:50:20,670 --> 00:50:21,870 1151 00:50:21,870 --> 00:50:26,190 אבל כאשר אנו חוזרים, אנחנו לא לעשות משהו עם A ו- B. 1152 00:50:26,190 --> 00:50:28,980 וחופשה ב עם הפונקציה שלנו. 1153 00:50:28,980 --> 00:50:30,850 וכך x ו- y להישאר אותו הדבר. 1154 00:50:30,850 --> 00:50:31,960 1155 00:50:31,960 --> 00:50:39,665 אתה תקבל יותר לכיצד לתקן את זה ו איך אנחנו באמת להתמודד עם זה אחר כך. 1156 00:50:39,665 --> 00:50:40,750 1157 00:50:40,750 --> 00:50:43,740 >> אבל זה רק דבר אחד כדי לשמור על סוג של בראש. 1158 00:50:43,740 --> 00:50:45,270 השתמש בו לעתיד. 1159 00:50:45,270 --> 00:50:48,050 אל תדאגו אם זה לא הופך את כל התחושה בעולם. 1160 00:50:48,050 --> 00:50:49,510 1161 00:50:49,510 --> 00:50:51,440 הם עותקים הוא הדבר הגדול ביותר. 1162 00:50:51,440 --> 00:50:54,580 אם אתה הולך לקחת שום דבר מזה, אתה עבר בעותקים. 1163 00:50:54,580 --> 00:50:56,410 אז המקור נשאר אותו הדבר. 1164 00:50:56,410 --> 00:50:58,170 1165 00:50:58,170 --> 00:50:58,770 כולם טובים? 1166 00:50:58,770 --> 00:51:00,280 1167 00:51:00,280 --> 00:51:00,930 מגניב. 1168 00:51:00,930 --> 00:51:02,295 >> אז שורת הפקודה טיעונים. 1169 00:51:02,295 --> 00:51:03,520 1170 00:51:03,520 --> 00:51:07,630 אני בטוח בהתחלה אתם כל היו כמו, חללים אלו גדולים, int ראשיים. 1171 00:51:07,630 --> 00:51:09,517 ואתם כמו, מגניבים אישור. 1172 00:51:09,517 --> 00:51:10,350 לא אכפת לי באמת. 1173 00:51:10,350 --> 00:51:12,360 זה בדיוק מה שאני צריך לכתוב. 1174 00:51:12,360 --> 00:51:16,349 אבל בתוכניות החדשות שלך, במיוחד בpset זה, 1175 00:51:16,349 --> 00:51:17,890 ולמה יש גיר על הקרקע? 1176 00:51:17,890 --> 00:51:19,640 1177 00:51:19,640 --> 00:51:22,680 >> עם pset הבא שלך, אתה עומד לראות את זה. 1178 00:51:22,680 --> 00:51:26,130 Int העיקרי, arg int ג, מחרוזת v קשת, סוגריים. 1179 00:51:26,130 --> 00:51:28,770 אז, ממה שאנחנו פשוט היום למד, מה 1180 00:51:28,770 --> 00:51:32,190 אנחנו חושבים שפרמטר שני או שהמרכיב השני הוא כאן? 1181 00:51:32,190 --> 00:51:34,830 1182 00:51:34,830 --> 00:51:35,824 זה מערך. 1183 00:51:35,824 --> 00:51:36,615 איזה סוג של מערך? 1184 00:51:36,615 --> 00:51:38,430 1185 00:51:38,430 --> 00:51:40,690 מערך מחרוזות, כן. 1186 00:51:40,690 --> 00:51:41,980 מגניב. 1187 00:51:41,980 --> 00:51:45,320 אז ככה אתה הולך להכרזה על אלה עכשיו. 1188 00:51:45,320 --> 00:51:48,570 >> האם מישהו זוכר מה אלה לעמוד? 1189 00:51:48,570 --> 00:51:52,551 1190 00:51:52,551 --> 00:51:53,050 לא? 1191 00:51:53,050 --> 00:51:54,020 1192 00:51:54,020 --> 00:51:54,520 הממ? 1193 00:51:54,520 --> 00:51:55,640 >> תלמיד: arg ג. 1194 00:51:55,640 --> 00:51:56,961 1195 00:51:56,961 --> 00:51:58,950 >> אליסון: אז arg ג שומר דלפק. 1196 00:51:58,950 --> 00:51:59,450 זה int. 1197 00:51:59,450 --> 00:52:00,615 זה מספר, נכון? 1198 00:52:00,615 --> 00:52:02,240 אז מה אתה חושב שהמספר הוא של? 1199 00:52:02,240 --> 00:52:08,260 1200 00:52:08,260 --> 00:52:08,760 כן. 1201 00:52:08,760 --> 00:52:11,450 אז arg c הוא מספר המחרוזות המרכיבים את שורת הפקודה. 1202 00:52:11,450 --> 00:52:12,560 1203 00:52:12,560 --> 00:52:18,499 אז אם היינו do-- למעשה, יש דוגמאות אחרי זה, 1204 00:52:18,499 --> 00:52:19,790 אז אני לא מקדים את עצמי. 1205 00:52:19,790 --> 00:52:21,299 1206 00:52:21,299 --> 00:52:23,840 זה מספר המחרוזות ש פשוט להמציא שורת הפקודה שלך. 1207 00:52:23,840 --> 00:52:35,080 >> לכן, כאשר אתה עושה, כמו, נקודה לקצץ מריו, זה מחרוזת אחת שעושה את זה. 1208 00:52:35,080 --> 00:52:38,520 ביצירה זו, אתה בעצם להיות האכלת דברים לשורת הפקודה, 1209 00:52:38,520 --> 00:52:41,750 כפי שאני בטוח שאתה בחורים ש קראו ראה המפרט. 1210 00:52:41,750 --> 00:52:44,470 כך שבמקרים אלה, אולי אתה יש שניים או שלושה טיעונים. 1211 00:52:44,470 --> 00:52:45,652 1212 00:52:45,652 --> 00:52:48,360 זה הולך להיות דבר שימושי לשימוש. 1213 00:52:48,360 --> 00:52:51,500 >> ולאחר מכן arg v, כפי שאמרנו, רק מערך מחרוזות. 1214 00:52:51,500 --> 00:52:57,000 כך שלמעשה מאחסן את מה ש אתה קלט לתוך שורת הפקודה. 1215 00:52:57,000 --> 00:52:59,960 אז יש לנו אלה. 1216 00:52:59,960 --> 00:53:02,850 יש לך כמה לוכסן נקודה להעתיק outfile infile. 1217 00:53:02,850 --> 00:53:06,670 אז, אם arg c הוא מספר המחרוזות כי אנחנו עוברים לפקודה 1218 00:53:06,670 --> 00:53:09,080 קו, מה הוא ג arg שלנו במקרה זה? 1219 00:53:09,080 --> 00:53:14,520 1220 00:53:14,520 --> 00:53:15,850 שלוש. 1221 00:53:15,850 --> 00:53:16,690 בדיוק. 1222 00:53:16,690 --> 00:53:20,086 >> אז מה arg v אפס? 1223 00:53:20,086 --> 00:53:21,710 אז מה הדבר הראשון שעלינו מאוחסן? 1224 00:53:21,710 --> 00:53:24,640 1225 00:53:24,640 --> 00:53:26,290 דוט לקצץ עותק, בדיוק. 1226 00:53:26,290 --> 00:53:28,065 ואז השני יהיה infile. 1227 00:53:28,065 --> 00:53:29,290 1228 00:53:29,290 --> 00:53:30,930 השלישי יהיה outfile. 1229 00:53:30,930 --> 00:53:32,390 אז מה לגבי arg v שלוש? 1230 00:53:32,390 --> 00:53:35,810 1231 00:53:35,810 --> 00:53:39,370 זה יהיה ריק, כי זה סוף המערך שלנו, נכון? 1232 00:53:39,370 --> 00:53:40,600 1233 00:53:40,600 --> 00:53:41,460 מגניב. 1234 00:53:41,460 --> 00:53:44,500 >> ואז מה לגבי שישית? 1235 00:53:44,500 --> 00:53:45,900 זה סוג של שאלה מכשילה. 1236 00:53:45,900 --> 00:53:46,400 איש. 1237 00:53:46,400 --> 00:53:49,027 1238 00:53:49,027 --> 00:53:49,943 האם אנחנו יודעים מה זה? 1239 00:53:49,943 --> 00:53:50,960 1240 00:53:50,960 --> 00:53:51,690 זה לא מוגדר. 1241 00:53:51,690 --> 00:53:53,170 אין לנו מושג מה זה יכול להיות. 1242 00:53:53,170 --> 00:53:57,000 זה כל מה שהוא צודק לאחר המערך בזיכרון, 1243 00:53:57,000 --> 00:54:00,220 ואין לנו מושג מה זה. 1244 00:54:00,220 --> 00:54:03,500 וזה מסוכן לגעת אלה דברים, כי לכל מה שאתה יודע, 1245 00:54:03,500 --> 00:54:07,080 זה חלק מסוים של זיכרון ש לא צריך להיות גישה או null. 1246 00:54:07,080 --> 00:54:09,000 והוא יכול לעשות דברים מטורפים. 1247 00:54:09,000 --> 00:54:11,690 זה נקרא על-אינדקס שלך חייב המערך שלך. 1248 00:54:11,690 --> 00:54:14,785 אל תלכו מחוץ לגבולות שלך מערך, או דברים רעים יכול לקרות. 1249 00:54:14,785 --> 00:54:16,274 1250 00:54:16,274 --> 00:54:18,940 אתה חוזר ו, כמו, החוקים פיסיקה נהרסו 1251 00:54:18,940 --> 00:54:19,481 או משהו. 1252 00:54:19,481 --> 00:54:21,021 1253 00:54:21,021 --> 00:54:21,520 מגניב. 1254 00:54:21,520 --> 00:54:22,895 האם זה הגיוני לכולם? 1255 00:54:22,895 --> 00:54:23,810 1256 00:54:23,810 --> 00:54:25,025 לא רע. 1257 00:54:25,025 --> 00:54:28,926 >> אז עכשיו, כולם חלק אהוב, סקירת pset. 1258 00:54:28,926 --> 00:54:29,426 יש! 1259 00:54:29,426 --> 00:54:30,530 1260 00:54:30,530 --> 00:54:31,030 אישור. 1261 00:54:31,030 --> 00:54:33,830 אז לאלה מכם ש לא קרא את מפרט pset, 1262 00:54:33,830 --> 00:54:36,790 אתה עושה כמה באמת דברים מגניבים עם הצפנה. 1263 00:54:36,790 --> 00:54:39,360 אתה הולך ליצור קיסר ההצפנה וצופן ויז'נר. 1264 00:54:39,360 --> 00:54:42,000 1265 00:54:42,000 --> 00:54:45,480 בהחלט צריך לקרוא את spec כדי לראות איך עבודה אלה. 1266 00:54:45,480 --> 00:54:49,650 ואם יש לך איזושהי בעיה על מה זה בעצם צריך לעשות, 1267 00:54:49,650 --> 00:54:52,920 בבקשה לבוא לדבר איתי, שלח לי או טקסט לי. 1268 00:54:52,920 --> 00:54:53,420 אני בסביבה. 1269 00:54:53,420 --> 00:54:54,780 1270 00:54:54,780 --> 00:54:57,070 >> אז יש שלוש עיקרי פה דברים שאנחנו 1271 00:54:57,070 --> 00:55:00,440 רוצה לדבר על-- רק סוג של הארכת ההרצאה. 1272 00:55:00,440 --> 00:55:03,645 דברים שאתה אולי לא יודע על, רמזים וכלים שימושיים. 1273 00:55:03,645 --> 00:55:05,520 אז אנחנו הולכים לעשות סקירה מהירה של ASCII, 1274 00:55:05,520 --> 00:55:10,420 כי זה הולך להיות סופר חשוב להצפנה של Vigenere. 1275 00:55:10,420 --> 00:55:11,809 1276 00:55:11,809 --> 00:55:14,100 אנחנו הולכים להמרה של שורת פקודת תשומות, ש 1277 00:55:14,100 --> 00:55:17,160 יהיה מועיל מאוד לקיסר הצפנה. 1278 00:55:17,160 --> 00:55:18,133 ולאחר מכן מודולו. 1279 00:55:18,133 --> 00:55:20,220 1280 00:55:20,220 --> 00:55:21,210 מגניב. 1281 00:55:21,210 --> 00:55:24,005 >> אז, ASCII מפות תווים למספרים. 1282 00:55:24,005 --> 00:55:25,270 1283 00:55:25,270 --> 00:55:26,365 זהו תרשים גדול. 1284 00:55:26,365 --> 00:55:28,115 אתה צריך זה סימניה במקום. 1285 00:55:28,115 --> 00:55:29,310 1286 00:55:29,310 --> 00:55:33,250 אתה רוצה את זה ל טווח האמצע שלך הראשון. 1287 00:55:33,250 --> 00:55:36,320 אני די בטוח שכל אחד יש את זה תרשים בגיליון אמצע הקדנציה שלהם. 1288 00:55:36,320 --> 00:55:37,810 אז ללמוד את זה. 1289 00:55:37,810 --> 00:55:38,410 אוהב את זה. 1290 00:55:38,410 --> 00:55:39,740 שמור את זה בהישג יד. 1291 00:55:39,740 --> 00:55:41,210 זה יהיה שימושי. 1292 00:55:41,210 --> 00:55:45,630 >> וכל זה הוא קידוד הממפה האלפביתי, מספרי, 1293 00:55:45,630 --> 00:55:47,740 ודמויות אחרות ל מספרים למחשב שלנו. 1294 00:55:47,740 --> 00:55:49,947 כי כמובן, ב הסוף, כל מה שאנו מאחסנים 1295 00:55:49,947 --> 00:55:52,030 הוא הולך לקבל המרה עד לאפסים ואחדים, 1296 00:55:52,030 --> 00:55:55,200 ולכן אנחנו צריכים דרך כלשהי כדי לייצג את טקסט ותווים שכולנו 1297 00:55:55,200 --> 00:55:59,105 רגיל לראות כסוג של מספר. 1298 00:55:59,105 --> 00:56:00,370 1299 00:56:00,370 --> 00:56:05,880 >> אז כפי שאנו רואים כאן, יש לנו באותיות גדולות, שהוא ממש שם. 1300 00:56:05,880 --> 00:56:06,555 זה 65. 1301 00:56:06,555 --> 00:56:07,570 1302 00:56:07,570 --> 00:56:09,660 ואותיות קטנות הוא 97. 1303 00:56:09,660 --> 00:56:13,170 אז אתה יכול להבין out-- כמו שאמרתי קודם, 1304 00:56:13,170 --> 00:56:16,532 אם היה לך מערך של מספר רב של מחרוזות, מה שכל אחד מהם 1305 00:56:16,532 --> 00:56:17,490 יש לי שליחות קטלנית null. 1306 00:56:17,490 --> 00:56:18,480 זה יהיה מרחב. 1307 00:56:18,480 --> 00:56:22,581 יש חלל special-- אני לא זוכר היכן שהוא כאן. 1308 00:56:22,581 --> 00:56:23,080 אה. 1309 00:56:23,080 --> 00:56:24,700 32 הוא החלל. 1310 00:56:24,700 --> 00:56:27,090 אז כל מה שממפה אליו. 1311 00:56:27,090 --> 00:56:28,680 1312 00:56:28,680 --> 00:56:29,740 >> אז יש לנו המתמטיקה ASCII. 1313 00:56:29,740 --> 00:56:31,080 1314 00:56:31,080 --> 00:56:34,290 tip-- Pro בVigenere של, אתה עשוי להתפתות 1315 00:56:34,290 --> 00:56:39,480 כדי להמיר את המספרים למספרים שלמים, אבל זה בפועל ממש טוב 1316 00:56:39,480 --> 00:56:43,860 כדי להיות מסוגל להשתמש ב דמויות כמו זו 1317 00:56:43,860 --> 00:56:45,820 כאשר אתה בעצם לתמרן אותם. 1318 00:56:45,820 --> 00:56:48,950 אז אם אתה רוצה להשתמש במספרים, אתה יכול. 1319 00:56:48,950 --> 00:56:55,260 אבל דרך טובה יותר, או דרך ש אנו נוטים לחבב אתכם לעשות את זה, 1320 00:56:55,260 --> 00:56:57,830 זה אופן שבו אתה למעשה הפחתת תווים. 1321 00:56:57,830 --> 00:56:58,840 1322 00:56:58,840 --> 00:57:02,830 >> אז אני רוצה שבחורים ל סוג של להבין אלה. 1323 00:57:02,830 --> 00:57:05,070 למה שלא תנסה כל אחד אחר? 1324 00:57:05,070 --> 00:57:07,580 1325 00:57:07,580 --> 00:57:09,830 אז לעשות את הראשון, שליש, וחמישי. 1326 00:57:09,830 --> 00:57:11,160 1327 00:57:11,160 --> 00:57:15,000 כי אני רוצה לוודא שאנחנו מדברים כל מה שעל שאנחנו צריכים לדבר עליו. 1328 00:57:15,000 --> 00:57:17,410 1329 00:57:17,410 --> 00:57:20,259 אני רק הולך לומר, אחד מ דברים חשובים הו to-- לחכות, 1330 00:57:20,259 --> 00:57:21,550 אתם לא ראו את זה אחד. 1331 00:57:21,550 --> 00:57:23,710 אישור אז לעשות את השלושה הראשונים. 1332 00:57:23,710 --> 00:57:24,430 בואו לעשות את זה. 1333 00:57:24,430 --> 00:57:25,971 כי יש לנו לדבר על מודולו. 1334 00:57:25,971 --> 00:57:27,810 1335 00:57:27,810 --> 00:57:28,310 אני יודע. 1336 00:57:28,310 --> 00:57:28,851 המתמטיקה היא קשה. 1337 00:57:28,851 --> 00:57:29,870 1338 00:57:29,870 --> 00:57:30,980 אתה יכול להשתמש במחשבון. 1339 00:57:30,980 --> 00:57:31,580 זה בסדר. 1340 00:57:31,580 --> 00:57:37,464 1341 00:57:37,464 --> 00:57:40,380 או למשוך את שולחן ASCII, כי אתה כנראה הולך רוצה ש. 1342 00:57:40,380 --> 00:58:03,660 1343 00:58:03,660 --> 00:58:04,820 >> מגניב. 1344 00:58:04,820 --> 00:58:07,960 אז אני אלך במהירות אתם באמצעות אלה. 1345 00:58:07,960 --> 00:58:11,120 אז אנשים שולחנות ASCII עצרו? 1346 00:58:11,120 --> 00:58:15,645 מהו המספרי שלנו מספר לאותיות קטנות? 1347 00:58:15,645 --> 00:58:16,270 תלמיד: שבע. 1348 00:58:16,270 --> 00:58:19,420 1349 00:58:19,420 --> 00:58:24,550 >> אליסון: אז אותיות קטנות הוא 97 ואותיות גדולות הוא 65. 1350 00:58:24,550 --> 00:58:26,390 אז 97 מינוס 65? 1351 00:58:26,390 --> 00:58:27,782 1352 00:58:27,782 --> 00:58:28,570 >> קהל: 32? 1353 00:58:28,570 --> 00:58:33,260 1354 00:58:33,260 --> 00:58:35,630 >> אליסון: 62, כן. 1355 00:58:35,630 --> 00:58:38,675 אז במקרה הזה, מה ש היה זה להדפיס את? 1356 00:58:38,675 --> 00:58:40,360 כי ראשון? 1357 00:58:40,360 --> 00:58:43,830 אם יש לנו ד אחוזים, מה שמצביעים על? 1358 00:58:43,830 --> 00:58:45,980 1359 00:58:45,980 --> 00:58:46,730 תלמיד: מספר. 1360 00:58:46,730 --> 00:58:48,604 אליסון: אנחנו הדפסה את המספר אמיתי. 1361 00:58:48,604 --> 00:58:50,770 אז אנחנו בעצם הולכים להדפיס 32 כאן. 1362 00:58:50,770 --> 00:58:56,360 ואם זה היה אחוז ג, 32 ייתנו לנו מרחב. 1363 00:58:56,360 --> 00:58:57,700 1364 00:58:57,700 --> 00:59:01,670 אז הבנה ש ניתן להדפיס תווים 1365 00:59:01,670 --> 00:59:06,140 גם כמספרים וכ הדמויות בפועל 1366 00:59:06,140 --> 00:59:11,080 באמת חשוב, ומשלם תשומת לב לסוגים בפועל 1367 00:59:11,080 --> 00:59:12,040 שאנחנו עושים כאן. 1368 00:59:12,040 --> 00:59:14,520 1369 00:59:14,520 --> 00:59:15,020 מגניב. 1370 00:59:15,020 --> 00:59:18,862 אז לכל אחד אחר מאלה, מה שאנחנו הולכים להיות דפוס? 1371 00:59:18,862 --> 00:59:19,825 >> תלמיד: אופי. 1372 00:59:19,825 --> 00:59:20,830 >> אליסון: אופי. 1373 00:59:20,830 --> 00:59:21,330 מגניב. 1374 00:59:21,330 --> 00:59:24,260 אז אם אתם רוצים לדעת, אתה יכול לעבוד אלה בעצמך. 1375 00:59:24,260 --> 00:59:25,900 אם אתה נתקלת בבעיה, שלח לי. 1376 00:59:25,900 --> 00:59:28,950 אבל השנייה אחת יהיה להדפיס ב אותיות קטנות. 1377 00:59:28,950 --> 00:59:32,910 שליש ידפיס אותיות גדולות ב רבע ידפיס 1378 00:59:32,910 --> 00:59:36,410 את C באותיות גדולות, ו האחרון יהיה א אותיות קטנות 1379 00:59:36,410 --> 00:59:42,530 וone-- האחרון אנחנו בעצם הולכים כדי להיכנס למה שאחוזים המשוגעים 1380 00:59:42,530 --> 00:59:45,020 סימן אפילו אומר בכמה שקופיות. 1381 00:59:45,020 --> 00:59:46,667 אז תנסה אלה בעצמך. 1382 00:59:46,667 --> 00:59:48,500 אם יש לך בעיה, בבקשה לבוא לדבר איתי. 1383 00:59:48,500 --> 00:59:49,655 1384 00:59:49,655 --> 00:59:53,290 אם אתה בדרך כלל באולם D אדמס, אתה כנראה תמצא סביבי. 1385 00:59:53,290 --> 00:59:54,760 1386 00:59:54,760 --> 00:59:55,760 >> אז, atoi. 1387 00:59:55,760 --> 00:59:59,660 כמה מכם ראו את זה פונקציה או שמעה על זה בכלל? 1388 00:59:59,660 --> 01:00:00,380 1389 01:00:00,380 --> 01:00:00,880 כל אחד? 1390 01:00:00,880 --> 01:00:02,100 1391 01:00:02,100 --> 01:00:02,600 מגניב. 1392 01:00:02,600 --> 01:00:06,250 אז מה זה בעצם עומד להוא ASCII למספר שלם. 1393 01:00:06,250 --> 01:00:13,150 אז מה אתה יכול לעשות זה, עם קיסר, למי שקורא את המפרט, 1394 01:00:13,150 --> 01:00:16,460 אתה הולך לעשות לוכסן נקודת קיסר אחרי שאתה כותב את התכנית שלך, 1395 01:00:16,460 --> 01:00:18,690 ואז אתה הולך ל קלט כמה מספר ש 1396 01:00:18,690 --> 01:00:24,780 רוצה לקודד המסר הסודי שלך עם. 1397 01:00:24,780 --> 01:00:30,700 >> אבל, אם נזכור, כולנו תשומות מאוחסנות כמחרוזות. 1398 01:00:30,700 --> 01:00:31,390 נכון? 1399 01:00:31,390 --> 01:00:35,160 יש לנו מערך v arg זה כל מחרוזת הסוג. 1400 01:00:35,160 --> 01:00:37,870 אז אם אתה רק מנסה למשוך את זה אחד, שזה יהיה 1401 01:00:37,870 --> 01:00:43,240 חושב שזה מספר אחד או מה ש שבו השתמש הוא למעשה דמות. 1402 01:00:43,240 --> 01:00:45,490 אז אתה הולך לקבל כמה תוצאות מטורפות. 1403 01:00:45,490 --> 01:00:48,200 אז אם אתה באמת רוצה להפוך את זה למספר שלם 1404 01:00:48,200 --> 01:00:52,060 כי אתה יכול להשתמש בו כדי לתפעל המילה שלך או את ההודעה שלך, 1405 01:00:52,060 --> 01:00:53,366 אתה רוצה להשתמש בatoi. 1406 01:00:53,366 --> 01:00:56,320 atoi רק ממיר המחרוזת שלך לint. 1407 01:00:56,320 --> 01:01:04,530 >> אז אם יש לנו מחרוזת של 12, אם נקרא atoi ביום 12 ב, או מה שקלט שהוא, 1408 01:01:04,530 --> 01:01:07,370 זה באמת יחזור לך המספר השלם. 1409 01:01:07,370 --> 01:01:10,610 לא האופי או המחרוזת 12. 1410 01:01:10,610 --> 01:01:14,230 אשר, כאשר אתה מתחיל תוסיף את זה למספרים, 1411 01:01:14,230 --> 01:01:17,710 יהיה שונה מאוד, כי המחרוזת 12 היא 1412 01:01:17,710 --> 01:01:21,210 כמה מספר מטורף ב ASCII, אבל השלם 12 1413 01:01:21,210 --> 01:01:23,390 הוא למעשה 12, וזה מה שאתה רוצה. 1414 01:01:23,390 --> 01:01:25,630 אז אתה רוצה לוודא להשתמש atoi. 1415 01:01:25,630 --> 01:01:29,203 >> אתה הולך רוצה את זה בקיסר, כי אתה 1416 01:01:29,203 --> 01:01:32,520 צריך int המסופק על ידי משתמש בשורת הפקודה. 1417 01:01:32,520 --> 01:01:35,230 אבל כששמתי אותו בפקודה קו, הוא מאוחסן כמחרוזת 1418 01:01:35,230 --> 01:01:35,813 כדי להתחיל עם. 1419 01:01:35,813 --> 01:01:36,950 1420 01:01:36,950 --> 01:01:38,210 האם זה הגיוני? 1421 01:01:38,210 --> 01:01:40,590 אתה לא בהכרח צריך את זה Vigenere. 1422 01:01:40,590 --> 01:01:43,180 עם Vigenere, כפי שאמרתי לפני, כדאי לך לנסות ולהשתמש ב 1423 01:01:43,180 --> 01:01:46,600 מתמטיקה ASCII שנראית יותר כמו זה, שבו אתה בעצם 1424 01:01:46,600 --> 01:01:49,320 באמצעות התווים שאנחנו ניתן לך. 1425 01:01:49,320 --> 01:01:50,970 1426 01:01:50,970 --> 01:01:51,470 מגניב. 1427 01:01:51,470 --> 01:01:52,970 1428 01:01:52,970 --> 01:01:54,170 כולם טוב שם? 1429 01:01:54,170 --> 01:01:56,530 1430 01:01:56,530 --> 01:01:57,480 מדהים. 1431 01:01:57,480 --> 01:01:59,030 >> אז מודולו. 1432 01:01:59,030 --> 01:02:01,950 אז מה אם אתה נתון המספר העצום הזה לקיסר? 1433 01:02:01,950 --> 01:02:03,720 1434 01:02:03,720 --> 01:02:07,970 יש לך הרעיון הזה ש אם אתה בZ ואתה 1435 01:02:07,970 --> 01:02:11,020 ניתנו מספר שתיים, זה אומר שאתה need-- 1436 01:02:11,020 --> 01:02:15,130 Z הופך השני מכתב אחרי עצמו, נכון? 1437 01:02:15,130 --> 01:02:20,800 אז אתה צריך לעטוף איכשהו, ומודולו הוא הדרך לעשות את זה. 1438 01:02:20,800 --> 01:02:23,310 אז כל שהיא עושה זה נותן לך את השארית 1439 01:02:23,310 --> 01:02:25,660 של החלוקה המספר ראשון על ידי השני. 1440 01:02:25,660 --> 01:02:28,660 ויש לנו כמה דוגמאות ל לעשות את זה קצת יותר קונקרטי. 1441 01:02:28,660 --> 01:02:34,390 אבל בעיקרון, אתה משתמש במודולו כאשר אתה רוצה לעשות משהו לעטוף סביב. 1442 01:02:34,390 --> 01:02:36,950 >> אז אם אתה רוצה רק מספרים אחד עד שמונה, 1443 01:02:36,950 --> 01:02:39,670 אתה יכול להשתמש במודולו על כל דבר אחר מספר, וזה תמיד יהיה 1444 01:02:39,670 --> 01:02:42,960 להחזיר מספר מאפס עד שמונה. 1445 01:02:42,960 --> 01:02:48,750 אז כמה examples-- אם יש לנו 55 מודולו 10, 1446 01:02:48,750 --> 01:02:55,350 זה פשוט נותן לך את שארית 55 חלקי 10, אשר יהיו 5. 1447 01:02:55,350 --> 01:02:56,440 1448 01:02:56,440 --> 01:03:02,470 ולאחר מכן שלוש מודולו חמש, מישהו לנחש מה זה יהיה? 1449 01:03:02,470 --> 01:03:03,800 1450 01:03:03,800 --> 01:03:04,300 שלוש. 1451 01:03:04,300 --> 01:03:05,570 1452 01:03:05,570 --> 01:03:10,910 >> אז אם יש לך מספר קטן יותר לפני מודולו, זה לא יכול להימשך בצורה שווה. 1453 01:03:10,910 --> 01:03:11,520 זה אפס. 1454 01:03:11,520 --> 01:03:14,090 אז זה פשוט מחזיר את המספר עצמו. 1455 01:03:14,090 --> 01:03:15,920 אז שמונה מודולו שמונה יהיה? 1456 01:03:15,920 --> 01:03:16,603 >> תלמיד: אפס. 1457 01:03:16,603 --> 01:03:18,350 >> אליסון: אפס. 1458 01:03:18,350 --> 01:03:20,160 כי זה הולך באופן שווה. 1459 01:03:20,160 --> 01:03:22,095 16 מודולו 15? 1460 01:03:22,095 --> 01:03:23,660 >> קהל: אחת. 1461 01:03:23,660 --> 01:03:24,700 >> אליסון: מגניב. 1462 01:03:24,700 --> 01:03:29,280 ואז זה אחרון הוא רק ל להראות you-- ייתכן שאתה תוהה, אישור, 1463 01:03:29,280 --> 01:03:31,800 מה סדר הפעולות כאן? 1464 01:03:31,800 --> 01:03:33,100 האם אנו מחלקים ראשון? 1465 01:03:33,100 --> 01:03:34,570 האם אנו מודולו הראשון? 1466 01:03:34,570 --> 01:03:38,730 אז מודולו מחזיק את אותו קדימות כחלוקה או כפל, 1467 01:03:38,730 --> 01:03:39,940 והאסוציאטיבי שלה השמאלי. 1468 01:03:39,940 --> 01:03:41,730 אז זה באותו אופן. 1469 01:03:41,730 --> 01:03:46,520 אתה תמיד היה עושה סוגריים, אז כפל, חילוק, 1470 01:03:46,520 --> 01:03:49,570 ומודולו לפי הסדר מהשמאל לימין. 1471 01:03:49,570 --> 01:03:51,050 כללים אז סטנדרטיים. 1472 01:03:51,050 --> 01:03:55,260 רק לשים אותו באותה הקטגוריה כחלוק והכפלה. 1473 01:03:55,260 --> 01:03:59,040 >> אז במקרה הזה, הייתי עושה זאת יש לי 1 בתוספת 2 נותן לנו 3. 1474 01:03:59,040 --> 01:04:02,210 אנו מכפילים כי על ידי 2, כך שאנו מקבלים 6. 1475 01:04:02,210 --> 01:04:05,050 אנו מודולו כי על ידי 2, אשר נותן לנו? 1476 01:04:05,050 --> 01:04:06,042 >> תלמיד: 0. 1477 01:04:06,042 --> 01:04:07,430 >> אליסון: 0. 1478 01:04:07,430 --> 01:04:10,270 ואז להוסיף 2, כדי ש מקבל 2 במקרה אחרון זה. 1479 01:04:10,270 --> 01:04:12,080 1480 01:04:12,080 --> 01:04:16,360 אז modulo-- אתה בהחלט הולך לחשוב על דרכים לשלב 1481 01:04:16,360 --> 01:04:19,520 שכאשר אתה גלישה סביב האלף-בית. 1482 01:04:19,520 --> 01:04:24,210 אם אתה בZ ואתה צריך להעביר להעביר שלושה ברווחים על מנת להגיע לC, 1483 01:04:24,210 --> 01:04:26,230 יש שכל קונספט עטיפה סביב. 1484 01:04:26,230 --> 01:04:28,790 אז אני אשאיר את זה ל אתם להבין 1485 01:04:28,790 --> 01:04:31,940 איך בדיוק אתה הולך להשתמש בו. 1486 01:04:31,940 --> 01:04:35,660 אבל בהחלט כלי שימושי לpset השבוע. 1487 01:04:35,660 --> 01:04:36,910 1488 01:04:36,910 --> 01:04:37,730 אני ממש אוהב את זה. 1489 01:04:37,730 --> 01:04:39,480 זהו אחד psets האהוב עליי. 1490 01:04:39,480 --> 01:04:41,230 אז אחרי שאתה עושה את זה, אם יש לך חברים, 1491 01:04:41,230 --> 01:04:44,146 אתה יכול, כמו, לשלוח כל סוד אחר הודעות ולוודא שזה עובד. 1492 01:04:44,146 --> 01:04:45,695 כי זה יהיה לפענח אותו או משהו כזה. 1493 01:04:45,695 --> 01:04:46,710 1494 01:04:46,710 --> 01:04:47,390 הרבה כיף. 1495 01:04:47,390 --> 01:04:48,840 1496 01:04:48,840 --> 01:04:51,220 >> וזה הסוף של קטע. 1497 01:04:51,220 --> 01:04:52,430 1498 01:04:52,430 --> 01:04:54,040 גמרתי מוקדם. 1499 01:04:54,040 --> 01:04:57,540 עדיין יש לי 15 דקות עם אתם, כך שאם יש משהו ש 1500 01:04:57,540 --> 01:05:02,180 שבו היית רוצה לעבור על נוסף, אני אשמח לעשות את זה. 1501 01:05:02,180 --> 01:05:04,340 יש עוד שאלות על pset שלך לאלו מכם 1502 01:05:04,340 --> 01:05:06,355 שהחל או לקרוא את המפרט. 1503 01:05:06,355 --> 01:05:07,870 1504 01:05:07,870 --> 01:05:12,060 כל דבר שדברנו על בשעה האחרונה 1505 01:05:12,060 --> 01:05:16,880 ושהיינו לך כמו 15 דקותיי לסוג של חזרה על יסודות, אני אשמח ל. 1506 01:05:16,880 --> 01:05:20,790 או שאנחנו יכולים לקרוא לזה נסגר, ושאתה יכול כל לעזוב ולקחת יותר ממתקים איתך 1507 01:05:20,790 --> 01:05:21,650 כמו שאתה הולך. 1508 01:05:21,650 --> 01:05:23,719 1509 01:05:23,719 --> 01:05:26,260 אבל אם יש התמהמהות שאלות, בבקשה ליידע אותי. 1510 01:05:26,260 --> 01:05:28,467 גם אתה יכול לבוא ו לדבר איתי אחר כך. 1511 01:05:28,467 --> 01:05:29,425 אני מבטיח שאני לא נושך. 1512 01:05:29,425 --> 01:05:32,140 1513 01:05:32,140 --> 01:05:32,795 כל דבר אחר? 1514 01:05:32,795 --> 01:05:33,890 1515 01:05:33,890 --> 01:05:35,240 כולם טובים? 1516 01:05:35,240 --> 01:05:37,540 התחושה של כולם כמו הם יכולים להתמודד עם pset זה? 1517 01:05:37,540 --> 01:05:38,820 1518 01:05:38,820 --> 01:05:42,405 אתה הולך להיות החבר בסדר. 1519 01:05:42,405 --> 01:05:43,905 שעות פעילות משרד הן שם מסיבה. 1520 01:05:43,905 --> 01:05:45,930 1521 01:05:45,930 --> 01:05:46,460 מגניב. 1522 01:05:46,460 --> 01:05:47,020 בסדר. 1523 01:05:47,020 --> 01:05:49,680 >> ובכן, במקרה זה, תודה כל מה שאתה כל כך הרבה שבאת. 1524 01:05:49,680 --> 01:05:50,940 אני מקווה לראות אותך בשבוע הבא. 1525 01:05:50,940 --> 01:05:52,120 יהיו עוד ממתקים. 1526 01:05:52,120 --> 01:05:53,495 אולי יש דברים מגניבים אחרים. 1527 01:05:53,495 --> 01:05:55,010 1528 01:05:55,010 --> 01:05:59,090 ואני מצפה לקבל את לדעת כולכם השנה. 1529 01:05:59,090 --> 01:06:00,320