1 00:00:00,000 --> 00:00:03,290 >> [عزف الموسيقى] 2 00:00:03,290 --> 00:00:04,989 3 00:00:04,989 --> 00:00:06,280 JASON هيرشهورن: OK، الجميع. 4 00:00:06,280 --> 00:00:07,460 مرحبا بكم في القسم. 5 00:00:07,460 --> 00:00:10,840 هذا هو CS50، جدا لدينا القسم الأول عظمى. 6 00:00:10,840 --> 00:00:13,700 كما تعلمون جميعا، الأسبوع المقبل ستبدأ الأقسام العادية، 7 00:00:13,700 --> 00:00:15,580 ولكن هذا الاسبوع نحن جميعا معا. 8 00:00:15,580 --> 00:00:17,730 >> هناك نفسي. 9 00:00:17,730 --> 00:00:18,840 اسمي جيسون. 10 00:00:18,840 --> 00:00:20,630 أنا محاضر في علوم الحاسب الآلي. 11 00:00:20,630 --> 00:00:23,910 لدينا اندى، من هو رئيس TA من CS50. 12 00:00:23,910 --> 00:00:27,630 وScaz، أستاذ بريان Scassellati، انه أستاذ في علوم الحاسب الآلي. 13 00:00:27,630 --> 00:00:30,970 >> نحن رؤساء CS50 في جامعة ييل. 14 00:00:30,970 --> 00:00:34,992 يمكنك الكتابة دائما لنا heads@cs50.yale.edu. 15 00:00:34,992 --> 00:00:35,950 وسنكون في المحاضرات. 16 00:00:35,950 --> 00:00:37,547 سنكون في ساعات العمل. 17 00:00:37,547 --> 00:00:40,130 إذا كان هناك أي شيء يمكننا القيام به بالنسبة لك، أي شيء تحتاجه، 18 00:00:40,130 --> 00:00:42,610 لا تتردد في الوصول إلينا. 19 00:00:42,610 --> 00:00:44,140 >> فما الذي سنفعله اليوم؟ 20 00:00:44,140 --> 00:00:47,790 أو قبل ذلك، ما هو الخروج من هذا الاسبوع؟ 21 00:00:47,790 --> 00:00:52,620 لذلك ساعات العمل من الاثنين، الثلاثاء، الأربعاء، والخميس، 8:00 حتي 11:00. 22 00:00:52,620 --> 00:00:54,770 هناك جدول زمني على الموقع. 23 00:00:54,770 --> 00:00:57,830 >> أقسام، مثل التي ذكرتها، وبدءا من الأسبوع المقبل. 24 00:00:57,830 --> 00:01:01,390 وسوف تجد هذا الأسبوع ما توقيت القسم الخاص بك هو، ما هو عليه اليوم، 25 00:01:01,390 --> 00:01:03,350 والذين TA الخاص بك هو. 26 00:01:03,350 --> 00:01:08,610 >> هو المشكلة مجموعة 1 المقرر في يوم الخميس في ظهر اليوم، الجمعة ظهرا مع الراحل اليوم. 27 00:01:08,610 --> 00:01:10,817 نعم، لديك تسعة أيام في وقت متأخر. 28 00:01:10,817 --> 00:01:12,150 وهناك تسع مجموعات المشكلة. 29 00:01:12,150 --> 00:01:14,320 ويمكن استخدام واحد فقط في وقت متأخر يوم لكل مجموعة المشكلة. 30 00:01:14,320 --> 00:01:17,930 نعم، في الواقع، كل مشكلة مجموعات ومن المقرر الجمعة ظهرا. 31 00:01:17,930 --> 00:01:18,550 هذا كل شيء. 32 00:01:18,550 --> 00:01:20,400 كل ذلك التفاصيل هي على المنهج. 33 00:01:20,400 --> 00:01:22,360 >> كل يوم جمعة، لدينا غداء. 34 00:01:22,360 --> 00:01:25,230 نود أن تجعل هذا الحجم بالطبع يشعر أصغر قليلا. 35 00:01:25,230 --> 00:01:26,580 لذلك فنحن نرحب بك لتأكيد الحجز. 36 00:01:26,580 --> 00:01:30,050 وجبة غداء مجانية مع زميل الزملاء والموظفين. 37 00:01:30,050 --> 00:01:34,120 cs50.yale.edu/rsvp. 38 00:01:34,120 --> 00:01:36,940 >> كل هذه الأشياء التي لدي على الشاشة، 39 00:01:36,940 --> 00:01:43,330 وأكثر من ذلك، يمكنك أن تجد cs50.yale.edu أو cs50.harvard.edu، وإذا ذهبت إلى جامعة هارفارد 40 00:01:43,330 --> 00:01:46,800 ويراقب هذا الخط. 41 00:01:46,800 --> 00:01:50,240 >> أيضا على تلك المواقع، هناك هي من نصف طن من الموارد بالنسبة لك. 42 00:01:50,240 --> 00:01:54,610 كل محاضرة ليس فقط لديها فيديو المحاضرة، ولكنها تلاحظ أيضا. 43 00:01:54,610 --> 00:01:58,184 سوف شخص مشاهدة محاضرة وتدوين الملاحظات بالنسبة لك. 44 00:01:58,184 --> 00:02:00,100 حتى تتمكن من دفع فقط الاهتمام خلال المحاضرات، 45 00:02:00,100 --> 00:02:03,970 أو يمكنك استخدام ملاحظاتهم / بنا تلاحظ لاستكمال الملاحظات الخاصة بك. 46 00:02:03,970 --> 00:02:04,987 >> هناك شرائح الانترنت. 47 00:02:04,987 --> 00:02:07,320 المصدر code-- كل شيء ديفيد يذهب أكثر في محاضرة، 48 00:02:07,320 --> 00:02:09,979 أو Scaz يذهب أكثر من محاضرة، أن شفرة المصدر على شبكة الإنترنت 49 00:02:09,979 --> 00:02:11,750 كذلك، ومثل الأول، ذكر أشرطة الفيديو. 50 00:02:11,750 --> 00:02:14,257 >> أقسام، وبالمثل، سوف تكون جميع تصويره. 51 00:02:14,257 --> 00:02:15,840 وجميع هذه الشرائح تكون متاحة. 52 00:02:15,840 --> 00:02:18,190 كل ذلك سوف كود تكون متاحة لك. 53 00:02:18,190 --> 00:02:22,440 هناك شورت على شبكة الانترنت حيث تنفق الموظفين CS50 خمسة إلى 10 54 00:02:22,440 --> 00:02:24,130 دقيقة تمر الموضوعات بالنسبة لك. 55 00:02:24,130 --> 00:02:26,750 بعض من تلك التي قمت بالفعل ووجهت في مجموعات المشكلة. 56 00:02:26,750 --> 00:02:30,430 >> ساعات العمل، وكما ذكرت، يوم الإثنين وحتى الخميس، 8:00 حتي 11:00. 57 00:02:30,430 --> 00:02:32,600 CS50 الدراسة هو مورد رائعة. 58 00:02:32,600 --> 00:02:37,100 هناك مشاكل الممارسة، الشرائح عينة، والبق معروف 59 00:02:37,100 --> 00:02:40,920 أن الطلاب يحبون أن تصل الى، لفي الأساس كل موضوع نحن 60 00:02:40,920 --> 00:02:42,650 سوف تغطي في هذه الدورة. 61 00:02:42,650 --> 00:02:46,350 >> وأخيرا، على هذه الشريحة على الأقل، Reference50 62 00:02:46,350 --> 00:02:49,690 والتي تعطيك معلومات على كل وظائف C 63 00:02:49,690 --> 00:02:53,160 هل يمكن أن نأمل من أي وقت مضى ربما الاستخدام وكثير، كثير أكثر. 64 00:02:53,160 --> 00:02:55,690 >> مرة أخرى، أن نقطة نقطة نقطة في الجزء السفلي من الشاشة 65 00:02:55,690 --> 00:02:59,990 هو للإشارة إلى أن هناك حتى المزيد من الموارد على تلك المواقع اثنين: 66 00:02:59,990 --> 00:03:04,270 cs50.yale.edu، cs50.harvard.edu. 67 00:03:04,270 --> 00:03:05,840 >> لذا، ماذا نفعل اليوم؟ 68 00:03:05,840 --> 00:03:08,970 حسنا، أولا أنا ذاهب لإعطاء نظرتم الى الموارد. 69 00:03:08,970 --> 00:03:10,010 فعلت بالفعل أن واحدا. 70 00:03:10,010 --> 00:03:11,590 أنظر إلينا. 71 00:03:11,590 --> 00:03:16,430 >> الآن، ونحن في طريقنا للذهاب أكثر أنواع البيانات والمشغلين في C. 72 00:03:16,430 --> 00:03:19,990 ثم سيأتي اندى هنا و يذهب أكثر من المكتبات في C، Printf ()، 73 00:03:19,990 --> 00:03:24,570 وظيفة التي كنت بالفعل مألوفة أو ستصبح بسرعة جدا 74 00:03:24,570 --> 00:03:25,530 مألوفة. 75 00:03:25,530 --> 00:03:27,810 وسوف تذهب أيضا على الشرطية والتكرار. 76 00:03:27,810 --> 00:03:30,900 >> ثم أخيرا، Scaz سوف يذهب أكثر من ID CS50. 77 00:03:30,900 --> 00:03:34,250 إذا لم تكن قد حمامة في بالفعل في مشكلة مجموعة 1، 78 00:03:34,250 --> 00:03:37,060 وكذلك كيفية استخدام محطة ومفيدة الأوامر 79 00:03:37,060 --> 00:03:42,280 ومن ثم تعطيك بعض العروض و ممارسات الترميز في ID CS50. 80 00:03:42,280 --> 00:03:45,130 >> قبل أن تقفز في هذه محتويات هذا الجانب، 81 00:03:45,130 --> 00:03:46,770 هل لدى أي شخص أي أسئلة حتى الآن؟ 82 00:03:46,770 --> 00:03:53,190 83 00:03:53,190 --> 00:03:54,030 رائعة. 84 00:03:54,030 --> 00:03:54,950 حسنا. 85 00:03:54,950 --> 00:03:55,810 تغيير التروس. 86 00:03:55,810 --> 00:03:58,760 >> [تغيير التروس] 87 00:03:58,760 --> 00:04:03,070 >> كان لي أن التحول التروس في سيارة اليدوية. 88 00:04:03,070 --> 00:04:10,920 من أنواع البيانات في C، لا يمكن أن يكون فقط وx متغير، وأنها تكون على الخط 10، 89 00:04:10,920 --> 00:04:17,170 صحيح، وربما رقم 1، على خط 20، عدد عشري 10.5، 90 00:04:17,170 --> 00:04:20,500 وخطوط ثم زوجين في وقت لاحق سلسلة، وأنا أحب CS50. 91 00:04:20,500 --> 00:04:25,052 >> في C، يمكن أن يكون إلا المتغيرات شيء واحد، وشيء واحد فقط. 92 00:04:25,052 --> 00:04:26,510 ولذا عليك أن تعطيهم أنواع. 93 00:04:26,510 --> 00:04:28,780 وعلى هذا المجلس، ونحن لديك قائمة من أنواع. 94 00:04:28,780 --> 00:04:32,000 هناك حرف، والتي الوقوف للأحرف. 95 00:04:32,000 --> 00:04:36,850 لذلك هذا هو حرف واحد A، B، C، D. وهذا يمكن أيضا أن يكون الفضاء، 96 00:04:36,850 --> 00:04:40,290 أو أن يمكن أيضا أن تكون حرف سطر جديد. 97 00:04:40,290 --> 00:04:45,030 >> هناك الأعداد الصحيحة، التي ليست سوى أرقام، numbers-- كليا أو الأعداد الصحيحة 98 00:04:45,030 --> 00:04:47,130 rather-- لكن لا عشرية. 99 00:04:47,130 --> 00:04:49,790 >> لعشرية، لدينا أرقام الفاصلة العائمة. 100 00:04:49,790 --> 00:04:53,200 أرقام الفاصلة العائمة أرقام مع العشرية. 101 00:04:53,200 --> 00:04:58,160 >> ثم هناك صفقات الشراء، والتي هي الأعداد الصحيحة أطول أساسا. 102 00:04:58,160 --> 00:05:01,160 ستلاحظ أن فترة طويلة هو 8 في حين أن الباحث هو 4. 103 00:05:01,160 --> 00:05:02,640 سأحضر إلى أنه في الثانية. 104 00:05:02,640 --> 00:05:07,390 ذلك لأن يتوق يمكن تخزين حتى يمكن مزيد من الأعداد الصحيحة من عدد صحيح تخزين. 105 00:05:07,390 --> 00:05:10,100 المزدوج هو تعويم طويلة. 106 00:05:10,100 --> 00:05:12,460 >> وأخيرا، لدينا السلسلة، والذي هو نوع 107 00:05:12,460 --> 00:05:14,430 التي ربما كنت قد استخدمت من قبل. 108 00:05:14,430 --> 00:05:21,100 إذا قمت بتضمين الهاشتاج # includeCS50.h في الملف المصدر، 109 00:05:21,100 --> 00:05:23,170 ثم يمكنك استخدام نوع السلسلة. 110 00:05:23,170 --> 00:05:25,560 ليست مبنية فعلا إلى C. 111 00:05:25,560 --> 00:05:27,760 >> هناك بضعة أنواع أخرى كذلك. 112 00:05:27,760 --> 00:05:32,900 ولكن هذه هي الرئيسية منها مع التي ستستخدمها وتواجهها. 113 00:05:32,900 --> 00:05:36,210 C كما، ومرة ​​أخرى ذكرتها، كل ذلك variable-- 114 00:05:36,210 --> 00:05:38,620 يمكن أن يكون إلا نوع واحد ونوع واحد فقط. 115 00:05:38,620 --> 00:05:42,890 ذلك لأن C هو ثابت لغة مطبوعة، في مقابل 116 00:05:42,890 --> 00:05:45,780 لغات كتبته حيوي حيث إذا قمت بإنشاء متغير 117 00:05:45,780 --> 00:05:50,081 يمكنك تغيير ما يتم تخزينها في أنها تذهب في في البرنامج. 118 00:05:50,081 --> 00:05:52,580 هنا في اليد اليمنى الجانب، ولدي أحجام مختلفة 119 00:05:52,580 --> 00:05:57,440 هذه الأنواع من البيانات في بايت. 120 00:05:57,440 --> 00:05:59,710 لذلك الحرف هو 1 بايت. 121 00:05:59,710 --> 00:06:01,250 هذا هو 8 بت. 122 00:06:01,250 --> 00:06:05,530 وهذا يعني أنه 8 بت هناك ثمانية 0S و1S. 123 00:06:05,530 --> 00:06:08,280 شاهدنا تلك العروض في الأول الأسبوع مع أن المصابيح الثنائية. 124 00:06:08,280 --> 00:06:15,680 >> مع 8 بت أو 1 بايت، يمكننا تمثل الأرقام من 0 إلى 255. 125 00:06:15,680 --> 00:06:16,180 الصحيح. 126 00:06:16,180 --> 00:06:18,770 وإذا كان كل 8 بت هي 0 هذا 0. 127 00:06:18,770 --> 00:06:23,640 إذا بت الأول هو 1، وهذا العدد واحد، وهلم جرا، وصولا إلى 255. 128 00:06:23,640 --> 00:06:28,290 وهذا هو السبب لشخصيات يمكنك لدينا أساسا ما يصل الى 255 منهم، 129 00:06:28,290 --> 00:06:31,210 ولكن هذا الكثير لتغطية جميع الأحرف نحن بحاجة إلى استخدام. 130 00:06:31,210 --> 00:06:38,060 >> لالأعداد الصحيحة، يمكن أن يكون لديك 0 و ثم لديك 2 إلى 32 ناقص 1. 131 00:06:38,060 --> 00:06:40,340 تلك هي كيفية العديد من الخيارات لديك لأعداد صحيحة. 132 00:06:40,340 --> 00:06:44,780 >> لفترة طويلة، لديك 0 ل2 إلى 64 ناقص 1. 133 00:06:44,780 --> 00:06:48,860 بحيث يكون لديك الكثير والكثير، المزيد من الخيارات لصفقات الشراء. 134 00:06:48,860 --> 00:06:54,220 >> سلاسل، وهذا علامة استفهام لأن هذا هو مصدر إثارة في وقت لاحق. 135 00:06:54,220 --> 00:06:55,000 نعم. 136 00:06:55,000 --> 00:06:56,350 يمكنني أن أقول الجميع على حافة مقاعدهم، 137 00:06:56,350 --> 00:06:57,450 مثل ما هو هذا علامة استفهام؟ 138 00:06:57,450 --> 00:06:58,390 انها التشويق. 139 00:06:58,390 --> 00:07:02,340 نحن سوف تغطي في نهاية المطاف حجم سلاسل ونتحدث أكثر عن السلاسل. 140 00:07:02,340 --> 00:07:04,692 لأن سلسلة هي في الواقع واحدة من عجلات التدريب 141 00:07:04,692 --> 00:07:06,400 وضعنا على هذا بالطبع في بداية 142 00:07:06,400 --> 00:07:09,700 ثم خلع في وقت لاحق على، لأن السلاسل في C 143 00:07:09,700 --> 00:07:13,320 هي مؤشرات الواقع صفائف حرف. 144 00:07:13,320 --> 00:07:15,810 ولكن مرة أخرى، وهذا هو التشويق في وقت لاحق. 145 00:07:15,810 --> 00:07:18,890 قبل أن أنتقل أي أسئلة، التعليقات والمخاوف بشأن هذه الشريحة؟ 146 00:07:18,890 --> 00:07:25,800 147 00:07:25,800 --> 00:07:26,630 >> حسنا. 148 00:07:26,630 --> 00:07:30,330 يجب أن يكون شارح رائعة. 149 00:07:30,330 --> 00:07:33,210 أيضا عندما كنت البرمجة، كنت تنوي استخدام هذه الشركات. 150 00:07:33,210 --> 00:07:36,730 علامات بسيطة جدا يمكن أن تفعل بسيطة العمليات، التي ربما كنت 151 00:07:36,730 --> 00:07:38,340 بالفعل مألوفة جدا. 152 00:07:38,340 --> 00:07:42,580 >> على سبيل المثال، على حق الجانب، ونحن نرى إضافتها. 153 00:07:42,580 --> 00:07:44,640 لإضافة، يمكنك القيام مجرد علامة زائد. 154 00:07:44,640 --> 00:07:46,850 وهكذا قد تكون لديكم متغيرين x و y. 155 00:07:46,850 --> 00:07:48,810 يمكنك أن تفعل س + ص في التعليمات البرمجية. 156 00:07:48,810 --> 00:07:52,790 ربما تريد to-- نقول لكم لدينا عدد 7 و 3، 157 00:07:52,790 --> 00:07:55,780 تريد تخزين أن في متغير يسمى المبلغ. 158 00:07:55,780 --> 00:08:03,010 يمكنك أن تفعل الباحث عن نوع والفضاء خلاصة القول، إن اسم المتغير، = 7 + 3؛ 159 00:08:03,010 --> 00:08:05,780 >> ما من شأنه أن مخزن في المبلغ؟ 160 00:08:05,780 --> 00:08:07,190 أي واحد؟ 161 00:08:07,190 --> 00:08:09,270 إذا كان لي في المبلغ = 7 + 3. 162 00:08:09,270 --> 00:08:10,437 ما الذي خزنها في المبلغ؟ 163 00:08:10,437 --> 00:08:11,520 يمكنك فقط يصرخون بها. 164 00:08:11,520 --> 00:08:12,120 الحضور: 10. 165 00:08:12,120 --> 00:08:12,995 >> JASON هيرشهورن: 10! 166 00:08:12,995 --> 00:08:14,870 هذا صحيح تماما. 167 00:08:14,870 --> 00:08:19,520 ماذا عن باختصار = 7-3، أنا فقط استخدام هذا علامة اندفاعة. 168 00:08:19,520 --> 00:08:20,871 ما يحدث ليتم تخزينها؟ 169 00:08:20,871 --> 00:08:21,370 الحضور: 4. 170 00:08:21,370 --> 00:08:22,203 JASON هيرشهورن: 4. 171 00:08:22,203 --> 00:08:25,770 المبلغ هو على الارجح اسم خاطئ ل هذا المتغير، ولكن 4 سيتم تخزينها. 172 00:08:25,770 --> 00:08:31,890 >> لمضاعفة في C، استخدم قليلا شخصية نجم، كنت لا تستخدم السينية. 173 00:08:31,890 --> 00:08:35,990 تقسيم، استخدم الأمام خفض يست رمزا الانقسام. 174 00:08:35,990 --> 00:08:39,580 وMODULO، استخدم رمز النسبة المئوية. 175 00:08:39,580 --> 00:08:47,900 >> لذلك دعونا نقول أريد أن أرى الباحث ض = 7٪ 3، ما من شأنه خزنها في ض؟ 176 00:08:47,900 --> 00:08:51,250 لذلك، وهذا هو الأساس يسأل ماذا مودولو تفعل؟ 177 00:08:51,250 --> 00:08:52,750 لا أحد يعرف ما يفعل مودولو؟ 178 00:08:52,750 --> 00:08:53,940 نعم. 179 00:08:53,940 --> 00:08:54,870 ص 4. 180 00:08:54,870 --> 00:08:56,120 رئيس 1: انها تبقى. 181 00:08:56,120 --> 00:08:58,369 JASON هيرشهورن: هو الباقي عند تقسيم. 182 00:08:58,369 --> 00:09:02,790 حتى 7 مقسوما على 3 هو 2 الباقي 1. 183 00:09:02,790 --> 00:09:04,690 لذلك سيتم تخزين 1. 184 00:09:04,690 --> 00:09:06,970 >> فعلت الطرح، ولكن هذه هي الطريقة التي يعمل بها. 185 00:09:06,970 --> 00:09:09,140 هذا ما يفعله المشغل مودولو. 186 00:09:09,140 --> 00:09:12,360 فإنه يأخذ عددا يقسم من قبل رقم آخر ويعود لك 187 00:09:12,360 --> 00:09:14,590 ما تبقى. 188 00:09:14,590 --> 00:09:19,770 ذلك مرة أخرى، 7٪ 3 تمنحك 1، ل 7 مقسوما على 3 هو 2 الباقي 1، 189 00:09:19,770 --> 00:09:21,650 وإرجاع الباقي. 190 00:09:21,650 --> 00:09:24,470 >> ماذا عن دعونا نعود يصل خطوة واحدة إلى أن علامة القسمة. 191 00:09:24,470 --> 00:09:29,194 إذا فعلت 7 / مقسوما على 3 يفعل أحد يعرف ما الذي سيعود؟ 192 00:09:29,194 --> 00:09:30,090 >> المتحدث 2: 2. 193 00:09:30,090 --> 00:09:32,240 >> JASON هيرشهورن: لماذا لا 2 و 2.333؟ 194 00:09:32,240 --> 00:09:34,560 >> المتحدث 2: أعتقد أنه يقطع بعد عدد كله. 195 00:09:34,560 --> 00:09:36,310 JASON هيرشهورن: حتى هذا صحيح تماما. 196 00:09:36,310 --> 00:09:39,880 في C، إذا كنت تفعل تقسيم عددين 7 مقسوما على 3، 197 00:09:39,880 --> 00:09:43,430 فإنه يحصل على الجواب الذي في هذه الحالة 2.3333 إلى الأبد 198 00:09:43,430 --> 00:09:47,080 ويرى أن العشرية و بتقطيع كل شيء من بعد العلامة العشرية 199 00:09:47,080 --> 00:09:49,240 وذلك يعود فقط لأنك 2. 200 00:09:49,240 --> 00:09:51,120 >> حتى إذا فعلت 8 مقسوما على 3. 201 00:09:51,120 --> 00:09:54,010 أن الواقع، ونحن نعلم ذلك لتعود 2.666، 202 00:09:54,010 --> 00:09:57,050 ولكنه بتقطيع كل من في العلامة العشرية، باقتطاع كل شيء، 203 00:09:57,050 --> 00:09:58,640 ويعود فقط لأنك 2. 204 00:09:58,640 --> 00:10:02,090 حتى 6 مقسوما على 3، 7 تقسيم بنسبة 3، 8 مقسوما على 3، 205 00:10:02,090 --> 00:10:04,840 ويذهب كل في العودة لكم 2. 206 00:10:04,840 --> 00:10:08,770 >> لا أحد يعرف، أو يكون تخمين، لكيف يمكن أن تحصل في الواقع 207 00:10:08,770 --> 00:10:10,790 الجواب الكامل إذا كنت تريد أن عشري؟ 208 00:10:10,790 --> 00:10:13,120 209 00:10:13,120 --> 00:10:13,620 نعم. 210 00:10:13,620 --> 00:10:14,152 استمر. 211 00:10:14,152 --> 00:10:15,110 SPEAKER 3: استخدام تعويم؟ 212 00:10:15,110 --> 00:10:16,942 JASON هيرشهورن: ماذا تقصد؟ 213 00:10:16,942 --> 00:10:19,786 SPEAKER 3: لأنك قال تعويم للأرقام (غير مسموع) 214 00:10:19,786 --> 00:10:22,900 215 00:10:22,900 --> 00:10:23,900 JASON هيرشهورن: الحق. 216 00:10:23,900 --> 00:10:26,100 لذلك، وهذا صحيح تماما. 217 00:10:26,100 --> 00:10:28,440 7 هو عدد صحيح. 218 00:10:28,440 --> 00:10:31,690 ولكن إذا أردت أن تحويل هذا إلى رقم النقطة العائمة، 219 00:10:31,690 --> 00:10:34,674 وأود أن تخزين تلك كما 7،0 لأن الكمبيوتر 220 00:10:34,674 --> 00:10:37,090 وstupid-- حقا رأينا أن مع PB وJ example-- 221 00:10:37,090 --> 00:10:38,930 انها لن تفعل سوى بالضبط ما كنت أقول ذلك. 222 00:10:38,930 --> 00:10:40,846 >> لذلك إذا كنت أكتب 7، فإنه أعتقد أن هذا صحيح. 223 00:10:40,846 --> 00:10:43,640 إذا كنت أكتب 7.0، على الرغم من أننا تعرف تلك الأشياء هي ما يعادلها، 224 00:10:43,640 --> 00:10:45,550 فإنه يعامل أن مثل العائمة رقم النقطة. 225 00:10:45,550 --> 00:10:50,441 حتى لو كنت فعلت 7.0 تقسيم قبل 3 أو مقسوما على 3.0، 226 00:10:50,441 --> 00:10:52,440 ذلك أن أقول، حسنا، الآن نحن نتعامل مع عوامات. 227 00:10:52,440 --> 00:10:57,514 سأعود إليكم 2.333333 إلى الأبد. 228 00:10:57,514 --> 00:10:59,930 ولكن ليس حقا إلى الأبد، ل كما رأينا أيضا في المحاضرة، 229 00:10:59,930 --> 00:11:03,350 هذه الأرقام النقطة العائمة ليست دقيقة تماما. 230 00:11:03,350 --> 00:11:05,940 >> لذلك إذا كنت لا تريد أن العشرية، أو جزء من ذلك عشري، 231 00:11:05,940 --> 00:11:08,090 ثم لديك لuse-- واحد منهم يجب أن يكون عدد النقطة العائمة 232 00:11:08,090 --> 00:11:11,048 ويحتوي الكمبيوتر على فهم أن هذه النقطة العائمة كنت 233 00:11:11,048 --> 00:11:13,350 التعامل مع، وليس صحيحا. 234 00:11:13,350 --> 00:11:16,760 أي أسئلة على هذا الجدول على الجانب الأيمن، حتى الآن؟ 235 00:11:16,760 --> 00:11:22,650 أو يسارك، الخاص بك اليسار، يسارك. 236 00:11:22,650 --> 00:11:23,264 نعم. 237 00:11:23,264 --> 00:11:23,972 SPEAKER 4: الحق. 238 00:11:23,972 --> 00:11:26,216 لمجرد مثل العادية الأعداد الصحيحة، تفعل 239 00:11:26,216 --> 00:11:30,230 write-- سيكون لديك لكتابة تطفو؟ 240 00:11:30,230 --> 00:11:31,920 >> JASON هيرشهورن: نعم ذلك. 241 00:11:31,920 --> 00:11:34,400 حسنا، إذا كنت ترغب في إنشاء متغير هذا تعويم، 242 00:11:34,400 --> 00:11:37,020 أنت بحاجة إلى أن أقول تعويم ض يساوي شيئا. 243 00:11:37,020 --> 00:11:37,640 >> SPEAKER 4: OK. 244 00:11:37,640 --> 00:11:41,950 >> JASON هيرشهورن: ولكن إذا أردت أن قيام 7 مقسوما على 3 والحصول على هذا عشري، 245 00:11:41,950 --> 00:11:48,540 وأود أن تفعل تعويم ض = 7.0 / بنسبة 3.0. و التي من شأنها أن تعطيني النقطة العائمة 246 00:11:48,540 --> 00:11:49,273 العدد. 247 00:11:49,273 --> 00:11:50,000 >> SPEAKER 4: OK. 248 00:11:50,000 --> 00:11:56,370 >> JASON هيرشهورن: إذا فعلت شيء من هذا القبيل الباحث ض = 7 / بنسبة 3، 249 00:11:56,370 --> 00:12:00,856 التي من شأنها أن تعطيني صحيح، لأن تلك كلها صحيحة. 250 00:12:00,856 --> 00:12:01,730 هل هذا منطقي؟ 251 00:12:01,730 --> 00:12:02,320 >> SPEAKER 4: نعم. 252 00:12:02,320 --> 00:12:02,950 >> JASON هيرشهورن: OK. 253 00:12:02,950 --> 00:12:03,450 رائعة. 254 00:12:03,450 --> 00:12:06,030 أي أسئلة أخرى حول هذا الجدول؟ 255 00:12:06,030 --> 00:12:07,220 حقا؟ 256 00:12:07,220 --> 00:12:08,380 انا متحمس جدا. 257 00:12:08,380 --> 00:12:09,120 حسنا. 258 00:12:09,120 --> 00:12:13,910 >> وحتى بعض الأشياء الأخرى التي سوف تستخدم، في كثير من الأحيان في ظروف أو الحلقات، 259 00:12:13,910 --> 00:12:17,580 وهذه الأنواع من operators-- هذه الأنواع من التعبيرات المنطقية. 260 00:12:17,580 --> 00:12:23,140 وكما علمنا، == ما كنت استخدامها لمعرفة ما اذا كان هناك شيئان متساوية. 261 00:12:23,140 --> 00:12:28,170 >> حتى هنا أنا التحقق إذا كان x == ذ، دعنا مرة أخرى تفترض أن x هو 7 و y هو 3. 262 00:12:28,170 --> 00:12:33,220 حتى إذا كتبت 7 == 3، ما التي من شأنها أن تعود لي؟ 263 00:12:33,220 --> 00:12:34,220 فهل هذا صحيح أم خطأ؟ 264 00:12:34,220 --> 00:12:35,275 >> الحضور: الكاذبة. 265 00:12:35,275 --> 00:12:36,150 JASON هيرشهورن: OK. 266 00:12:36,150 --> 00:12:37,370 أشعر الجميع يمكن الحصول على هذه واحدة. 267 00:12:37,370 --> 00:12:39,054 لذلك الجميع، ما من شأنه أن يعود؟ 268 00:12:39,054 --> 00:12:39,720 الحضور: الكاذبة. 269 00:12:39,720 --> 00:12:40,130 JASON هيرشهورن: خطأ. 270 00:12:40,130 --> 00:12:40,850 رائعة. 271 00:12:40,850 --> 00:12:41,930 7 لا يساوي 3. 272 00:12:41,930 --> 00:12:44,530 حتى 7 == 3 سيعود كاذبة. 273 00:12:44,530 --> 00:12:50,746 يجب عليك علامة لا يساوي، حتى لو كنت دققت 7! = 3، ما من شأنه أن يعود؟ 274 00:12:50,746 --> 00:12:51,370 الحضور: صحيح. 275 00:12:51,370 --> 00:12:52,650 JASON هيرشهورن: صحيح. 276 00:12:52,650 --> 00:12:53,200 ممتاز. 277 00:12:53,200 --> 00:12:55,990 وكان شخص مؤكد جدا في الظهر ونقدر ذلك. 278 00:12:55,990 --> 00:12:59,070 ثم لديك أقل من المشغل، أقل من أو يساوي المشغل، 279 00:12:59,070 --> 00:13:01,990 أكبر من المشغل، أكبر من أو يساوي المشغل. 280 00:13:01,990 --> 00:13:03,490 >> حتى واحد أكثر الاختيار التعقل. 281 00:13:03,490 --> 00:13:05,660 إذا كان لي 7 أكبر من أو يساوي 3. 282 00:13:05,660 --> 00:13:06,966 ما من شأنه أن يعود؟ 283 00:13:06,966 --> 00:13:07,692 >> الحضور: صحيح. 284 00:13:07,692 --> 00:13:08,650 JASON هيرشهورن: صحيح. 285 00:13:08,650 --> 00:13:10,050 نعم. 286 00:13:10,050 --> 00:13:13,290 تلك الغرفة الخلف والجانب الخلفي من الغرفة، ورائعة. 287 00:13:13,290 --> 00:13:16,240 يمكنك الجمع بين هذين التعبيرات إذا أردت، أيضا، 288 00:13:16,240 --> 00:13:21,880 مع منطقية والتي هي && أو منطقية أو التي هي || 289 00:13:21,880 --> 00:13:22,800 ||. 290 00:13:22,800 --> 00:13:25,785 وحتى الآن يمكنك اختبار اثنين أشياء together-- هل هذا مضحك؟ 291 00:13:25,785 --> 00:13:28,250 لماذا هذا مضحكا؟ 292 00:13:28,250 --> 00:13:35,200 >> لذلك إذا أردت، ما يمكنني قوله هو 7 أكثر من 3 و 2 هو أقل من 4؟ 293 00:13:35,200 --> 00:13:37,090 حسنا، إذا كان 7 أكبر من 3، وهذا صحيح. 294 00:13:37,090 --> 00:13:38,400 2 هو أقل من 4، وهذا صحيح. 295 00:13:38,400 --> 00:13:41,140 لذلك هذا كل شيء سيعود صحيح. 296 00:13:41,140 --> 00:13:45,130 >> إذا اختبرت 7 أكبر من 3 and-- أنا مجرد اختيار أرقام عشوائية here-- 297 00:13:45,130 --> 00:13:47,340 4 على بعد أقل من 2، حسنا، هذا هو زائف. 298 00:13:47,340 --> 00:13:49,610 ذلك صحيح وجعل كاذبة كاذبة. 299 00:13:49,610 --> 00:13:54,520 ويمكنك الذهاب على وقمت بضم كما العديد من الظروف معا بقدر ما تريد. 300 00:13:54,520 --> 00:14:00,000 >> هل لدى أي شخص أي أسئلة، تعليقات والمخاوف حتى الآن؟ 301 00:14:00,000 --> 00:14:03,862 وأرى البعض منكم التقاط الصور من لي في الشاشة، والتي أنا أقدر. 302 00:14:03,862 --> 00:14:05,070 نأمل، انها ليست سناب شات. 303 00:14:05,070 --> 00:14:06,417 نأمل، انها لملاحظاتك. 304 00:14:06,417 --> 00:14:08,500 ولكن كل هذه ذاهبون لتكون متاحة على شبكة الإنترنت. 305 00:14:08,500 --> 00:14:11,210 لذلك لم يكن لديك ل التقاط صور لهذا. 306 00:14:11,210 --> 00:14:15,150 كما ذكرت، كل شيء سوف تكون متاحة على الانترنت بالنسبة لك. 307 00:14:15,150 --> 00:14:15,650 حسنا. 308 00:14:15,650 --> 00:14:17,980 أنا على وشك أن تحصل في الكواليس، لذلك لا أحد 309 00:14:17,980 --> 00:14:20,350 أريد أن أقول أي شيء قبل أن يحدث ذلك؟ 310 00:14:20,350 --> 00:14:21,080 الأسئلة؟ 311 00:14:21,080 --> 00:14:21,680 >> [فاصلة VOICES] 312 00:14:21,680 --> 00:14:22,250 >> JASON هيرشهورن: أوه، ووقف. 313 00:14:22,250 --> 00:14:23,290 يا رفاق لطيفة جدا. 314 00:14:23,290 --> 00:14:23,790 حسنا. 315 00:14:23,790 --> 00:14:26,520 انا ذاهب الى علامة بها. 316 00:14:26,520 --> 00:14:27,240 دعنا نذهب. 317 00:14:27,240 --> 00:14:29,570 >> ANDI بنغ: نحن في طريقنا للقيام تغيير هيئة التصنيع العسكري حرج الآن. 318 00:14:29,570 --> 00:14:32,280 >> JASON هيرشهورن: أنا ذاهب الى اتخاذ هذا الخروج. 319 00:14:32,280 --> 00:14:33,946 ANDI بنغ: نقدر الدعم والرجال. 320 00:14:33,946 --> 00:14:42,250 321 00:14:42,250 --> 00:14:43,180 أيمكنك سماعي؟ 322 00:14:43,180 --> 00:14:43,930 هل هذا جيد؟ 323 00:14:43,930 --> 00:14:44,760 الكمال. 324 00:14:44,760 --> 00:14:45,630 جميل. 325 00:14:45,630 --> 00:14:47,490 اسمحوا لي فقط أن دس في. 326 00:14:47,490 --> 00:14:49,100 حسنا. 327 00:14:49,100 --> 00:14:54,140 لذلك، أنا على وشك أن تفعل مثل عملاق تفريغ معلومات عن رفاق الآن. 328 00:14:54,140 --> 00:14:57,370 وعدم وجود مخاوف على الإطلاق إذا كنت ليس بعد كل سطر القليل من ما 329 00:14:57,370 --> 00:14:58,812 أنا على وشك أن تظهر لك. 330 00:14:58,812 --> 00:15:00,770 كما قال جيسون، كل شيء غير متواجد تماما. 331 00:15:00,770 --> 00:15:03,780 فقط نحن ذاهبون لمحاولة إدخال كل إنسان في المفاهيم غطى 332 00:15:03,780 --> 00:15:05,270 في بعض هذه الشرائح. 333 00:15:05,270 --> 00:15:06,582 حتى مجرد متابعة على طول. 334 00:15:06,582 --> 00:15:09,540 لا تقلق إذا كنت لا تفهم كل شيء؛ ومع ذلك، إذا في أي لحظة 335 00:15:09,540 --> 00:15:12,820 تشعر أنك فقدت، ورفع الخاص بك جهة، ونحن سوف تتوقف، لا تقلق. 336 00:15:12,820 --> 00:15:15,060 رائع. 337 00:15:15,060 --> 00:15:19,270 >> لذلك أعتقد أن شيئا ديفيد لديها سبق ذكرها نوع من في محاضرة 338 00:15:19,270 --> 00:15:23,240 وجيسون ونوع من لمح إلى اليوم ما هي مكتبة. 339 00:15:23,240 --> 00:15:27,510 حتى في مجال البرمجة، لدينا هذه الأمور تسمى المكتبات. 340 00:15:27,510 --> 00:15:29,690 حيث، أساسا، عن هم مجرد مجموعة 341 00:15:29,690 --> 00:15:32,610 وظائف، وهذا هو في الأساس مجرد رمز هذا 342 00:15:32,610 --> 00:15:35,070 سبق أن كتبت من قبل شخص آخر ما في وسعنا جميع 343 00:15:35,070 --> 00:15:36,410 استخدام ضمن برامجنا. 344 00:15:36,410 --> 00:15:38,790 >> فكيف يفعل عادي عمل المكتبة، أليس كذلك؟ 345 00:15:38,790 --> 00:15:40,030 كنت ادخل من الباب المكتبة. 346 00:15:40,030 --> 00:15:41,890 لديك كل هذه الكتب يمكنك سحب 347 00:15:41,890 --> 00:15:44,590 ويمكنك الوصول إلى المعلومات في تلك الكتب. 348 00:15:44,590 --> 00:15:45,840 نفس الشيء في البرمجة. 349 00:15:45,840 --> 00:15:48,820 >> لديك مكتبة التي لديها بالفعل كانت مكتوبة من قبل أشخاص آخرين. 350 00:15:48,820 --> 00:15:51,530 والطريقة التي تستطيع، كما مبرمج أو طالب، 351 00:15:51,530 --> 00:15:55,780 يمكن الوصول إلى تلك المكتبة من خلال هاشتاج # تشمل. 352 00:15:55,780 --> 00:15:59,720 >> على سبيل المثال، في C نحن لدينا ثلاثة C-- أكثر 353 00:15:59,720 --> 00:16:03,420 تستخدم عادة ثلاثة C القياسية libraries-- مكتبة الإدخال / الإخراج، 354 00:16:03,420 --> 00:16:05,540 المكتبة سلسلة، ومكتبة الرياضيات. 355 00:16:05,540 --> 00:16:07,610 >> هكذا في البداية الخاصة بك وتحدد المشكلة الزوجين، 356 00:16:07,610 --> 00:16:10,940 تلك ستكون ثلاثة أن كنت في المقام الأول باستخدام. 357 00:16:10,940 --> 00:16:14,610 وذلك ديفيد بالفعل وأوضح في محاضرة، 358 00:16:14,610 --> 00:16:17,460 وأنا معيار / O مكتبة، أو القياسية الإدخال / الإخراج مكتبة 359 00:16:17,460 --> 00:16:18,620 يفعل ذلك بالضبط. 360 00:16:18,620 --> 00:16:23,530 فإنه يسمح لك، في التعليمات البرمجية، لإدخال أي شيء من المستخدم وإخراج 361 00:16:23,530 --> 00:16:25,960 إلى الشاشة، أساسا الطباعة على الشاشة. 362 00:16:25,960 --> 00:16:29,990 >> وذلك في أي وقت يمكنك استخدام أية وظائف، على سبيل المثال وظيفة printf () الذي 363 00:16:29,990 --> 00:16:33,319 ونحن في طريقنا للذهاب على الشريحة التالية، تأكد من تضمين معيار I / O 364 00:16:33,319 --> 00:16:36,360 مكتبة وإلا كنت لن تكون قادرة على استخدام وظيفة printf (). 365 00:16:36,360 --> 00:16:39,110 لأنك، كما مبرمج لم يكتب في الواقع أن وظيفة، 366 00:16:39,110 --> 00:16:41,840 كنت مجرد استخدام شخص كود آخر ضمن التعليمات البرمجية الخاصة بك. 367 00:16:41,840 --> 00:16:43,620 >> هل هذا معقول الجميع؟ 368 00:16:43,620 --> 00:16:44,520 رائع. 369 00:16:44,520 --> 00:16:48,530 >> وبعد ذلك نحن أساسا الحصول على مكتبة string.h وmath.h 370 00:16:48,530 --> 00:16:52,970 مكتبة، .H يعني مجرد مكتبة، المكتبات الأخرى التي عليك في نهاية المطاف 371 00:16:52,970 --> 00:16:55,310 يكون استخدام ضمن التعليمات البرمجية الخاصة بك. 372 00:16:55,310 --> 00:16:57,620 >> ومع ذلك، لأغراض من هذه المكتبة، ونحن أيضا 373 00:16:57,620 --> 00:17:01,170 have-- هذا class-- لدينا أيضا ما يسمى مكتبة CS50، 374 00:17:01,170 --> 00:17:05,270 cs50.h، حيث نحن، ل خلقت اطلاعكم 375 00:17:05,270 --> 00:17:07,369 العديد من الوظائف الهامة والمفيدة. 376 00:17:07,369 --> 00:17:09,550 حتى يتسنى لك كمبرمج يمكن على الظهر قبالة 377 00:17:09,550 --> 00:17:14,470 ما كنا قد كتبت بالفعل بحيث هذه الدالة المتاحة لك 378 00:17:14,470 --> 00:17:15,599 للاستخدام الخاص. 379 00:17:15,599 --> 00:17:18,359 >> سأكون تغطي بضع وظائف يشيع استخدامها، 380 00:17:18,359 --> 00:17:20,839 ولكن نعرف أن هذه هي كل شيء على الانترنت googleable. 381 00:17:20,839 --> 00:17:24,904 لا تتردد، وسحب ما يصل المكتبة CS50 و ثم لديك جميع وظائف هناك. 382 00:17:24,904 --> 00:17:25,828 نعم. 383 00:17:25,828 --> 00:17:28,140 >> SPEAKER 5: حتى إذا كنتم لا استخدام البرامج التي 384 00:17:28,140 --> 00:17:29,916 وقدمتها إلينا الصف، يفعل ذلك 385 00:17:29,916 --> 00:17:32,698 يعني أن علينا أن تحميل والعثور هذا الرأس ملف أنفسنا ونقول 386 00:17:32,698 --> 00:17:33,840 الكمبيوتر حيث هو؟ 387 00:17:33,840 --> 00:17:34,320 >> ANDI بنغ: السؤال الكبير. 388 00:17:34,320 --> 00:17:34,820 بالضبط. 389 00:17:34,820 --> 00:17:38,194 لذلك فمن مثل إذا كنت لا موجود فعليا في المكتبة، 390 00:17:38,194 --> 00:17:40,360 ليس هناك طريقة ل فعلا الذهاب والوصول إليه. 391 00:17:40,360 --> 00:17:42,589 وبالتالي فإن نفس الشيء مع البرمجة في C، كنت 392 00:17:42,589 --> 00:17:45,880 لديك للتأكد من أن كنت تستخدم لدينا الأجهزة لأن المكتبة بالفعل 393 00:17:45,880 --> 00:17:47,270 أدرجت فيه. 394 00:17:47,270 --> 00:17:50,020 ثم عند الهاشتاج # تشمل، مكتبة هناك. 395 00:17:50,020 --> 00:17:50,520 نعم. 396 00:17:50,520 --> 00:17:51,920 سؤال جيد. 397 00:17:51,920 --> 00:17:53,461 الجميع جيدا؟ 398 00:17:53,461 --> 00:17:53,960 رائع. 399 00:17:53,960 --> 00:17:56,371 400 00:17:56,371 --> 00:17:56,870 حسنا. 401 00:17:56,870 --> 00:17:59,330 لذلك نحن في طريقنا للضرب، أساسا، ما هو 402 00:17:59,330 --> 00:18:01,620 الوظيفة الأولى التي كما أننا المبرمجين 403 00:18:01,620 --> 00:18:03,900 ستكون باستخدام داخل نظامنا. 404 00:18:03,900 --> 00:18:05,690 وهذا ما يسمى وظيفة printf (). 405 00:18:05,690 --> 00:18:08,450 لذلك، printf () وظيفة، ولقد وقال بالفعل في الشريحة الأخيرة، 406 00:18:08,450 --> 00:18:11,830 يتم تضمينها في مستوى I / O، القياسية الإدخال / الإخراج، ومكتبة. 407 00:18:11,830 --> 00:18:16,470 >> لذا تأكد من كل ما كنت using-- أوه، اسمحوا لي أن الاستيلاء على الليزر pointer-- 408 00:18:16,470 --> 00:18:18,660 كلما كنت تستخدم وprintf () وظيفة، 409 00:18:18,660 --> 00:18:21,790 لديك لتشمل معيار I / O مكتبة أو آخر، وعند ترجمة، 410 00:18:21,790 --> 00:18:23,760 كنت ذاهب للحصول خطأ لأن الكمبيوتر يكون مثل، 411 00:18:23,760 --> 00:18:26,140 يا أنا لا أعرف من أين printf () هو، كنت لا تقول لي أين printf () 412 00:18:26,140 --> 00:18:26,830 هو. 413 00:18:26,830 --> 00:18:30,150 كذلك يتم تضمين printf () في معيار I / O، وذلك عندما تستخدم printf ()، 414 00:18:30,150 --> 00:18:32,960 تأكد من أن يكون هذا خط فوق الرمز الخاص بك. 415 00:18:32,960 --> 00:18:36,040 >> هكذا على سبيل المثال، printf () هنا هي وظيفة. 416 00:18:36,040 --> 00:18:40,260 كل ما يفعله هو طباعة من شيء داخل الأقواس للمستخدم. 417 00:18:40,260 --> 00:18:44,840 أن أحدا يرغب في اتخاذ طعنة في هذا ما سطر من التعليمات البرمجية الحق 418 00:18:44,840 --> 00:18:46,420 هنا سوف تطبع؟ 419 00:18:46,420 --> 00:18:48,730 وبالتالي، فإن الجواب على الشاشة. 420 00:18:48,730 --> 00:18:50,480 أي واحد؟ 421 00:18:50,480 --> 00:18:51,380 >> VERDI: الجزء السفلي. 422 00:18:51,380 --> 00:18:53,510 >> ANDI بنغ: فيردي، لماذا لا تذهب قدما ويقول البيان كله؟ 423 00:18:53,510 --> 00:18:55,718 >> VERDI: مرحبا، اسمي اندى، وعمري 20 سنة. 424 00:18:55,718 --> 00:18:57,270 ANDI بنغ: آه، جميل. 425 00:18:57,270 --> 00:19:00,240 حتى في هذا الخط نحن في طريقنا لل طباعة، مرحبا، اسمي اندى، 426 00:19:00,240 --> 00:19:04,280 وعمري 20 سنة، والتي هو في الواقع بيان صحيح. 427 00:19:04,280 --> 00:19:05,090 >> بناء الجملة. 428 00:19:05,090 --> 00:19:08,830 لذلك قليل من المسائل النحوية التي يا رفاق نريد أن نتأكد من أنك تعرف. 429 00:19:08,830 --> 00:19:09,360 العملات. 430 00:19:09,360 --> 00:19:13,170 التنصيص تروي الكمبيوتر أن كل شيء داخل 431 00:19:13,170 --> 00:19:14,850 سوف يتم طباعتها. 432 00:19:14,850 --> 00:19:16,620 >> كل شيء داخل العلبة يكون مجرد بالضبط كيف 433 00:19:16,620 --> 00:19:19,920 كنت اكتبه، باستثناء عادة في النهاية، 434 00:19:19,920 --> 00:19:23,610 ونحن في طريقنا لترغب في تضمين وhash-- يا sorry-- شرطة ن. 435 00:19:23,610 --> 00:19:24,640 لذلك اندفاعة ن. 436 00:19:24,640 --> 00:19:28,884 >> هل يريد أي شخص أن يأخذ تخمين في ما أن يفعل إلى رمز لدينا؟ 437 00:19:28,884 --> 00:19:29,465 نعم. 438 00:19:29,465 --> 00:19:30,840 SPEAKER 6: يضع على سطر جديد. 439 00:19:30,840 --> 00:19:31,650 ANDI بنغ: بالضبط. 440 00:19:31,650 --> 00:19:34,660 لذلك كل هذا يفعله هو تسمح مهما حدث 441 00:19:34,660 --> 00:19:37,520 بعد ذلك، بعد هذا البيان، التي سيتم طباعتها إلى سطر جديد. 442 00:19:37,520 --> 00:19:40,030 حتى عندما كنت أكتب بك كود لم يكن لديك عشوائيا الأشياء 443 00:19:40,030 --> 00:19:41,738 علق على نهاية ان كنت لا تريد. 444 00:19:41,738 --> 00:19:43,700 أن كل شيء يحصل المطبوعة بدقة سطر واحد 445 00:19:43,700 --> 00:19:46,870 ثم نبدأ في السطر التالي. 446 00:19:46,870 --> 00:19:50,970 >> هل يتذكر أحد ما أن منقوطة تفعل عندما نقوم الترميز؟ 447 00:19:50,970 --> 00:19:54,580 448 00:19:54,580 --> 00:19:55,330 نعم. 449 00:19:55,330 --> 00:19:55,740 >> SPEAKER 7: بيان. 450 00:19:55,740 --> 00:19:56,010 >> ANDI بنغ: آسف؟ 451 00:19:56,010 --> 00:19:57,100 >> SPEAKER 7: هل ينتهي البيان؟ 452 00:19:57,100 --> 00:19:57,766 >> ANDI بنغ: نعم. 453 00:19:57,766 --> 00:20:02,670 وذلك في C، أو أي برمجة اللغة، والفاصلة المنقوطة 454 00:20:02,670 --> 00:20:04,640 يدل على نهاية خط البرمجة. 455 00:20:04,640 --> 00:20:09,240 هكذا على سبيل المثال، في اللغة الإنجليزية نستخدم الفترة أن أقول، يا هذا هو نهاية الجملة. 456 00:20:09,240 --> 00:20:12,857 في البرمجة، والشيء نفسه، لدينا منقوطة للدلالة على نهاية السطر. 457 00:20:12,857 --> 00:20:14,690 في كثير من الأحيان، عندما كنت البدء في البرنامج، 458 00:20:14,690 --> 00:20:17,150 عليك أن تدرك أنك تنس أن تضيف فاصلة منقوطة 459 00:20:17,150 --> 00:20:19,400 ثم حاولت تشغيل الخاص بك رمز وأنها لا تعمل. 460 00:20:19,400 --> 00:20:21,520 وكنت مثل، آه، وأنا لا أعرف لماذا، وينبغي أن يكون العمل. 461 00:20:21,520 --> 00:20:24,394 >> وهناك احتمالات ربما كنت نسيت منقوطة أو قوس أو شيء 462 00:20:24,394 --> 00:20:25,020 في مكان ما. 463 00:20:25,020 --> 00:20:27,740 لذلك، أن من المهم أن نتذكر. 464 00:20:27,740 --> 00:20:29,627 رائع. 465 00:20:29,627 --> 00:20:31,960 كل الحق، برفع الأيدي، كيف كثير من الناس هنا لديهم من أي وقت مضى 466 00:20:31,960 --> 00:20:37,210 اتخذت AP علوم الحاسب الآلي أو المبرمجة في جاوة قبل، من أي وقت مضى؟ 467 00:20:37,210 --> 00:20:37,710 حسنا. 468 00:20:37,710 --> 00:20:38,210 جميل. 469 00:20:38,210 --> 00:20:41,340 ذلك لن تكون قابلة للتطبيق ثم، ولكن في جاوة، كنت 470 00:20:41,340 --> 00:20:44,960 لدينا ما يسمى System.out.println التي لا وجود لها في C. 471 00:20:44,960 --> 00:20:49,927 >> وذلك في C، كلما تريد إضافته في المتغيرات 472 00:20:49,927 --> 00:20:51,760 إلى أي شيء تريده لطباعة، هناك 473 00:20:51,760 --> 00:20:54,620 بناء جملة معينة ونحن في طريقنا للاستخدام. 474 00:20:54,620 --> 00:20:56,520 وهذا ما يسمى placeholding-- أساسا 475 00:20:56,520 --> 00:21:01,180 نضيف النائبة في مكان عدد صحيح أو متغير 476 00:21:01,180 --> 00:21:02,580 أننا نريد للطباعة. 477 00:21:02,580 --> 00:21:07,430 >> ذلك يا رفاق يمكن أن يرى أننا أدرجنا رأس مكتبة ملف جديد هنا. 478 00:21:07,430 --> 00:21:09,130 مكتبة CS50. 479 00:21:09,130 --> 00:21:13,160 والواردة في تلك المكتبة CS50 هي وظيفة المشتركة التي سوف تستخدم 480 00:21:13,160 --> 00:21:15,610 في مسارنا دعا GetInt (). 481 00:21:15,610 --> 00:21:21,830 >> هل يريد أي شخص أن يأخذ طعنة في ما GetInt () قد ربما أن تفعله. 482 00:21:21,830 --> 00:21:22,830 >> الحضور: (غير مسموع) 483 00:21:22,830 --> 00:21:23,550 >> ANDI بنغ: عذرا. 484 00:21:23,550 --> 00:21:24,370 لا يمكن أن نسمع منك. 485 00:21:24,370 --> 00:21:25,511 مادلين، أي شخص. 486 00:21:25,511 --> 00:21:27,260 مادلين: أوه، فإنه يطالبك لكم لعدد صحيح. 487 00:21:27,260 --> 00:21:28,051 ANDI بنغ: بالضبط. 488 00:21:28,051 --> 00:21:30,670 حتى هذه الوظيفة، وآخر وظيفة هذا بالفعل 489 00:21:30,670 --> 00:21:33,690 كانت مكتوبة من قبل شخص آخر التي يمكن أن نطلق عليها الآن. 490 00:21:33,690 --> 00:21:38,000 كل ما هو غير مطالبة لك، المستخدم، لإدخال كل ما تريد كرمز 491 00:21:38,000 --> 00:21:41,850 يشغل وتخزنها whatever-- في هذه الحالة نحن GetInt () - جي، 492 00:21:41,850 --> 00:21:44,060 وهذا يعني أننا الحصول على عدد صحيح. 493 00:21:44,060 --> 00:21:46,150 >> ونحن في طريقنا للتخزين أنه في عدد صحيح آخر 494 00:21:46,150 --> 00:21:48,900 بعد أن قمنا للتو دعا العمر. 495 00:21:48,900 --> 00:21:51,500 هذا معقول للجميع؟ 496 00:21:51,500 --> 00:21:52,190 رائع. 497 00:21:52,190 --> 00:21:56,400 >> حتى الآن أن لدينا تخزين هذا صحيح، بعد أن قمنا دفعت من قبل المستخدم، 498 00:21:56,400 --> 00:22:00,010 في هذا المتغير، لدينا خلقت من نوع int يسمى عمر، 499 00:22:00,010 --> 00:22:03,720 يمكننا المضي قدما ومكان أن وظيفة في printf لدينا (). 500 00:22:03,720 --> 00:22:08,970 حتى بناء الجملة عادة لprintf () هو أن في أي مكان في المادية الفعلية الخاصة بك 501 00:22:08,970 --> 00:22:14,410 الخط الذي تريد إدراج ذلك صحيحا، يمكنك أن تفعل ذلك رمزا هناك حق، 502 00:22:14,410 --> 00:22:17,800 الرمز في المئة، مع نوع المتغير الذي تريده. 503 00:22:17,800 --> 00:22:20,090 >> حتى في هذا العصر الحالة هو عدد صحيح. 504 00:22:20,090 --> 00:22:25,030 حتى وأنت تسير لتشمل ٪ ط لأنه عدد صحيح. 505 00:22:25,030 --> 00:22:26,860 ثم بعد الخاص بك بيان، وأنت تسير 506 00:22:26,860 --> 00:22:30,370 للقيام فاصلة و اسم المتغير. 507 00:22:30,370 --> 00:22:33,420 >> حتى هنا، نحن في طريقنا للطباعة بها، مرحبا، اسمي اندى، 508 00:22:33,420 --> 00:22:35,730 وأنا عمري سنوات فارغة. 509 00:22:35,730 --> 00:22:38,890 Hashta-- أو sorry--، العمر مع كل ما أقوم الإدخال. 510 00:22:38,890 --> 00:22:42,790 حتى إذا كان لي أن المدخلات 20 لبلدي GetInt () هنا، 511 00:22:42,790 --> 00:22:44,500 انها تطبع نفس الشيء بالضبط. 512 00:22:44,500 --> 00:22:47,990 ولكن، إذا أردت أن إدخال شيء آخر، مثل ربما 40 أو 45، 513 00:22:47,990 --> 00:22:50,800 ثم كنت أرى أن تنعكس وفقا لذلك في التعليمات البرمجية. 514 00:22:50,800 --> 00:22:52,886 >> لذلك هذا هو مثال شيء فيه 515 00:22:52,886 --> 00:22:55,260 فإنه يطبع خارجا وينظر إلى لك كما لو انها نفس الشيء، 516 00:22:55,260 --> 00:22:57,593 ولكن تحت غطاء محرك السيارة من الكمبيوتر هناك في الواقع 517 00:22:57,593 --> 00:22:59,560 أشياء مختلفة جدا يحدث. 518 00:22:59,560 --> 00:23:00,060 رائع. 519 00:23:00,060 --> 00:23:02,760 520 00:23:02,760 --> 00:23:03,260 حسنا. 521 00:23:03,260 --> 00:23:06,940 وذلك ما إذا كنا نريد متغيرات متعددة؟ 522 00:23:06,940 --> 00:23:08,290 من السهل جدا. 523 00:23:08,290 --> 00:23:09,150 نفس الشيء. 524 00:23:09,150 --> 00:23:11,930 لدينا أيضا وظيفة جديدة هنا دعا GetString ()، 525 00:23:11,930 --> 00:23:15,380 وشملت أيضا داخل المكتبة CS50، أن كل ما يفعله هو مطالبة المستخدم 526 00:23:15,380 --> 00:23:18,120 عن سلسلة، وهو مجرد مجموعة من الشخصيات، 527 00:23:18,120 --> 00:23:19,810 مثل ذلك جملة أو مثل الاسم. 528 00:23:19,810 --> 00:23:25,470 >> حتى في هذه الحالة، سيكون لدينا اثنين لسلسلة و٪ ط النائبة٪ الصورة 529 00:23:25,470 --> 00:23:26,750 للصحيح. 530 00:23:26,750 --> 00:23:29,190 ونحن في طريقنا للمتابعة أن من المتغيرين 531 00:23:29,190 --> 00:23:32,670 نحن تريد تضمينها في النظام الذي تظهر به في الجملة. 532 00:23:32,670 --> 00:23:35,471 هكذا على سبيل المثال، اسمي فارغا، أريد اسما هناك، 533 00:23:35,471 --> 00:23:36,970 لذلك أنا ذاهب ليكون الاسم الأول. 534 00:23:36,970 --> 00:23:39,637 ثم بعد ذلك، أريد العمر، وتريد أن يكون ثاني العمر. 535 00:23:39,637 --> 00:23:42,720 وهكذا إذا أردت أن المدخلات، مرحبا، اسمي اندى، وعمري 20 سنة. 536 00:23:42,720 --> 00:23:46,370 إذا كنت إدخالها اندى و 20، و سيكون بالضبط نفس الشيء طباعة. 537 00:23:46,370 --> 00:23:51,134 ومع ذلك، والآن لدينا اثنين من المخزن متغيرات اسم وكذلك كثافة العمليات. 538 00:23:51,134 --> 00:23:51,634 نعم. 539 00:23:51,634 --> 00:23:54,124 >> المتحدث 8: هل من قادرة على تشغيل إذا قمت بالتبديل 540 00:23:54,124 --> 00:23:55,620 الاسم والعمر في نهاية ذلك؟ 541 00:23:55,620 --> 00:23:55,840 >> ANDI بنغ: نعم. 542 00:23:55,840 --> 00:23:57,006 هذا سؤال جيد حقا. 543 00:23:57,006 --> 00:23:59,520 حتى قصة قصيرة طويلة، لا. 544 00:23:59,520 --> 00:24:03,070 لأن اسم وage-- ما نوع المتغير هو الاسم؟ 545 00:24:03,070 --> 00:24:03,950 >> المتحدث 8: سلسلة. 546 00:24:03,950 --> 00:24:05,440 >> ANDI بنغ: وماذا نوع المتغير هو العمر؟ 547 00:24:05,440 --> 00:24:06,231 >> المتحدث 8: صحيح. 548 00:24:06,231 --> 00:24:10,290 ANDI بنغ: حتى هنا لدينا نائبا لسلسلة وصحيحا، أليس كذلك؟ 549 00:24:10,290 --> 00:24:13,350 حتى لو كنت لتبديل هذه، الكمبيوتر لن تعرف. 550 00:24:13,350 --> 00:24:16,250 انها تسير للتحقق من سلسلة، وإذا حاولت أن تقدم له عدد صحيح، 551 00:24:16,250 --> 00:24:18,083 انها سوف تكون مثل انتظر أنا مرتبك، ل 552 00:24:18,083 --> 00:24:21,100 قال لي يجب أن يكون بتخصيص ذاكرة لكثافة العمليات. 553 00:24:21,100 --> 00:24:23,760 وهنا، عندما انها تتوقع صحيح 554 00:24:23,760 --> 00:24:25,640 وتعطيه اسما وسلسلة بدلا من ذلك، 555 00:24:25,640 --> 00:24:28,931 انها تسير أيضا أن يكون مربكا للغاية، فإنه لن يتم تشغيل بالضبط الطريقة التي كنت في حاجة إليها. 556 00:24:28,931 --> 00:24:35,280 حتى هنا، تسمية وبناء الجملة من المهم جدا لتشغيل التعليمات البرمجية. 557 00:24:35,280 --> 00:24:37,991 الجميع جيدا؟ 558 00:24:37,991 --> 00:24:38,490 نعم. 559 00:24:38,490 --> 00:24:39,476 مادلين. 560 00:24:39,476 --> 00:24:44,620 >> مادلين: هنا، وأنا أعلم أننا قد نظرت في الأمثلة في الصف، حيث يسألون 561 00:24:44,620 --> 00:24:46,950 ما هو عمرك، ما هو اسمك. 562 00:24:46,950 --> 00:24:50,250 هنا، من شأنه أن يكون ذلك doesn't-- إذا كان لنا أن تشغيل هذا الرمز، 563 00:24:50,250 --> 00:24:51,750 لن نسأل عن ذلك؟ 564 00:24:51,750 --> 00:24:54,740 ولكن لو كنت فقط المدخلات رقمين وبعد ذلك تشغيله من هذا القبيل؟ 565 00:24:54,740 --> 00:24:55,781 >> ANDI بنغ: نعم، بالضبط. 566 00:24:55,781 --> 00:24:58,250 حتى إذا كنت تريد لل العرض، ويرجى إدخال عمرك، 567 00:24:58,250 --> 00:25:01,100 يمكنك فقط إضافة دالة printf () أن يقول، الرجاء إدخال عمرك، 568 00:25:01,100 --> 00:25:01,600 فوقها. 569 00:25:01,600 --> 00:25:02,711 هذا سؤال جيد. 570 00:25:02,711 --> 00:25:03,210 نعم. 571 00:25:03,210 --> 00:25:07,964 >> المتحدث 9: لذا، سيكون بالفعل المدرجة في GetInt () (غير مسموع). 572 00:25:07,964 --> 00:25:09,380 ANDI بنغ: لا، انها ليست في الواقع. 573 00:25:09,380 --> 00:25:11,809 لذلك كل هذا يفعله هو فقط يطالب شاشة فارغة 574 00:25:11,809 --> 00:25:13,100 للمستخدم لإدخال شيء. 575 00:25:13,100 --> 00:25:17,420 إذا كنت تريد ذلك، إذا كنت تريد ذلك لطباعة إلى شيء أن يقول للمستخدم مثل، 576 00:25:17,420 --> 00:25:21,110 يرجى تعطيني عمرك، فإنك يجب أن printf () أن نفسك. 577 00:25:21,110 --> 00:25:23,789 لأن الجميع يستخدم هذا وظيفة لأشياء مختلفة، 578 00:25:23,789 --> 00:25:26,080 هل يمكن أن يكون تخزين العمر، هل يمكن أن يكون تخزين عنوان، 579 00:25:26,080 --> 00:25:28,060 هل يمكن أن يكون تخزين أرقام الهاتف. 580 00:25:28,060 --> 00:25:31,190 وحتى انها حقا ل استخدامات الفردية الرجال الخاص بك 581 00:25:31,190 --> 00:25:34,390 لماذا تريد أن تقوله. 582 00:25:34,390 --> 00:25:34,890 نعم. 583 00:25:34,890 --> 00:25:38,236 >> SPEAKER 10: لذلك، فقط لتوضيح، حيث هل إدخال الاسم والعمر 584 00:25:38,236 --> 00:25:43,020 بحيث يظهر في مكان٪ ق؟ 585 00:25:43,020 --> 00:25:44,320 >> ANDI بنغ: كما في المستخدم؟ 586 00:25:44,320 --> 00:25:47,165 >> SPEAKER 10: نعم، مثل كيف يمكنني جعل it-- أين أضع اندى، 587 00:25:47,165 --> 00:25:48,350 وأين أضع 20؟ 588 00:25:48,350 --> 00:25:48,640 >> ANDI بنغ: نعم. 589 00:25:48,640 --> 00:25:50,250 حتى لو كنت ل في الواقع تشغيل هذا الرمز، 590 00:25:50,250 --> 00:25:52,875 أنا لا تعمل في الواقع رمز، وهذا هو فقط هنا الآن. 591 00:25:52,875 --> 00:25:56,910 إذا كان لي أن تشغيل التعليمات البرمجية، وأود أن ترجمة التعليمات البرمجية، وجعل الملف، 592 00:25:56,910 --> 00:26:00,760 تشغيل التعليمات البرمجية، ومن ثم سيكون هناك يكون مجرد مسافتين بالنسبة لي لإدخال ذلك. 593 00:26:00,760 --> 00:26:01,260 نعم. 594 00:26:01,260 --> 00:26:03,843 سوف نرى الرجال عند قراءة حول برمز نفسك. 595 00:26:03,843 --> 00:26:05,760 596 00:26:05,760 --> 00:26:09,645 >> كل الحق ونحن في طريقنا للتحرك في المقطع التالي من ما 597 00:26:09,645 --> 00:26:11,610 نحن سوف تغطي اليوم. 598 00:26:11,610 --> 00:26:13,980 ونحن في طريقنا للذهاب أكثر ما البيانات المشروطة. 599 00:26:13,980 --> 00:26:16,500 حتى إذا كنت تذكر الرجال ونذكر من المحاضرة، 600 00:26:16,500 --> 00:26:19,210 عبارات شرطية، كل هم هي مجموعة 601 00:26:19,210 --> 00:26:24,010 تعليمات لجهاز الكمبيوتر في وإذا كان شرط معين غير صحيح، 602 00:26:24,010 --> 00:26:27,470 يمكنك تنفيذ التعليمات البرمجية داخل هذا الشرط. 603 00:26:27,470 --> 00:26:30,101 >> حتى في Scratch-- أساسا موضوع كبير من اليوم 604 00:26:30,101 --> 00:26:32,850 غير أن رفاق بالفعل جميع ينظر إلى المنطق وراء كل شيء 605 00:26:32,850 --> 00:26:34,020 اننا تغطية. 606 00:26:34,020 --> 00:26:36,190 وكل ما نقوم به هو ترجمة شيئا 607 00:26:36,190 --> 00:26:39,090 التي كانت بديهية جدا في الصفر، ويصعب عليه الترميز 608 00:26:39,090 --> 00:26:41,950 في جملة سنكون باستخدام بالنسبة للطبقة التي هي C. 609 00:26:41,950 --> 00:26:47,550 لذلك منطقيا، كان كل هذه الكتلة غير أن قطعة من التعليمات البرمجية هناك حق. 610 00:26:47,550 --> 00:26:49,995 نعم. 611 00:26:49,995 --> 00:26:50,900 حسنا. 612 00:26:50,900 --> 00:26:55,290 >> علينا أيضا أن ندخل في لو ... آخر بيان الذي هو مجرد طبقة إضافية 613 00:26:55,290 --> 00:26:59,120 من التعقيد إلى إن البيان حيث يأخذ الكمبيوتر نظرة على هذا 614 00:26:59,120 --> 00:27:04,260 ويرى، إذا كان هذا الشرط صحيحا، هل كل ما في داخل هذه الأقواس اثنين، 615 00:27:04,260 --> 00:27:08,470 else-- ذلك النوع من مثل الافتراضي إذا انها لا تفي condition-- قيام بذلك. 616 00:27:08,470 --> 00:27:10,120 انها مثل شوكة في الطريق. 617 00:27:10,120 --> 00:27:14,400 إذا انها تمطر في الخارج، أضع على سترة المطر، أي شيء آخر 618 00:27:14,400 --> 00:27:16,330 آخر أنا لا تضع على سترة المطر. 619 00:27:16,330 --> 00:27:18,400 >> لا تجعل هذا المنطق المعقول أن الجميع؟ 620 00:27:18,400 --> 00:27:21,031 رائع. 621 00:27:21,031 --> 00:27:21,530 حسنا. 622 00:27:21,530 --> 00:27:24,970 مثل ذلك مثال من الصعب هذا الذي كنا نرى في C 623 00:27:24,970 --> 00:27:28,890 هو إذا أردت أن تخلق ل متغير يسمى ساعات المنزلية. 624 00:27:28,890 --> 00:27:32,050 وإذا ساعات المنزلية أقل من خمسة، وأنا أقول الحياة عظيمة. 625 00:27:32,050 --> 00:27:33,070 إنه لأمر رائع. 626 00:27:33,070 --> 00:27:36,450 ومع ذلك، ويقول إن الصراع هو real-- وهو ما نحن جميعا على هذا الاثنين 627 00:27:36,450 --> 00:27:39,337 بعد الظهر حتى العلوم هيل هي ربما يفعل الحق now-- 628 00:27:39,337 --> 00:27:40,170 الحضور: [يضحك] 629 00:27:40,170 --> 00:27:42,510 ANDI بنغ: وهي الطريقة التي سوف، شكرا لكم على ذلك. 630 00:27:42,510 --> 00:27:46,180 الطريق كنا hardcode هذا في C هو if-- دعونا نفترض 631 00:27:46,180 --> 00:27:49,920 لدينا بالفعل متغير من نوع ودعا الباحث ساعات المنزلية هنا. 632 00:27:49,920 --> 00:27:53,870 إذا ساعات المنزلية أقل من خمسة printf ()، الحياة عظيمة. 633 00:27:53,870 --> 00:27:57,330 تذكر الحفاظ / ن ل كنت ترغب في سطر جديد بعد. 634 00:27:57,330 --> 00:27:59,660 طباعة آخر، والنضال الحقيقي. 635 00:27:59,660 --> 00:28:03,720 >> هل يفهم الجميع كيف أنا انتقلت من هذه الكتلة 636 00:28:03,720 --> 00:28:07,610 في هذه الكتلة من التعليمات البرمجية؟ 637 00:28:07,610 --> 00:28:08,110 رائع. 638 00:28:08,110 --> 00:28:11,030 639 00:28:11,030 --> 00:28:11,840 حسنا. 640 00:28:11,840 --> 00:28:15,930 >> وحتى الآن ونحن في طريقنا لنلقي نظرة على البيانات إذا متعددة تماما. 641 00:28:15,930 --> 00:28:18,140 لذلك دعونا نفترض الغرض من هذا البرنامج 642 00:28:18,140 --> 00:28:20,870 كان علينا مطالبة المستخدم الصف. 643 00:28:20,870 --> 00:28:24,450 نحن فوري باستخدام GetInt () ل الصف، وأنها إدخال قيمة، 644 00:28:24,450 --> 00:28:27,700 وتريد عرضها ما هو نوع من درجة أنهم وصلوا. 645 00:28:27,700 --> 00:28:30,730 >> حتى إذا كان لي أن تصميم البرنامج، وأنا يعني عادة في كل من أعيننا، 646 00:28:30,730 --> 00:28:35,490 90-100 هو A، 80-90 هو B، وهكذا دواليك وهلم جرا. 647 00:28:35,490 --> 00:28:39,040 ما هو الخطأ في هذا قطعة من التعليمات البرمجية التي ليس 648 00:28:39,040 --> 00:28:41,393 تفعل ما أريد القيام به. 649 00:28:41,393 --> 00:28:41,892 نعم. 650 00:28:41,892 --> 00:28:45,100 >> SPEAKER 11: لديهم الحدود الدنيا، ولكن لم يكن لديهم الحدود العليا. 651 00:28:45,100 --> 00:28:46,280 >> ANDI بنغ: بالضبط. 652 00:28:46,280 --> 00:28:47,950 لم يسمع الجميع ما قالت؟ 653 00:28:47,950 --> 00:28:50,200 هناك سيكون العلوي حدود، ولكن لا الحدود الدنيا. 654 00:28:50,200 --> 00:28:52,540 عذرا، العكس، الحدود الدنيا، لا حدود العليا. 655 00:28:52,540 --> 00:28:55,090 لذلك تريد أن اتخاذ طعنة في قوله 656 00:28:55,090 --> 00:28:58,945 ما يمكن أن تكون مطبوعة على هذا الشاشة إذا كان لي أن تشغيل هذا الرمز. 657 00:28:58,945 --> 00:28:59,820 SPEAKER 11: خطأ؟ 658 00:28:59,820 --> 00:29:01,140 ANDI بنغ: خطأ؟ 659 00:29:01,140 --> 00:29:02,740 تخمين كبير، ليس صحيحا تماما. 660 00:29:02,740 --> 00:29:05,465 هل لدى أي شخص آخر طعنة؟ 661 00:29:05,465 --> 00:29:06,640 نعم، هارون. 662 00:29:06,640 --> 00:29:10,099 >> هارون: إذا وضعت في شيء أكبر من 90، 663 00:29:10,099 --> 00:29:11,640 انها تظهر جميع الدرجات التي حصلت. 664 00:29:11,640 --> 00:29:13,640 فإنه تظهر لك حصلت على A، كنت حصلت على B، كنت حصلت على C. 665 00:29:13,640 --> 00:29:13,870 >> ANDI بنغ: نعم. 666 00:29:13,870 --> 00:29:14,840 هذا صحيح تماما. 667 00:29:14,840 --> 00:29:17,820 لذلك، سيكون ذلك رائعا. 668 00:29:17,820 --> 00:29:21,781 ومع ذلك، فهي متبادلة حصري، على ما أعتقد. 669 00:29:21,781 --> 00:29:23,280 إذا كان لي أن تشغيل هذه القطعة من التعليمات البرمجية. 670 00:29:23,280 --> 00:29:26,200 ثم دعنا نقول فقط، وأنا إدخالها الصف 95. 671 00:29:26,200 --> 00:29:30,360 لذلك يتم تخزين 95 الآن في كثافة العمليات يسمى الصف. 672 00:29:30,360 --> 00:29:33,610 >> وهكذا C هي لغة الذي يمتد حتى أعلى إلى أسفل، 673 00:29:33,610 --> 00:29:36,000 لذلك سيكون لدائما تشغيل ما يصل إلى أسفل. 674 00:29:36,000 --> 00:29:39,420 لذلك سوف يأتي هنا، وقراءة إذا درجة أكبر من أو يساوي 90، 675 00:29:39,420 --> 00:29:42,850 printf () التي حصلت على A. العظمى، I لديها 95، وهذا أكبر من 90. 676 00:29:42,850 --> 00:29:44,866 انها تسير للطباعة، حصلت على A. انه ذاهب 677 00:29:44,866 --> 00:29:48,850 لنلقي نظرة على هذا إذا، انه سيكون نقول، حسنا 95 هو أيضا أكبر من 80، 678 00:29:48,850 --> 00:29:52,970 انه سيكون لطباعة أنت أيضا حصلت على حصلت علامة تعجب B، وهلم جرا وهكذا 679 00:29:52,970 --> 00:29:53,690 إيابا. 680 00:29:53,690 --> 00:29:55,890 >> بحيث يمكننا أن نرى كل شيء، هذا هو علة مشتركة 681 00:29:55,890 --> 00:30:00,760 التي قد تحدث عندما نكون كتابة التعليمات البرمجية للبحث عنها. 682 00:30:00,760 --> 00:30:05,430 أي شخص، على أية أسئلة على لماذا الذي يحدث؟ 683 00:30:05,430 --> 00:30:05,930 رائعة. 684 00:30:05,930 --> 00:30:08,920 685 00:30:08,920 --> 00:30:09,440 حسنا. 686 00:30:09,440 --> 00:30:12,110 >> لذلك كيف نصلح هذا، من الواضح السؤال التالي منطقي. 687 00:30:12,110 --> 00:30:16,290 حسنا، لدينا هذه جميلة أشياء دعا عدا ذلك إذا آخر 688 00:30:16,290 --> 00:30:18,010 إذا كانت تصريحات شيء آخر. 689 00:30:18,010 --> 00:30:22,230 حتى تستطيع أن ترى، إذا أردت لتغيير هذه المشكلة، 690 00:30:22,230 --> 00:30:25,260 أردت أن تجعل كل من شروط يستبعد بعضها بعضا، 691 00:30:25,260 --> 00:30:26,860 كنت إضافة آخر ... إذا البيان. 692 00:30:26,860 --> 00:30:30,068 >> وهذه من course-- نفكر بها سلالم، أو ما شابه درجات على ladder-- 693 00:30:30,068 --> 00:30:34,050 يمكنك إضافة العديد من هذه كما كنت نريد لأكبر عدد ممكن من الشروط على النحو الذي تريد. 694 00:30:34,050 --> 00:30:36,790 حتى هنا، إذا كنت إدخالها الصف لتكون 95. 695 00:30:36,790 --> 00:30:39,479 إذا درجة أكبر من 95، printf ()، حصلت على A. العظمى. 696 00:30:39,479 --> 00:30:42,020 انها سوف نرى آخر ... إذا وانها سوف تعرف، أوه لا، 697 00:30:42,020 --> 00:30:43,750 أنا بالفعل تنفيذ أول آخر. 698 00:30:43,750 --> 00:30:47,020 I know-- أو if-- أولا أنا أعلم أن أنا لا بد من النظر في أي من هذه 699 00:30:47,020 --> 00:30:48,920 لأن واحدا منهم وقد سبق صحيح. 700 00:30:48,920 --> 00:30:50,410 لذلك سيكون لتشغيلها من أعلى إلى أسفل. 701 00:30:50,410 --> 00:30:53,650 بمجرد أن الأول هو الصحيح، ثم انها سوف تخطي كل ما تبقى 702 00:30:53,650 --> 00:30:54,675 من آخر ... المحاذير. 703 00:30:54,675 --> 00:30:55,550 هل هذا منطقي؟ 704 00:30:55,550 --> 00:30:57,841 لذلك، وبهذه الطريقة يكون لديك مستويات مختلفة من التحقق 705 00:30:57,841 --> 00:31:01,090 وحالما واحد منهم هو كاذب، و الباقي أيضا، فإنها لن تحقق حتى. 706 00:31:01,090 --> 00:31:03,577 707 00:31:03,577 --> 00:31:04,076 رائع. 708 00:31:04,076 --> 00:31:07,680 709 00:31:07,680 --> 00:31:08,180 حسنا. 710 00:31:08,180 --> 00:31:11,180 >> لذلك هذا هو مثال مختلفة نوع من عبارة شرطية 711 00:31:11,180 --> 00:31:15,250 نرى كثير من الأحيان أقل، ولكن سنرى منها واستخدامها. 712 00:31:15,250 --> 00:31:18,120 وانهم في كثير من الأحيان أكثر كفاءة في حالات معينة. 713 00:31:18,120 --> 00:31:20,020 لذلك لدينا ما يسمى بيان التبديل. 714 00:31:20,020 --> 00:31:25,140 حتى قبل غطينا ما هو لآخر بيان، وإذا ... بيان آخر. 715 00:31:25,140 --> 00:31:27,790 هنا، لدينا ما هي دعا البيانات التبديل. 716 00:31:27,790 --> 00:31:31,100 >> حتى متى نستخدم التبديل البيانات هي المفتاح؟ 717 00:31:31,100 --> 00:31:34,090 وذلك في بيان التبديل، كنت عادة، عادة، في الواقع كنت 718 00:31:34,090 --> 00:31:38,010 لا يمكن إلا أن الأعداد الصحيحة المدخلات الخاصة بك المتغير الذي كنت التدقيق. 719 00:31:38,010 --> 00:31:42,390 لذلك إذا أردت أن تحقق لمعرفة إذا كان number-- معينة على سبيل المثال 720 00:31:42,390 --> 00:31:43,720 الصف، إذا حصلت على 90. 721 00:31:43,720 --> 00:31:48,190 أريد أن أرى إذا كان هذا هو وA، B، C. أو كان يمكن أن يكون الحال هنا. 722 00:31:48,190 --> 00:31:50,840 ومع ذلك، فإن القضية لديه أن تكون ثابتة أخرى. 723 00:31:50,840 --> 00:31:53,170 >> حتى في هذا المعنى، فإن بيان التبديل يمكن فقط 724 00:31:53,170 --> 00:31:55,290 تحقق من وجود المساواة بين رقمين. 725 00:31:55,290 --> 00:31:57,242 فإنه لا يتم التحقق من أي شيء آخر. 726 00:31:57,242 --> 00:31:59,950 لذلك هذا شيء أن يكون جدا الحذر من عند استخدامك هذا. 727 00:31:59,950 --> 00:32:04,810 حتى هنا، إذا أردت أن تحقق لمعرفة لو كانت لغتي الصف 90 يساوي 90 أو 80 728 00:32:04,810 --> 00:32:08,500 أو 70 أو 60، ومن ثم طباعة الصف المقابل، 729 00:32:08,500 --> 00:32:11,420 سأكون قادرا على كتابة ذلك في بيان التبديل. 730 00:32:11,420 --> 00:32:15,120 >> لذلك سوف يأتي هنا، هو الاختيار هذا صحيح يساوي هذا الثابت؟ 731 00:32:15,120 --> 00:32:17,030 إن لم يكن، فإنه سيكون لتخطي. 732 00:32:17,030 --> 00:32:19,880 هل يساوي ثابت اثنين، وهلم جرا وهكذا دواليك، 733 00:32:19,880 --> 00:32:22,390 حتى تصل إلى الافتراضي، إذا كان أيا منهم متساوون. 734 00:32:22,390 --> 00:32:24,590 في أقرب وقت واحد منهم ومن المقرر أن تكون على قدم المساواة، 735 00:32:24,590 --> 00:32:27,040 انها تسير للقيام بذلك سطر من التعليمات البرمجية وكسر. 736 00:32:27,040 --> 00:32:30,990 وهو ما يعني انه سيكون لضرب هذا تشغيل، وكسر، ومجرد تخطي تماما 737 00:32:30,990 --> 00:32:32,240 في الجزء السفلي من التعليمات البرمجية. 738 00:32:32,240 --> 00:32:37,550 حتى في هذا المعنى وهذا النوع من الوظائف مثل عدا ذلك إذا آخر إذا البيان. 739 00:32:37,550 --> 00:32:40,830 >> حتى هنا ملموسة مثال ليا رفاق. 740 00:32:40,830 --> 00:32:46,140 لذلك دعونا نفترض أنني أريد أن إنشاء متغير يسمى سنة التأسيس. 741 00:32:46,140 --> 00:32:50,230 وأريد أن مطالبة المستخدم لإدخال السنة التي مدرستهم تأسست. 742 00:32:50,230 --> 00:32:53,300 لذلك أنا يمكن أن تخلق بيان التبديل هنا. 743 00:32:53,300 --> 00:32:56,650 ودعنا نقول فقط، ومدخلات 1636. 744 00:32:56,650 --> 00:33:01,120 >> هذا الرمز هنا هو الذهاب لرؤية التبديل سنة التأسيس أي ما يعادل 1636. 745 00:33:01,120 --> 00:33:03,940 انها سوف نرى حالة 1636، يا هؤلاء الناس سواسية، 746 00:33:03,940 --> 00:33:06,230 printf () لا ينبغي أن تكون في تلك المدرسة في الشمال؟ 747 00:33:06,230 --> 00:33:08,770 لأننا نفترض أنهم لا تذهب هنا إذا ذهبوا إلى جامعة هارفارد، 748 00:33:08,770 --> 00:33:10,380 كسر والقفز الى النهاية. 749 00:33:10,380 --> 00:33:14,090 >> إذا كان لي أن المدخلات 1701، والتي أفترض كل واحد منا سوف المدخلات، 750 00:33:14,090 --> 00:33:17,500 سيكون تخطي هذه الحالة، وتأتي وصولا الى حالة اثنين وهو 1701، 751 00:33:17,500 --> 00:33:19,660 والطباعة مرحبا بكم في جامعة ييل! 752 00:33:19,660 --> 00:33:21,360 كسر، القفز الى النهاية. 753 00:33:21,360 --> 00:33:25,130 آخر وربما كنت تأخذ هذه الدورة على الانترنت التي case-- ترحيب رائع 754 00:33:25,130 --> 00:33:29,020 لYale-- انه سيكون للذهاب إلى الطباعة الافتراضية، مرحبا الإنترنت! 755 00:33:29,020 --> 00:33:29,870 وكسر. 756 00:33:29,870 --> 00:33:30,466 نعم. 757 00:33:30,466 --> 00:33:32,090 >> SPEAKER 12: يمكنك استخدام آخر بدلا من الافتراضي هناك؟ 758 00:33:32,090 --> 00:33:34,550 >> ANDI بنغ: لا، لأن طريقة أن هذه الوظيفة كاملة 759 00:33:34,550 --> 00:33:39,170 التبديل بنيت بناء الجملة لك تحتاج إلى استخدام هو الحال الحالة الافتراضية. 760 00:33:39,170 --> 00:33:42,400 انها مثل إذا آخر إذا، هذا واحد انها حالة الحالة الافتراضية. نعم. 761 00:33:42,400 --> 00:33:45,650 SPEAKER 13: أنت ربما سبق أن قلت هذا، ولكن هل يمكن أن يكون أكثر من حالتين؟ 762 00:33:45,650 --> 00:33:48,066 ANDI بنغ: نعم، هل يمكن لدينا العديد من الحالات على النحو الذي تريد. 763 00:33:48,066 --> 00:33:50,050 أعتقد أنها ترغب فقط مضيفا بلا حدود على. 764 00:33:50,050 --> 00:33:52,396 >> SPEAKER 14: إذا كنت تحولت 1701 مع 1636، 765 00:33:52,396 --> 00:33:54,187 لا يجعل حقا حق الاختلاف؟ 766 00:33:54,187 --> 00:33:55,770 انها مجرد الذهاب الى أن التحقق من ذلك. 767 00:33:55,770 --> 00:33:56,900 >> ANDI بنغ: هذا هو سؤال جيد حقا. 768 00:33:56,900 --> 00:33:58,880 ونحن سوف أتطرق هذا في وقت لاحق، ولكن فقط 769 00:33:58,880 --> 00:34:01,160 أعلم أن هذا التحول بيان وinfinitely-- انها 770 00:34:01,160 --> 00:34:03,536 أكثر كفاءة من ذلك، وإذا آخر إذا كان لأنه يعمل 771 00:34:03,536 --> 00:34:06,660 استخدام نوع مختلف من الوظيفة التي يسمح لك لفي الأساس، لمجرد 772 00:34:06,660 --> 00:34:08,790 القفز مباشرة إلى الحالة عليك أن تكون في. 773 00:34:08,790 --> 00:34:10,547 نعم. 774 00:34:10,547 --> 00:34:11,255 SPEAKER 14: بارد. 775 00:34:11,255 --> 00:34:11,754 شكر. 776 00:34:11,754 --> 00:34:12,526 ANDI بنغ: نعم 777 00:34:12,526 --> 00:34:16,687 >> SPEAKER 14: وأنت لا تستطيع قيام الحالات مثل وأكبر من. 778 00:34:16,687 --> 00:34:17,270 ANDI بنغ: رقم 779 00:34:17,270 --> 00:34:19,860 لذلك، هذا ما يحد عن بيان التبديل هو أن لديك 780 00:34:19,860 --> 00:34:21,564 لديه ثوابت فقط، الأعداد الصحيحة فقط. 781 00:34:21,564 --> 00:34:22,064 نعم. 782 00:34:22,064 --> 00:34:25,179 783 00:34:25,179 --> 00:34:25,820 حسنا. 784 00:34:25,820 --> 00:34:28,659 >> لذلك هذا هو ما كنت سوف اللاعبين تواجه كثير من الأحيان أقل من، 785 00:34:28,659 --> 00:34:32,280 ولكن أردت فقط أن ندخله في القضية. 786 00:34:32,280 --> 00:34:36,210 لدينا هنا ما دعا مشغل الثلاثي. 787 00:34:36,210 --> 00:34:39,370 حيث الأساس، انها مجرد مثل ل بيان إذا جمعت إلى سطر واحد. 788 00:34:39,370 --> 00:34:42,630 هنا، سأذهب إلى السطر التالي، و الصفحة التالية، لأنه من السهل أن نرى. 789 00:34:42,630 --> 00:34:44,860 >> لذلك رأينا كل هذا أليس كذلك؟ 790 00:34:44,860 --> 00:34:46,110 هذا من السهل جدا أن يتبع. 791 00:34:46,110 --> 00:34:51,290 إذا أردت أن تجعل متغير يسمى سلسلة المسماة الصورة، إذا كان عدد معين 792 00:34:51,290 --> 00:34:54,770 أعطي هو أقل من 100، I تريد تعيين الأقل إلى السلسلة، 793 00:34:54,770 --> 00:34:57,240 آخر أريد أن تعيين عالية. 794 00:34:57,240 --> 00:35:01,370 >> هذا هنا هو فعل نفس الشيء بالضبط هذه الخطوط ثمانية من التعليمات البرمجية يفعلون. 795 00:35:01,370 --> 00:35:03,600 حتى هنا أريد إنشاء سلسلة متغيرة. 796 00:35:03,600 --> 00:35:08,520 وهذا هو الشرط أنا فحص، إذا كان الرقم أقل من 100، 797 00:35:08,520 --> 00:35:12,750 ثم قمت بتعيين قيمة منخفضة، آخر تعيين قيمة عالية. 798 00:35:12,750 --> 00:35:15,802 >> وهذه الشرائح تكون على الانترنت، لا تقلق إذا يا رفاق لا تحصل على هذا لأسفل. 799 00:35:15,802 --> 00:35:18,510 هذا هو مجرد وسيلة أبسط وأكثر طريقة فعالة لكتابة التعليمات البرمجية. 800 00:35:18,510 --> 00:35:21,290 801 00:35:21,290 --> 00:35:21,810 حسنا. 802 00:35:21,810 --> 00:35:25,190 >> وحتى الآن ونحن في طريقنا ل إدخال ما، بالنسبة لمعظم الناس 803 00:35:25,190 --> 00:35:28,660 هي مثل جدا، مربكة جدا شيء للتفكير في البداية. 804 00:35:28,660 --> 00:35:30,226 القسم الحلقة. 805 00:35:30,226 --> 00:35:32,600 حتى اليوم، ونحن في طريقنا للحديث حوالي ثلاثة أنواع من الحلقات. 806 00:35:32,600 --> 00:35:34,890 ونحن في طريقنا لتبدأ فترة من الوقت حلقة، ثم الحديث عن تأليف حين حلقة، 807 00:35:34,890 --> 00:35:36,740 ثم نتحدث عن لالحلقات. 808 00:35:36,740 --> 00:35:40,010 >> ذلك أساسا، لأكثر المتعلمين البصرية هناك، 809 00:35:40,010 --> 00:35:44,410 لدينا، في الأساس، والرسوم البيانية تصوير ما تفعله حلقة في حين. 810 00:35:44,410 --> 00:35:48,290 حتى في البرمجة، تبدئين وأدخل حلقة عند نقطة معينة. 811 00:35:48,290 --> 00:35:49,470 يمكنك التحقق من حالة. 812 00:35:49,470 --> 00:35:52,165 وإذا كان الشرط صحيحا، يمكنك تنفيذ التعليمات البرمجية في الداخل. 813 00:35:52,165 --> 00:35:53,790 وكنت أعود حولك والاختيار. 814 00:35:53,790 --> 00:35:57,190 اذا كان لا يزال صحيحا عليك أن تبقي تشغيل هذا الرمز حولها وحول في حلقة. 815 00:35:57,190 --> 00:36:00,970 >> ومع ذلك، والثاني أن الشرط يصبح كاذبة، 816 00:36:00,970 --> 00:36:02,739 وأنت تسير لكسر وإنهاء الحلقة. 817 00:36:02,739 --> 00:36:05,030 وهذا هو الأساس بناء جملة كنت تنوي استخدام. 818 00:36:05,030 --> 00:36:08,250 في حين أن حالة معينة هي صحيح قيام بذلك، إذا لم يكن صحيحا، 819 00:36:08,250 --> 00:36:12,920 وأنت تسير على القفز الى النهاية والمضي قدما في البرنامج. 820 00:36:12,920 --> 00:36:13,690 حسنا. 821 00:36:13,690 --> 00:36:17,250 >> هل لديها مثال على ما يحتمل أن يحدث 822 00:36:17,250 --> 00:36:19,160 إذا حاولت تشغيل هذه القطعة من التعليمات البرمجية؟ 823 00:36:19,160 --> 00:36:22,470 بالمناسبة، SAJ-- هذا Scaz، اندى، Jason-- سنقوم يوقع رسائل البريد الإلكتروني، 824 00:36:22,470 --> 00:36:24,830 الحب، SAJ. 825 00:36:24,830 --> 00:36:25,573 هذا نحن. 826 00:36:25,573 --> 00:36:26,500 حسنا. 827 00:36:26,500 --> 00:36:29,829 >> أي شخص لديه على سبيل المثال، أو لديك فكرة عن ما هذا من شأنه أن الطباعة؟ 828 00:36:29,829 --> 00:36:30,870 نوع من السؤال خدعة. 829 00:36:30,870 --> 00:36:34,550 830 00:36:34,550 --> 00:36:39,380 حتى هنا، تذكر حالة نحن التحقق من هو بينما صحيح. 831 00:36:39,380 --> 00:36:42,840 وذلك في حين أن هذا صحيح، انها الذهاب إلى طباعة، وأنا أحب SAJ! 832 00:36:42,840 --> 00:36:48,460 هل هناك أي النقطة التي نرغب تغيير هذا إلى أي شيء خلاف ذلك؟ 833 00:36:48,460 --> 00:36:49,050 لا يحق؟ 834 00:36:49,050 --> 00:36:51,470 >> حتى هنا، لدينا واجه ما هو على الارجح 835 00:36:51,470 --> 00:36:54,310 ستكون التنصت الكثير من البرامج الخاصة بك، وحلقة لا نهائية. 836 00:36:54,310 --> 00:36:56,268 ستجد أنه إذا كنت تشغيل هذه القطعة من التعليمات البرمجية، 837 00:36:56,268 --> 00:36:58,160 انها مجرد الذهاب للحفاظ على الطباعة، وأنا أحب SAJ! 838 00:36:58,160 --> 00:37:00,701 بينما نحن نقدر الدعم، نحن لا نريد أجهزة الكمبيوتر 839 00:37:00,701 --> 00:37:02,910 إلى تعطل لأنك الحفاظ على الطباعة أحب SAJ! 840 00:37:02,910 --> 00:37:05,320 >> لذا يرجى، من فضلك، تجنب حلقة لا نهائية 841 00:37:05,320 --> 00:37:07,320 لأنه يحدث أبدا لتقييم إلى false 842 00:37:07,320 --> 00:37:08,780 وأنت تسير أبدا لمغادرة الحلقة. 843 00:37:08,780 --> 00:37:10,530 وأنت تسير ل أن امتص في الأبد. 844 00:37:10,530 --> 00:37:13,000 رائع. 845 00:37:13,000 --> 00:37:13,694 حسنا. 846 00:37:13,694 --> 00:37:15,610 أما النوع الثاني من حلقة سنتحدث عنه اليوم 847 00:37:15,610 --> 00:37:17,580 هو القيام به أثناء الحلقة، القيام به أثناء الحلقة. 848 00:37:17,580 --> 00:37:20,580 وانه دعا افعل حين حلقة لأن لديك دو وحين. 849 00:37:20,580 --> 00:37:24,390 لذلك هذا هو مماثل جدا لبعض الوقت حلقة، ولكنها مختلفة قليلا. 850 00:37:24,390 --> 00:37:27,620 هنا، كنت تنوي القيام به كل ما في داخل هذا 851 00:37:27,620 --> 00:37:29,747 في حين أن حالة معينة هو الصحيح. 852 00:37:29,747 --> 00:37:32,580 حتى لو كنت C والكمبيوتر أنا يهرول هذه القطعة من التعليمات البرمجية، 853 00:37:32,580 --> 00:37:33,880 أنا نلقي نظرة على القمة. 854 00:37:33,880 --> 00:37:36,890 أذهب إلى C، وأنا أقول تفعل هذا الشيء. 855 00:37:36,890 --> 00:37:40,550 وبعد ذلك تحقق، في حين أن هذا صحيح، لا بد لي من تكرار ذلك. 856 00:37:40,550 --> 00:37:42,750 ولكن في حين أن هذا غير صحيح، ثم أنتقل إلى الأمام 857 00:37:42,750 --> 00:37:44,700 وأنا أعود أبدا إلى أن الحلقة مرة أخرى. 858 00:37:44,700 --> 00:37:48,360 >> أي شخص يمكن أن يأخذ طعنة في ما الفرق 859 00:37:48,360 --> 00:37:52,130 بين هذه الحلقة ونحن واحدة فقط اطلعت على أمر من الناحية العملية. 860 00:37:52,130 --> 00:37:52,717 نعم. 861 00:37:52,717 --> 00:37:55,050 SPEAKER 15: الشرط يأتي بعد بدلا من قبل؟ 862 00:37:55,050 --> 00:37:55,841 ANDI بنغ: بالضبط. 863 00:37:55,841 --> 00:37:57,984 فقالت حالة يأتي بعد، وليس قبل. 864 00:37:57,984 --> 00:38:00,400 في نهاية المطاف، والفرق بين هذا وحلقة في حين 865 00:38:00,400 --> 00:38:03,597 هو أن كنت مجرد الذهاب للقيام كل ما في داخل هذا بغض النظر عن 866 00:38:03,597 --> 00:38:06,430 أم لا حالتك صحيح، ومن ثم تحقق الشرط. 867 00:38:06,430 --> 00:38:08,304 حتى في هذه الحالة، كنت always-- في هذا السبيل، 868 00:38:08,304 --> 00:38:11,240 كنت دائما التأكد من كل ما هو يعمل داخل على الأقل 869 00:38:11,240 --> 00:38:14,230 مرة واحدة قبل التحقق لمعرفة إذا كنت تريد ذلك لتشغيل مرة أخرى. 870 00:38:14,230 --> 00:38:18,040 >> وهنا مثال من عندما كنا استخدامها. 871 00:38:18,040 --> 00:38:22,570 هكذا على سبيل المثال، إذا أردت أن يكون متغير من نوع int اسمه عمر، 872 00:38:22,570 --> 00:38:25,640 وأريد أن يدفع المستخدم بالنسبة لأعمارهم، 873 00:38:25,640 --> 00:38:27,910 انا ذاهب الى القيام printf () ما هو عمرك؟ 874 00:38:27,910 --> 00:38:30,330 العمر = GetInt ()، التي ومطالبة المستخدم. 875 00:38:30,330 --> 00:38:32,140 >> وبعض الناس سوف تكون مزعجة حقا. 876 00:38:32,140 --> 00:38:34,931 وكنت لا تريد الخلل في الخاص برنامج إدخال شخص ما مثل، 877 00:38:34,931 --> 00:38:36,680 يا أنا السالبة 4 سنوات من العمر أو أيا كان. 878 00:38:36,680 --> 00:38:39,900 وفي هذه الحالة إذا كانت تفعل ذلك، وهذا تقييم 879 00:38:39,900 --> 00:38:43,150 إلى true، مما يعني أنني ذاهب ل يجب أن تبقى العودة والقيام بذلك. 880 00:38:43,150 --> 00:38:45,310 لذلك هذا هو ذاهب للحفاظ على على المستخدم دفع إعادة 881 00:38:45,310 --> 00:38:47,960 لتعطيك مثل الحقيقي عدد السن وانها 882 00:38:47,960 --> 00:38:51,930 ذاهب للحفاظ على العودة والإعادة حتى أنها تعطيك العمر الحقيقي 883 00:38:51,930 --> 00:38:56,900 أكبر من واحد، أو ليس صفرا. 884 00:38:56,900 --> 00:38:58,020 >> حتى التلميح، تلميحا. 885 00:38:58,020 --> 00:39:02,263 وسيكون هذا جدا ومفيدة جدا واحدة من المشاكل PSET الخاص بك. 886 00:39:02,263 --> 00:39:04,155 نعم. 887 00:39:04,155 --> 00:39:05,580 >> SPEAKER 16: يصيح، آسف. 888 00:39:05,580 --> 00:39:06,288 >> ANDI بنغ: نعم. 889 00:39:06,288 --> 00:39:09,424 >> SPEAKER 16: هل هناك، وليس أن يكون الأحمق، but-- 890 00:39:09,424 --> 00:39:10,340 ANDI بنغ: لا تقلق. 891 00:39:10,340 --> 00:39:11,990 SPEAKER 16: --are هناك قواعد مختلفة هنا، 892 00:39:11,990 --> 00:39:13,810 أو هل ننسى فقط لوضع الاقتباس؟ 893 00:39:13,810 --> 00:39:14,250 >> ANDI بنغ: أوه نعم. 894 00:39:14,250 --> 00:39:15,530 آسف، وهذا تماما بلدي سيئة. 895 00:39:15,530 --> 00:39:17,100 كان ذلك بالتأكيد من المفترض أن يكون الاقتباس. 896 00:39:17,100 --> 00:39:17,690 مسكة جيدة. 897 00:39:17,690 --> 00:39:18,800 التي من شأنها أن يتم تشغيل. 898 00:39:18,800 --> 00:39:22,070 899 00:39:22,070 --> 00:39:22,830 حسنا. 900 00:39:22,830 --> 00:39:26,160 >> وبالتالي فإن نوع آخر من الحلقة سنتحدث حول و، في نهاية المطاف، ونوع من أكثر 901 00:39:26,160 --> 00:39:28,854 مجمع هو للحلقة. 902 00:39:28,854 --> 00:39:30,770 لا تقلق إذا كنت لا تعرف ماذا يعني ذلك. 903 00:39:30,770 --> 00:39:32,061 انها مربكة جدا في البداية. 904 00:39:32,061 --> 00:39:33,640 سنذهب على سبيل المثال. 905 00:39:33,640 --> 00:39:37,040 >> كل ما يحدث في لحلقة هو أن لديك ثلاثة بيانات 906 00:39:37,040 --> 00:39:38,380 ان كنت تريد الذهاب لتشمل. 907 00:39:38,380 --> 00:39:42,130 ذلك لشيء معين، وكنت الذهاب إلى تهيئة متغير. 908 00:39:42,130 --> 00:39:45,280 وأنت تسير لإضافة شرط ل وهذه الحلقة سوف تبقى قيد التشغيل. 909 00:39:45,280 --> 00:39:47,790 وبعد ذلك، في نهاية حلقة، وأنت تسير لتحديثه. 910 00:39:47,790 --> 00:39:50,248 يمكنك تحديث متغير التي تريد تتبع. 911 00:39:50,248 --> 00:39:52,530 لذلك نستخدم عادة لحلقات لأننا عندما 912 00:39:52,530 --> 00:39:55,390 تحتاج إلى تشغيل حلقة ل مبلغ معين من المرات 913 00:39:55,390 --> 00:39:58,900 ونحن نعرف بالفعل، يا أريد هذه الحلقة لتنفيذ مثل 10 مرات، 914 00:39:58,900 --> 00:40:03,060 فإنك do-- سأذهب أكثر مثال على الصفحة التالية. 915 00:40:03,060 --> 00:40:07,830 >> حتى هنا على سبيل المثال، في خدش، إذا كنت أراد شيئا أن يكرر 10 مرات، 916 00:40:07,830 --> 00:40:10,790 كل ما عليك أن أقول كان، كرر 10 مرات أحب SAJ! 917 00:40:10,790 --> 00:40:15,260 وهو أكثر قبولا عرض الدعم للولايات المتحدة 918 00:40:15,260 --> 00:40:17,120 بدلا من حلقة لا نهائية. 919 00:40:17,120 --> 00:40:19,920 هنا، كيف تفعل الانتقال إلى C والكتابة 920 00:40:19,920 --> 00:40:26,040 هذا هو لint-- انا ذاهب لإنشاء أو تعريف متغير من نوع int يدعى ط. 921 00:40:26,040 --> 00:40:30,089 انا ذاهب الى تهيئة إلى 0، لذلك أنا = 0؛ 922 00:40:30,089 --> 00:40:31,630 وهذا سيكون وضعي. 923 00:40:31,630 --> 00:40:33,860 لذلك أنا أقل من 10. 924 00:40:33,860 --> 00:40:36,096 ثم في end-- البيان الأخير كنت 925 00:40:36,096 --> 00:40:38,710 ستكون لدينا هو التحديث لل ما يحدث للط متغير 926 00:40:38,710 --> 00:40:40,206 في نهاية الخاص بك للحلقة. 927 00:40:40,206 --> 00:40:42,830 لذلك نوع من الخلط، لأن أجزاء مختلفة من هذا الخط 928 00:40:42,830 --> 00:40:44,871 ويحدث في مختلف أنواع من الحلقة. 929 00:40:44,871 --> 00:40:46,746 ولكن سأذهب على مثال شبة الكود من ذلك 930 00:40:46,746 --> 00:40:50,360 وربما يفسر هذا فقط قليلا أفضل. 931 00:40:50,360 --> 00:40:51,500 >> حتى هنا. 932 00:40:51,500 --> 00:40:52,929 هذا هو حلقة رأينا فقط. 933 00:40:52,929 --> 00:40:55,470 أساسا في شبة الكود، ما يحدث في هذا البرنامج، 934 00:40:55,470 --> 00:40:57,940 هو أولا أنا خلق ط، تهيئة إلى 0. 935 00:40:57,940 --> 00:41:00,440 أنا فحص لمعرفة ما اذا كنت غير أقل من 10، في هذه الحالة 936 00:41:00,440 --> 00:41:02,840 أول مرة هو لأن 0 أقل من 10. 937 00:41:02,840 --> 00:41:04,727 وهكذا في حلقة سيصطدم. 938 00:41:04,727 --> 00:41:06,310 ثم انا ذاهب الى طباعة هذا الخط. 939 00:41:06,310 --> 00:41:11,240 ثم في نهاية هذا الخط، الحق هنا، وانا ذاهب للقيام الزيادة ط، ط ++، 940 00:41:11,240 --> 00:41:13,370 كل ما يعنيه ذلك هو تزايد من قبل واحدة. 941 00:41:13,370 --> 00:41:15,460 >> لذلك أنا الآن 1. 942 00:41:15,460 --> 00:41:17,960 لأنه كان مرة واحدة 0، إذا أنا زيادة انها، انها الآن 1. 943 00:41:17,960 --> 00:41:19,610 ثم انا ذاهب الى العودة إلى بداية الحلقة 944 00:41:19,610 --> 00:41:20,730 ويمكنني التحقق من حالة. 945 00:41:20,730 --> 00:41:22,080 هو الشرط لا يزال صحيحا؟ 946 00:41:22,080 --> 00:41:24,030 نعم، 1 لا يزال أقل من 10. 947 00:41:24,030 --> 00:41:27,370 لذلك سيكون لطباعة هذا مرة أخرى، الذهاب ومن ثم زيادة ط، وتحقق 948 00:41:27,370 --> 00:41:29,180 الحالة بشكل مستمر، مستمر، 949 00:41:29,180 --> 00:41:33,290 حتى تحصل في نهاية المطاف إلى النقطة حيث ط 10. 950 00:41:33,290 --> 00:41:36,300 >> وأنت تسير لطباعة هذا 10 مرات وبعد ذلك يتم الانتقال إلى تساوي 10. 951 00:41:36,300 --> 00:41:37,800 وأنت تسير للتحقق من حالة. 952 00:41:37,800 --> 00:41:38,760 10 أقل من 10؟ 953 00:41:38,760 --> 00:41:40,370 لا، هذا غير صحيح. 954 00:41:40,370 --> 00:41:43,020 وهكذا، هذه الحلقة لن لتشغيل، انها تسير لكسر، 955 00:41:43,020 --> 00:41:45,040 وأنت تسير ل مع الاستمرار في التعليمات البرمجية. 956 00:41:45,040 --> 00:41:47,550 >> بحيث يمكنك رؤية الرجال، وهذا هو مثال عظيم حقا 957 00:41:47,550 --> 00:41:53,110 من حلقة يمكنك البرنامج في ذلك يمتد لفترة محددة من الأوقات. 958 00:41:53,110 --> 00:41:54,457 كل واحد واضح؟ 959 00:41:54,457 --> 00:41:54,956 نعم. 960 00:41:54,956 --> 00:41:59,060 >> SPEAKER 17: ماذا عن الزيادة أضعافا مضاعفة، هل هو ترميز مختلفة؟ 961 00:41:59,060 --> 00:42:02,060 >> ANDI بنغ: أنت can-- سنذهب أكثر من هذا في الشريحة التالية. 962 00:42:02,060 --> 00:42:03,350 سؤال جيد. 963 00:42:03,350 --> 00:42:05,910 غير anyone-- قبل أن أنتقل on-- أي شخص على الإطلاق الخلط، 964 00:42:05,910 --> 00:42:07,640 لأن هذا هو مفهوم صعب حقا. 965 00:42:07,640 --> 00:42:09,510 لا تقلق، إذا you're-- OK. 966 00:42:09,510 --> 00:42:10,010 رائع. 967 00:42:10,010 --> 00:42:12,836 968 00:42:12,836 --> 00:42:13,490 >> حسنا. 969 00:42:13,490 --> 00:42:14,610 مجرد شريحة العامة. 970 00:42:14,610 --> 00:42:18,020 هذه الحلقة في حين يقوم به وكان نفس الشيء بالضبط وللحلقة. 971 00:42:18,020 --> 00:42:19,631 هو مكتوب فقط بشكل مختلف. 972 00:42:19,631 --> 00:42:22,130 يمكنك الإطلاع الرجال الشرائح على راحتك في وقت لاحق. 973 00:42:22,130 --> 00:42:24,880 ولكن أعرف فقط أن هناك عدة طرق كتابة نفس الشيء 974 00:42:24,880 --> 00:42:28,300 أن يحدث مع حلقات مختلفة. 975 00:42:28,300 --> 00:42:28,800 حسنا. 976 00:42:28,800 --> 00:42:32,380 >> لذلك، ونحن الآن في الحصول على مسألة ما اذا كان لدينا حلقة داخل حلقة. 977 00:42:32,380 --> 00:42:35,810 نحن نخوض الحقيقي نوع الاشياء إنشائها هنا. 978 00:42:35,810 --> 00:42:40,640 عندما تريد أن تفعل أشياء متعددة مرات داخل أشياء أخرى 979 00:42:40,640 --> 00:42:44,129 أن تفعل أشياء عدة مرات، وكنت تريد ما يسمى متداخلة للحلقة. 980 00:42:44,129 --> 00:42:47,420 لأولئك منكم الذين يرون للمرة الأولى هذا و خلط جدا، كل ما تفعلونه هنا 981 00:42:47,420 --> 00:42:50,580 هو وجود للحلقة حيث لدينا متغير الصف. 982 00:42:50,580 --> 00:42:54,500 ولكن في الداخل من ذلك، لدينا أيضا آخر لحلقة من عمود متغير يسمى. 983 00:42:54,500 --> 00:42:58,560 وأقترح تقديرا عاليا كل واحد منكم الذين يتم الخلط للحفاظ أولا 984 00:42:58,560 --> 00:43:00,310 track-- رسم من ذلك، ورسم ذلك. 985 00:43:00,310 --> 00:43:03,000 لا تحاول أن السبب عادل من خلال ذلك، رسم بها. 986 00:43:03,000 --> 00:43:06,630 >> في رأسك، على هذه القطعة من ورقة، أو أيا كان، صف الكتابة، 987 00:43:06,630 --> 00:43:08,614 تتبع ما هو صف مساويا ل. 988 00:43:08,614 --> 00:43:10,780 إرسال العمود، والحفاظ على المسار ما العمود يساوي. 989 00:43:10,780 --> 00:43:13,490 وتتبع ما هو طبع مع كل التكرار. 990 00:43:13,490 --> 00:43:16,320 كل التكرار من هذه الحلقة، كل التكرار من أن حلقة أكبر، 991 00:43:16,320 --> 00:43:17,820 تبقي فقط وفقا لمنطق. 992 00:43:17,820 --> 00:43:20,190 وأنا أضمن لكم، عليك الحب ما تراه، 993 00:43:20,190 --> 00:43:24,307 لأنه أيضا جدا ينطبق على مجموعات مشكلتك. 994 00:43:24,307 --> 00:43:24,806 رائع. 995 00:43:24,806 --> 00:43:27,501 996 00:43:27,501 --> 00:43:28,000 حسنا. 997 00:43:28,000 --> 00:43:30,723 وبالتالي فإن أهم شيء أن يا رفاق وربما كل 998 00:43:30,723 --> 00:43:32,400 التفكير في الوقت الراهن، هي مشكلتك تعيين 1S، 999 00:43:32,400 --> 00:43:33,650 والتي من المقرر الخميس / الجمعة. 1000 00:43:33,650 --> 00:43:36,890 1001 00:43:36,890 --> 00:43:39,710 >> في برنامج water.c الخاص بك، التلميح كنت ستكون لدينا 1002 00:43:39,710 --> 00:43:41,590 مطالبة المستخدم للحصول على مدخلات. 1003 00:43:41,590 --> 00:43:43,640 ضمن برنامج mario.c بك كنت ستكون لدينا 1004 00:43:43,640 --> 00:43:46,431 لاستخدام متداخلة لحلقة، وهو لحلقة داخل حلقة for، 1005 00:43:46,431 --> 00:43:50,247 لطباعة كتلة من الهرم، أساسا مثل ما ماريو لديها من خلال القفز. 1006 00:43:50,247 --> 00:43:53,330 ثم داخل بك greedy-- أو ربما صنع التغيير، إذا كان أي منكم الرجال 1007 00:43:53,330 --> 00:43:55,740 وقد سمعت من هكذا- يضرب وأنت تسير إلى أن تكون جدا 1008 00:43:55,740 --> 00:43:58,160 الحذر من القيم النقطة العائمة الأولى. 1009 00:43:58,160 --> 00:44:01,860 تذكر عشرية عائمة و الأعداد الصحيحة ليست هي الشيء نفسه. 1010 00:44:01,860 --> 00:44:03,620 تتبع أي واحد هو الذي. 1011 00:44:03,620 --> 00:44:05,953 وأنت تسير إلى استخدام عبارات شرطية، كذلك. 1012 00:44:05,953 --> 00:44:09,070 1013 00:44:09,070 --> 00:44:10,940 >> كل الحق، آخر شيء. 1014 00:44:10,940 --> 00:44:12,770 أنا عندي بضع دقائق غادر. 1015 00:44:12,770 --> 00:44:13,460 الاسلوب. 1016 00:44:13,460 --> 00:44:19,320 لذلك هذا هو الشيء الذي لا في الواقع يؤثر على الكفاءة، 1017 00:44:19,320 --> 00:44:21,010 أو تشغيل الفعلي من التعليمات البرمجية. 1018 00:44:21,010 --> 00:44:24,380 ومع ذلك، فإنه يؤثر بنا و طلاب الصف الخاص بك، كما القراء. 1019 00:44:24,380 --> 00:44:27,290 أنها آثار نفسك، إذا كنت محاولة للعثور على المشكلة. 1020 00:44:27,290 --> 00:44:30,700 أنها آثار من قراءة التعليمات البرمجية. 1021 00:44:30,700 --> 00:44:34,070 >> لذلك الاسلوب، مثل عندما كنت في محاولة ل أسلوب مقال للغة الإنكليزية، إذا كنت 1022 00:44:34,070 --> 00:44:36,070 لم يكن لديك الفقرات، لديك كل شيء لطفاء 1023 00:44:36,070 --> 00:44:39,190 من مختلطة معا على خط واحد، يجعل من الصعب حقا لأحد 1024 00:44:39,190 --> 00:44:42,620 لقراءة مقالك، حتى لو نقاطك سليمة منطقيا. 1025 00:44:42,620 --> 00:44:44,390 نفس الشيء في البرمجة. 1026 00:44:44,390 --> 00:44:47,910 هل يمكن أن يكون غامضا فظيعة كود الذي سيغطي Scaz، 1027 00:44:47,910 --> 00:44:49,660 ويمكن أن لا تزال تعمل وظيفة. 1028 00:44:49,660 --> 00:44:53,110 ولكن بالنسبة لنا، والمشرفون الدوليون جميل بك، فمن سيفعل ذلك تكون قراءة وتقييم PSets الخاص بك، 1029 00:44:53,110 --> 00:44:54,460 هذا ليس لطيفا جدا. 1030 00:44:54,460 --> 00:44:56,859 >> لذا يرجى، من أجل منا ونفسك، 1031 00:44:56,859 --> 00:44:58,900 عندما كنت في محاولة لإصلاح مشكلة في التعليمات البرمجية الخاصة بك، 1032 00:44:58,900 --> 00:45:00,774 وكنت في محاولة ل قراءة التعليمات البرمجية الخاصة بك، وجعل 1033 00:45:00,774 --> 00:45:03,910 تأكد من أنك تتبع بعض الاتفاقيات أننا في طريقنا للذهاب أكثر. 1034 00:45:03,910 --> 00:45:04,510 >> أولا حتى. 1035 00:45:04,510 --> 00:45:07,070 إعطاء المتغيرات الخاصة بك أسماء ذات مغزى. 1036 00:45:07,070 --> 00:45:11,450 إذا كنت ترغب في تخزين عدد صحيح ودعا عمر، يرجى تسميته العمر. 1037 00:45:11,450 --> 00:45:12,875 لا تسميته الارتفاع. 1038 00:45:12,875 --> 00:45:14,750 عندما كنت في محاولة ل تخزين عصر في الارتفاع، 1039 00:45:14,750 --> 00:45:16,722 يجعل كل شيء مربكا جدا بالنسبة لنا. 1040 00:45:16,722 --> 00:45:17,930 نحن لا نحب أن يكون أربكت. 1041 00:45:17,930 --> 00:45:19,180 كنت لا أحب أن يتم الخلط. 1042 00:45:19,180 --> 00:45:20,350 لا أحد يحب أن يكون الخلط. 1043 00:45:20,350 --> 00:45:23,100 إذا كنت تريد الذهاب لخلق شيء، تسميته شيء مفيد. 1044 00:45:23,100 --> 00:45:26,440 >> ومع ذلك، في لحلقة، واحد المتغيرات الشخصية وعادة ما تكون غرامة. 1045 00:45:26,440 --> 00:45:31,350 وللحلقة، إذا كنت ترغب فقط ط، وي، ك، لا تتردد في مجرد فعل ذلك. 1046 00:45:31,350 --> 00:45:32,670 >> التهيئة ثابتة. 1047 00:45:32,670 --> 00:45:33,770 فماذا يعني ذلك؟ 1048 00:45:33,770 --> 00:45:37,600 وهذا يعني من الناحية الفنية، من الناحية النظرية، يمكنك بدء وإنشاء 1049 00:45:37,600 --> 00:45:40,140 متغيرات متعددة على نفس الخط. 1050 00:45:40,140 --> 00:45:42,820 هكذا على سبيل المثال، وأنا يمكن أن تخلق عدد صحيح يسمى scaz_age، 1051 00:45:42,820 --> 00:45:47,110 وصحيح يسمى andi_age = 20، وصحيح يسمى jason_age 1052 00:45:47,110 --> 00:45:48,090 على نفس الخط. 1053 00:45:48,090 --> 00:45:52,060 ويمكنني أيضا تعيين واحد فقط من لهم وليس لغيرهم القيم. 1054 00:45:52,060 --> 00:45:54,142 نحن أسألك من فضلك لا تفعل ذلك. 1055 00:45:54,142 --> 00:45:57,350 لأن هنا قمت بإنشائها في الأساس ثلاثة متغيرات، ولكن واحدا منها فقط 1056 00:45:57,350 --> 00:45:58,295 في الواقع قيمة. 1057 00:45:58,295 --> 00:46:00,170 وبعد ذلك عندما نحن محاولة لقراءة التعليمات البرمجية الخاصة بك، 1058 00:46:00,170 --> 00:46:01,850 أو إذا كنت تحاول إصلاح مشكلة في التعليمات البرمجية الخاصة بك، 1059 00:46:01,850 --> 00:46:03,340 انها مربكة جدا أن يتبع. 1060 00:46:03,340 --> 00:46:09,300 وذلك فقط من أجل قراءة الخاص بك، ل قراءة لدينا، لا تفعل ذلك. 1061 00:46:09,300 --> 00:46:10,355 >> الأقواس المعقوفة متسقة. 1062 00:46:10,355 --> 00:46:12,980 بعض الناس يحبون أن يضع لها الأقواس المعقوفة في أماكن مختلفة. 1063 00:46:12,980 --> 00:46:14,100 لا يهم حقا. 1064 00:46:14,100 --> 00:46:17,900 فقط تأكد من أنك ثابت في حياتك كود الخاص على المكان الذي ترغب في وضعها. 1065 00:46:17,900 --> 00:46:18,950 >> تباعد ثابت. 1066 00:46:18,950 --> 00:46:22,040 إذا وضعت مسافة بعد للحلقة، تفعل دائما ذلك. 1067 00:46:22,040 --> 00:46:24,930 لا تماما مثل نوع من يفعل ذلك في بعض الأماكن، لا تفعل ذلك في مناطق أخرى. 1068 00:46:24,930 --> 00:46:26,580 مجرد أن تكون متسقة. 1069 00:46:26,580 --> 00:46:29,500 >> ثانيا، إذا كان أي شخص يود للاطلاع على دليل نمط CS50، 1070 00:46:29,500 --> 00:46:33,230 لدينا رسميا دليل النمط الذي يخبرك كل هذه الاتفاقيات، 1071 00:46:33,230 --> 00:46:34,890 بالإضافة إلى أكثر من ذلك. 1072 00:46:34,890 --> 00:46:35,530 انها على الانترنت. 1073 00:46:35,530 --> 00:46:38,670 انها مثل cs50.net/style أو شيء من هذا القبيل. 1074 00:46:38,670 --> 00:46:40,180 يمكنك جوجل ذلك. 1075 00:46:40,180 --> 00:46:41,399 >> الاتساق هو مفتاح الحل. 1076 00:46:41,399 --> 00:46:43,190 لذلك لا تقلق ما يقوم به الآخرون، 1077 00:46:43,190 --> 00:46:46,180 فقط للتأكد من أنك يتفق ضمن التعليمات البرمجية الخاصة بك. 1078 00:46:46,180 --> 00:46:50,570 أي شخص لديه أي أسئلة حول هذا الموضوع؟ 1079 00:46:50,570 --> 00:46:51,070 نعم. 1080 00:46:51,070 --> 00:46:53,370 >> SPEAKER 18: ذلك الشيء الصحيح للقيام مع التهيئة فقط 1081 00:46:53,370 --> 00:46:56,130 يكون كل منهم في منفصلة الخط، هو أن ما تقوله؟ 1082 00:46:56,130 --> 00:46:58,850 >> ANDI بنغ: لذلك أنا نادرا ما يحدث ذلك. 1083 00:46:58,850 --> 00:47:02,230 ولكن إذا كنت تريد، إذا أردت أن يكون مثل توفير مساحة في التعليمات البرمجية الخاصة بك، 1084 00:47:02,230 --> 00:47:04,000 أو أيا كان، يمكنك القيام بذلك. 1085 00:47:04,000 --> 00:47:07,800 نطلب منك فقط لا تهيئة شيء واحد وليس غيرها. 1086 00:47:07,800 --> 00:47:12,600 حتى إذا كنت تريد أن تفعل الباحث scaz_age، الباحث andi_age، الباحث jason_age، وهذا على ما يرام. 1087 00:47:12,600 --> 00:47:15,600 فقط لا تهيئة واحدة وليس غيرها هو كل شيء. 1088 00:47:15,600 --> 00:47:18,380 1089 00:47:18,380 --> 00:47:19,904 >> الأسئلة؟ 1090 00:47:19,904 --> 00:47:20,850 حسنا. 1091 00:47:20,850 --> 00:47:24,610 انا ذاهب الى تمرير ل الميكروفون، ومؤشر ليزر، 1092 00:47:24,610 --> 00:47:28,862 والعصا لScaz في هذه المرحلة. 1093 00:47:28,862 --> 00:47:29,808 هذا هو حرج. 1094 00:47:29,808 --> 00:47:32,650 1095 00:47:32,650 --> 00:47:33,200 ها هو. 1096 00:47:33,200 --> 00:47:34,408 >> BRIAN SCASSELLATI: شكرا لك. 1097 00:47:34,408 --> 00:47:42,500 1098 00:47:42,500 --> 00:47:43,380 كيف أن للصوت؟ 1099 00:47:43,380 --> 00:47:46,420 1100 00:47:46,420 --> 00:47:47,900 الصوت هو جيد؟ . 1101 00:47:47,900 --> 00:47:49,220 ممتاز. 1102 00:47:49,220 --> 00:47:50,350 حسنا. 1103 00:47:50,350 --> 00:47:52,110 لذلك، مرحبا الجميع. 1104 00:47:52,110 --> 00:47:56,540 >> انا ذاهب الى محاولة العمل من خلال مثال عملي معك. 1105 00:47:56,540 --> 00:48:00,850 ونحن في طريقنا للاستخدام في CS50 بيئة التطوير، ما يسمى 1106 00:48:00,850 --> 00:48:03,120 بيئة تطوير متكاملة. 1107 00:48:03,120 --> 00:48:05,145 وكنت قد رأيت هذا أظهر في المحاضرة. 1108 00:48:05,145 --> 00:48:07,520 والمشكلة مجموعة 1، كنت ستكون لدينا فرصة 1109 00:48:07,520 --> 00:48:10,890 لاستخدامها، ولعب مع حولها ذلك، والتعود على ذلك، 1110 00:48:10,890 --> 00:48:13,640 لأننا ذاهبون الى استخدامها من خلال ما تبقى من الفصل الدراسي. 1111 00:48:13,640 --> 00:48:20,350 >> حتى في هذا IDE، لديك ما يبدو مثل مستعرض الملفات التقليدية جدا 1112 00:48:20,350 --> 00:48:21,890 على أكثر من جانب واحد. 1113 00:48:21,890 --> 00:48:24,360 كنت قد حصلت على جزء تصل أعلى أين أنت ذاهب 1114 00:48:24,360 --> 00:48:28,850 لمعرفة شفرة المصدر الخاصة بك، الخاصة بك Cfile، التعليمات البرمجية التي تكتب. 1115 00:48:28,850 --> 00:48:31,880 وأسفل القاع، عليك لدينا نافذة الصالة 1116 00:48:31,880 --> 00:48:36,330 والتي سوف تستخدم ل كلا تجميع البرنامج 1117 00:48:36,330 --> 00:48:39,090 ولتشغيل أو تنفيذ البرنامج. 1118 00:48:39,090 --> 00:48:40,100 حسنا. 1119 00:48:40,100 --> 00:48:46,560 >> وذلك فقط ليقدم لنا قليلا من الأساس، في هذا الإطار المحطة، 1120 00:48:46,560 --> 00:48:48,930 وأنت تسير أن يكون باستخدام مجموعة من الأوامر 1121 00:48:48,930 --> 00:48:53,040 التي هي الأوامر القياسية في جميع أنحاء معظم أنظمة يونكس أو لينكس. 1122 00:48:53,040 --> 00:48:55,890 وحتى إذا كنت قد استخدمت من أي وقت مضى أي شكل من أشكال يونكس، أوبونتو، 1123 00:48:55,890 --> 00:48:59,140 أو أي من النكهات الأخرى، هذه ذاهبون لتبدو مألوفة. 1124 00:48:59,140 --> 00:49:00,890 >> إذا كان لديك لا، لا تقلق. 1125 00:49:00,890 --> 00:49:02,830 لا يوجد شيء معقد عنهم. 1126 00:49:02,830 --> 00:49:05,330 انهم فقط باستخدام مختلفة بناء الجملة، وتسمية مختلفة 1127 00:49:05,330 --> 00:49:07,630 اتفاقية مما كنت قد رأيت من قبل. 1128 00:49:07,630 --> 00:49:12,190 >> حتى لخارج قائمة الملفات ضمن دليل معين، 1129 00:49:12,190 --> 00:49:15,310 انهم ذاهبون الى استخدام دعا الأمر ls، أو قائمة. 1130 00:49:15,310 --> 00:49:18,010 إذا كنت تريد أن ترى كل شيء مع كل التفاصيل، 1131 00:49:18,010 --> 00:49:21,535 عليك استخدام أمر وسيطة سطر مع -l ليرة سورية. 1132 00:49:21,535 --> 00:49:23,910 والتي سوف تظهر لك كل شيء في مزيد من التفاصيل، بما في ذلك 1133 00:49:23,910 --> 00:49:26,270 أذونات ملف. 1134 00:49:26,270 --> 00:49:31,190 >> لتغيير الدليل، عليك استخدام الأمر cd. 1135 00:49:31,190 --> 00:49:35,180 وعليك أن تكون قادرا على تغيير الدليل على حد سواء للذهاب إلى دليل منزلك. 1136 00:49:35,180 --> 00:49:38,500 هذا السلاح عادل وقبل كل شيء نفسها، مؤتمر نزع السلاح مع اثنين 1137 00:49:38,500 --> 00:49:42,930 والنقاط يعود لك واحد المستوى إلى الدليل السابق. 1138 00:49:42,930 --> 00:49:46,400 ويمكنك أيضا مؤتمر نزع السلاح ل دليل فرعي عن طريق كتابة في مؤتمر نزع السلاح 1139 00:49:46,400 --> 00:49:48,500 واسم هذا الدليل. 1140 00:49:48,500 --> 00:49:50,540 >> يمكنك أيضا إنشاء الدلائل الجديدة. 1141 00:49:50,540 --> 00:49:52,790 ونحن في طريقنا إلى السير من خلال هذا في دقيقة واحدة فقط. 1142 00:49:52,790 --> 00:49:54,498 ولكن فقط لوضع كل شيء على الشاشة. 1143 00:49:54,498 --> 00:49:56,310 بحيث يمكنك رؤيتها. 1144 00:49:56,310 --> 00:50:00,420 >> سيكون لديك أيضا القدرة لمعالجة الملفات مباشرة 1145 00:50:00,420 --> 00:50:02,100 من سطر الأوامر. 1146 00:50:02,100 --> 00:50:06,059 عليك أن تكون قادرا على نسخ منها، ل نقلها، أو لإزالتها، 1147 00:50:06,059 --> 00:50:07,600 وهذا هو، على نحو فعال، لحذفها. 1148 00:50:07,600 --> 00:50:10,310 1149 00:50:10,310 --> 00:50:15,350 >> وIDE CS50 يمنحك كامل قوة وسائط سطر الأوامر. 1150 00:50:15,350 --> 00:50:20,280 وهذا يعني يمكنك أيضا تفعل أشياء خطيرة للغاية. 1151 00:50:20,280 --> 00:50:21,560 حسنا. 1152 00:50:21,560 --> 00:50:25,010 على سبيل المثال، يمكنك إزالة، أو أي حذف، 1153 00:50:25,010 --> 00:50:28,750 ملف دون أن يطلب للتأكيد. 1154 00:50:28,750 --> 00:50:31,820 ويمكنك إزالة حتى recursively-- هذا 1155 00:50:31,820 --> 00:50:38,940 ص اندفاعة flag-- بأكمله الدليل وجميع محتوياته. 1156 00:50:38,940 --> 00:50:39,660 حسنا. 1157 00:50:39,660 --> 00:50:42,940 كنت سردها في أحمر لأنك يجب أن نفكر "خطر" في كل مرة 1158 00:50:42,940 --> 00:50:45,000 ترى تلك الأشياء. 1159 00:50:45,000 --> 00:50:45,920 حسنا. 1160 00:50:45,920 --> 00:50:46,420 حسنا. 1161 00:50:46,420 --> 00:50:50,090 1162 00:50:50,090 --> 00:50:53,430 >> الآن وأخيرا، والأشياء التي هي ستكون قيمة حقا لكم، 1163 00:50:53,430 --> 00:50:57,270 هناك عدد قليل من الحيل جيدة لمعرفة كما كنت التنقل 1164 00:50:57,270 --> 00:50:59,190 من خلال هذه النافذة المحطة. 1165 00:50:59,190 --> 00:51:03,590 أولا، يمكنك مسح الشاشة في أي وقت عن طريق كتابة فقط في واضحة. 1166 00:51:03,590 --> 00:51:06,310 وأنت تسير لرؤية لي أن تفعل ذلك في كثير من الأحيان. 1167 00:51:06,310 --> 00:51:09,990 يمكنك أيضا عرض فقط نص ملف 1168 00:51:09,990 --> 00:51:13,992 عن طريق كتابة أكثر ثم اسم الملف. 1169 00:51:13,992 --> 00:51:17,200 عليك أن تكون بعد ذلك قادرة على تمرير ذهابا و إيابا مع ذلك تماما مع المسافة 1170 00:51:17,200 --> 00:51:19,010 ومفاتيح الأسهم. 1171 00:51:19,010 --> 00:51:25,450 >> إذا كان لديك، كما فعلنا اليوم في محاضرة، برنامج يقوم بتشغيل مستمر 1172 00:51:25,450 --> 00:51:29,190 في حلقة لا نهائية، ل يمكن وقف هذا البرنامج 1173 00:51:29,190 --> 00:51:35,160 من تنفيذ عن طريق كتابة في السيطرة، أن يتم الضغط باستمرار مراقبة-C. 1174 00:51:35,160 --> 00:51:38,360 وكنت قد تضطر إلى القيام هذا عدة مرات. 1175 00:51:38,360 --> 00:51:40,620 يحصل على جهاز الكمبيوتر متقدما بفارق كبير لك. 1176 00:51:40,620 --> 00:51:43,380 وتحتاج في بعض الأحيان إلى إعطائها بضع محاولات 1177 00:51:43,380 --> 00:51:46,280 قبل أن تأتي في الواقع من خلال. 1178 00:51:46,280 --> 00:51:48,760 >> عليك أيضا أن تكون قادرة على من خلال فرز الأوامر 1179 00:51:48,760 --> 00:51:54,230 الذي كتبته فقط باستخدام مفتاح فوق، مفتاح السهم، ومن ثم مفتاح السهم إلى الأسفل. 1180 00:51:54,230 --> 00:51:57,560 وما هو الأكثر فائدة هو بدلا من ذلك من كتابة من أسماء الملفات الطويلة، 1181 00:51:57,560 --> 00:52:02,209 عليك أن تكون قادرا على استخدام Tab لل الإكمال التلقائي تعليمات قليلة. 1182 00:52:02,209 --> 00:52:04,750 الآن ونحن في طريقنا لإثبات كل تلك في ثانية واحدة. 1183 00:52:04,750 --> 00:52:06,780 لذلك إذا كنت لا أتذكر لهم، لا تقلق. 1184 00:52:06,780 --> 00:52:10,780 هذه هي الأشياء التي عليك التقاط واستخدام ونحن نمضي على طول. 1185 00:52:10,780 --> 00:52:11,470 حسنا. 1186 00:52:11,470 --> 00:52:18,830 >> حتى في C-- خلافا في Scratch-- C هي لغة المترجمة. 1187 00:52:18,830 --> 00:52:23,210 هذا يعني أننا ذاهبون إلى اتخاذ المصدر الملف-- هذا هو النص الذي تكتبه، 1188 00:52:23,210 --> 00:52:26,500 الأوامر التي تكتبها، و printf () البيانات، الحلقات، 1189 00:52:26,500 --> 00:52:32,580 كل شيء else-- ونحن في طريقنا أن تأخذ هذا الملف وتسليم تشغيله 1190 00:52:32,580 --> 00:52:34,670 إلى برنامج يسمى مترجم. 1191 00:52:34,670 --> 00:52:39,850 >> سوف المترجم تتخذ ثم أن النص الذي كتبته 1192 00:52:39,850 --> 00:52:43,270 وترجمتها إلى تعليمات الثنائية 1193 00:52:43,270 --> 00:52:46,010 أن جهاز الكمبيوتر الخاص بك فعلا الذهاب الاستخدام. 1194 00:52:46,010 --> 00:52:49,700 وهذا يسمى الكائن أو الملف القابل للتنفيذ. 1195 00:52:49,700 --> 00:52:55,320 اذا نظرتم الى هذا الملف، وأنت تسير لمعرفة الرمز الذي كنت قد كتبت. 1196 00:52:55,320 --> 00:52:59,480 اذا نظرتم الى هذا الملف، وأنت تسير لمعرفة تسلسل عشوائي من الأحرف 1197 00:52:59,480 --> 00:53:01,680 التي لا معنى له على الإطلاق. 1198 00:53:01,680 --> 00:53:03,250 ذلك لأن هذا هو ثنائي. 1199 00:53:03,250 --> 00:53:05,560 ليس من المفترض لك أن تكون القراءة. 1200 00:53:05,560 --> 00:53:08,690 >> ومع ذلك، في أي وقت تريد تشغيل شيء، ما كنت تريد الذهاب 1201 00:53:08,690 --> 00:53:13,670 إلى أن يتم تشغيل هذا الملف الكائن. 1202 00:53:13,670 --> 00:53:19,110 لذلك عندما نعمل مع هذه الملفات، فإننا سوف إرسال ملف في C. 1203 00:53:19,110 --> 00:53:23,400 سنقوم ثم ترجمة عليه، وذلك باستخدام أمر مثل جعل التي سوف تحتج 1204 00:53:23,400 --> 00:53:27,070 على رنة مترجم للغة C. 1205 00:53:27,070 --> 00:53:31,530 والتي من شأنها أن تنتج كائن ملف، مثل الخروج، أو في هذه الحالة، 1206 00:53:31,530 --> 00:53:36,580 الاسم، ملفي، وأنني قد وضعت في. 1207 00:53:36,580 --> 00:53:37,780 حسنا. 1208 00:53:37,780 --> 00:53:39,790 >> لذلك دعونا نحاول هذا الواقع. 1209 00:53:39,790 --> 00:53:42,850 لذلك خطرت لي مثالا ما كنت أريد أن أحاول. 1210 00:53:42,850 --> 00:53:47,380 واحدة من الأشياء التي يذهلني هو الرسوم المتحركة. 1211 00:53:47,380 --> 00:53:51,010 لذلك نحن ذاهبون لمحاولة القيام قليلا من الرسوم المتحركة 1212 00:53:51,010 --> 00:53:53,760 استخدام أحرف ASCII فقط. 1213 00:53:53,760 --> 00:53:56,470 الشخصيات التي يمكن بطباعة بسهولة الآن. 1214 00:53:56,470 --> 00:54:00,890 >> حتى هنا هو أفضل محاولتي في خلق لك 1215 00:54:00,890 --> 00:54:07,005 الرسوم المتحركة من الأرنب من خلال تشغيل الحشائش الطويلة. 1216 00:54:07,005 --> 00:54:07,505 ها هو. 1217 00:54:07,505 --> 00:54:10,150 1218 00:54:10,150 --> 00:54:10,670 حسنا. 1219 00:54:10,670 --> 00:54:14,050 حتى انه لا يعمل حتى الآن، لكنه واقفا في الحشائش الطويلة. 1220 00:54:14,050 --> 00:54:17,810 >> الآن لو كنت الرسوم المتحركة، في المدرسة القديمة 1221 00:54:17,810 --> 00:54:20,860 نسخة من الرسوم المتحركة، ما سيفعل هو أنني ستنتج 1222 00:54:20,860 --> 00:54:23,640 صورة لهذا الارنب في العشب. 1223 00:54:23,640 --> 00:54:25,390 ثم أود أن إنتاج picture-- أخرى 1224 00:54:25,390 --> 00:54:30,600 آخر ما وصفوه cell-- أن قد الارنب تحركت قليلا فقط. 1225 00:54:30,600 --> 00:54:34,870 ثم ثالثة التي لديها انتقل الأرنب أبعد قليلا. 1226 00:54:34,870 --> 00:54:40,610 >> وأود أن إنتاج كامل تسلسل هذه الخلايا. 1227 00:54:40,610 --> 00:54:44,220 بعض حيث الارنب هو أكثر على الجانب الأيسر. 1228 00:54:44,220 --> 00:54:47,050 ثم يتحرك ببطء، واحدة من جانب واحد نحو الوسط. 1229 00:54:47,050 --> 00:54:51,120 ثم من الوسط إلى اليمين. 1230 00:54:51,120 --> 00:54:55,760 وإذا كان لي ذلك الحين، حقا محظوظ، أنا يمكن وضعها معا 1231 00:54:55,760 --> 00:54:57,970 ويمكنني أن يديروا لها. 1232 00:54:57,970 --> 00:55:00,370 وهناك بلدي الارنب يمر عبر العشب. 1233 00:55:00,370 --> 00:55:02,310 >> هذا هو بلدي باور بوينت رائع خدعة لهذا اليوم. 1234 00:55:02,310 --> 00:55:02,809 حسنا. 1235 00:55:02,809 --> 00:55:04,760 لذلك هذا هو جيدة كما يحصل. 1236 00:55:04,760 --> 00:55:05,260 حسنا. 1237 00:55:05,260 --> 00:55:08,455 لذلك، وهنا واحد مزيد من الوقت، وهنا لدينا الأرنب الذي يمر عبر العشب. 1238 00:55:08,455 --> 00:55:09,217 >> SPEAKER 19: مرة أخرى. 1239 00:55:09,217 --> 00:55:11,050 BRIAN SCASSELLATI: واحد المزيد من الوقت، كل الحق. 1240 00:55:11,050 --> 00:55:11,940 هناك الارنب الخاص. 1241 00:55:11,940 --> 00:55:12,940 حسنا. 1242 00:55:12,940 --> 00:55:15,470 >> فما اليوم ونحن في طريقنا القيام به هو نحن ذاهبون 1243 00:55:15,470 --> 00:55:21,110 في محاولة لأتمتة عملية من إنتاج هذه الخلايا. 1244 00:55:21,110 --> 00:55:24,135 لن ندخل جدا لدرجة أن تكون قادرة على وضع كل منهم معا. 1245 00:55:24,135 --> 00:55:28,900 ولكن، نحن ذاهبون لمحاولة أتمتة عملية توليد هذا التسلسل. 1246 00:55:28,900 --> 00:55:32,900 >> وهذا كثير ما الرسوم المتحركة اليوم هو مثل. 1247 00:55:32,900 --> 00:55:36,690 وهذا هو، أنت لا تفعل أشياء بالضرورة عن طريق رسم كل شيء باليد. 1248 00:55:36,690 --> 00:55:40,610 ونحن نستخدم الكمبيوتر لأتمتة أجزاء من تلك العملية. 1249 00:55:40,610 --> 00:55:41,110 حسنا. 1250 00:55:41,110 --> 00:55:47,720 >> لذلك اسمحوا لي تبديل أكثر الآن لدينا IDE CS50. 1251 00:55:47,720 --> 00:55:54,260 ولقد خلق لus-- والسماح لي تكبير هنا قليلا bit-- لدي 1252 00:55:54,260 --> 00:55:58,420 خلق لنا نقطة انطلاق. 1253 00:55:58,420 --> 00:56:03,830 >> في كل مرة أن نطلب منك الجلوس إلى أسفل وكتابة قطعة من التعليمات البرمجية، 1254 00:56:03,830 --> 00:56:09,250 ما نطلبه حقا لك أن تفعل ونحن نطلب من أجل حل المشكلة. 1255 00:56:09,250 --> 00:56:11,810 والطريقة التي يجب عليك التفكير في القيام بذلك 1256 00:56:11,810 --> 00:56:17,900 هو من خلال البدء مع بعض جزء بسيط من هذا الحل. 1257 00:56:17,900 --> 00:56:21,730 ومن ثم بناء الخروج من هذا الجزء. 1258 00:56:21,730 --> 00:56:23,400 وهذا ما نحن بصدد القيام به اليوم. 1259 00:56:23,400 --> 00:56:27,570 >> وذلك بدلا من محاولة في كل مرة ل إرسال باقة كاملة من التعليمات البرمجية التي ل 1260 00:56:27,570 --> 00:56:30,770 الذهاب لإنتاج تلك 10 خلايا الرسوم المتحركة، 1261 00:56:30,770 --> 00:56:35,506 ونحن في طريقنا لبدء بدلا من ذلك مع قطعة واحدة تعمل. 1262 00:56:35,506 --> 00:56:37,380 وبعد ذلك سنقوم بناء قليلا حول ذلك 1263 00:56:37,380 --> 00:56:39,740 وأكثر من ذلك بقليل وأكثر من ذلك بقليل. 1264 00:56:39,740 --> 00:56:42,550 >> الآن الشيء الجيد حول حل المشاكل بهذه الطريقة 1265 00:56:42,550 --> 00:56:46,716 هو أنها لن تسمح لك لبدء دائما مع شيء أن تعرف 1266 00:56:46,716 --> 00:56:51,130 يعمل وإحداث التغيير التدريجي واحد. 1267 00:56:51,130 --> 00:56:54,090 وهذا هو وسيلة رائعة لمعرفة كيفية رمز، 1268 00:56:54,090 --> 00:56:58,590 لأن كل مرة تقوم فيها التغيير، ترى ما تأثير يفعل ذلك. 1269 00:56:58,590 --> 00:56:59,540 حسنا. 1270 00:56:59,540 --> 00:57:01,450 >> حتى هنا نقطة البداية بالنسبة لنا. 1271 00:57:01,450 --> 00:57:01,950 حسنا. 1272 00:57:01,950 --> 00:57:08,030 حتى في بداية ملفي، لقد قمت تجزئة #included stdio.h. 1273 00:57:08,030 --> 00:57:12,560 هذا بحيث أستطيع الحصول على printf () وظيفة للعمل. 1274 00:57:12,560 --> 00:57:15,240 >> وبعد ذلك لدي وظيفة الرئيسية. 1275 00:57:15,240 --> 00:57:18,760 وهذا لا تزال تبدو قليلا غامضة أو مبهمة لبعض منكم. 1276 00:57:18,760 --> 00:57:20,010 وهذا موافق. 1277 00:57:20,010 --> 00:57:23,190 كل ما يقوله هو أن يأخذ الوظيفة الرئيسية 1278 00:57:23,190 --> 00:57:27,830 يعني عدم وجود باطل arguments-- لا شيء في C. وذلك 1279 00:57:27,830 --> 00:57:29,940 العائدات من اتفاقية صحيح. 1280 00:57:29,940 --> 00:57:33,290 الرئيسية دوما بإرجاع عدد صحيح، عادة رمز يقولون أشياء 1281 00:57:33,290 --> 00:57:35,071 سارت بشكل جيد أو لا تسير على ما يرام. 1282 00:57:35,071 --> 00:57:35,570 حسنا. 1283 00:57:35,570 --> 00:57:39,110 ولكن الرئيسية لا بد أن يكون ذلك تشكل بالنسبة لنا في الوقت الحالي. 1284 00:57:39,110 --> 00:57:42,080 >> لقد ثم وضعها في ثلاثة أسطر من التعليمات البرمجية. 1285 00:57:42,080 --> 00:57:46,760 وجنبا إلى جنب مع كل سطر من رمز، لقد وضعت تعليق. 1286 00:57:46,760 --> 00:57:51,340 الآن واحدة من الأشياء التي سنصر على أن تفعل، 1287 00:57:51,340 --> 00:57:55,320 وانها مثل هذا مهم ممارسة البرمجة، 1288 00:57:55,320 --> 00:57:57,800 غير أن يعلق دائما التعليمات البرمجية. 1289 00:57:57,800 --> 00:58:02,550 إرسال دائما إلى أسفل في الإنجليزية تعليق شيء 1290 00:58:02,550 --> 00:58:06,740 ان كنت تعتقد أن يفترض رمز للقيام. 1291 00:58:06,740 --> 00:58:11,360 بهذه الطريقة، في وقت لاحق عندما كنت أعود إلى ذلك، يمكنك إلقاء نظرة على ذلك، ويمكنك القول، 1292 00:58:11,360 --> 00:58:13,800 أوه، أتذكر ما كنت تحاول أن تفعل مع هذا. 1293 00:58:13,800 --> 00:58:17,590 أو عندما يجلس TA أسفل معكم ل محاولة لمساعدتك في ساعات العمل، 1294 00:58:17,590 --> 00:58:20,890 أنها يمكن أن ننظر إلى هذا وتذهب، وأنا ترى ما كنت تحاول القيام به، 1295 00:58:20,890 --> 00:58:25,630 ولكن بدلا من ذلك ما يحدث حقا. 1296 00:58:25,630 --> 00:58:26,130 حسنا. 1297 00:58:26,130 --> 00:58:30,300 >> حتى أنا عندي ثلاثة أجزاء لقانون بلدي، انا ذاهب الى بادئ ذي بدء الطباعة 1298 00:58:30,300 --> 00:58:33,110 بعض النقاط في البداية. 1299 00:58:33,110 --> 00:58:37,480 أنا ثم طباعة خارج بلدي الأرنب يتوهم للغاية. 1300 00:58:37,480 --> 00:58:40,600 وبعد ذلك بعض الشيء من النقاط في نهاية المطاف. 1301 00:58:40,600 --> 00:58:45,220 >> وينبغي لهذه البيانات المطبوعة ثلاثة تبدو مألوفة لك في هذه النقطة. 1302 00:58:45,220 --> 00:58:47,350 كل ما أفعله في كل واحد منهم هو أنا 1303 00:58:47,350 --> 00:58:49,780 طبع سلسلة من الأحرف. 1304 00:58:49,780 --> 00:58:51,370 ليس هناك متغيرات المعنية. 1305 00:58:51,370 --> 00:58:54,320 كل شيء هو مجرد مسطحة. 1306 00:58:54,320 --> 00:58:55,270 حسنا. 1307 00:58:55,270 --> 00:59:07,340 >> حتى لو كنت النزول الآن إلى بلدي terminal-- دعونا نرى ما اذا كان يمكنني الحصول على هذه العودة out-- 1308 00:59:07,340 --> 00:59:09,370 وانا ذاهب الى كتابة واضحة مرة أخرى. 1309 00:59:09,370 --> 00:59:12,507 >> SPEAKER 20: هل نستخدم مائل مزدوج للتعليق؟ 1310 00:59:12,507 --> 00:59:14,340 BRIAN SCASSELLATI: هل يمكن استخدام نعم double--. 1311 00:59:14,340 --> 00:59:16,920 هناك عدة طرق ل ترك تعليق في C. واحدة 1312 00:59:16,920 --> 00:59:19,440 طريقة هي استخدام الخط المائل المزدوج. 1313 00:59:19,440 --> 00:59:24,910 والآخر هو لاستخدام القطع ونجم ثم قم بإغلاق مع النجم ومائل. 1314 00:59:24,910 --> 00:59:26,110 حسنا. 1315 00:59:26,110 --> 00:59:28,950 >> أولا وقبل كل شيء، أنا ذاهب ل بدء التنقل هنا. 1316 00:59:28,950 --> 00:59:35,350 حتى اذا ذهبت الى بلدي الدليل الرئيسي، لقد تغيرت الدلائل هناك، 1317 00:59:35,350 --> 00:59:40,230 أنا ذاهب لننظر ونرى ما هو في هذا الدليل، ليرة سورية، وقائمة بها. 1318 00:59:40,230 --> 00:59:43,230 أنا ذاهب لرؤية أن لدي حصلت على اثنين من الدلائل. 1319 00:59:43,230 --> 00:59:47,910 دعونا نجعل أكبر هذا قليلا هنا بحيث يمكننا أن نرى كل ذلك. 1320 00:59:47,910 --> 00:59:50,610 >> أستطيع أن أرى أن لدي حصلت على اثنين من الدلائل. 1321 00:59:50,610 --> 00:59:53,510 سوف أقوم بتغيير الدليل للذهاب إلى مساحة العمل. 1322 00:59:53,510 --> 00:59:58,380 وانا ذاهب لكتابة الوحيد للخروج جزء منه، وبعد ذلك فقط ضرب تبويب. 1323 00:59:58,380 --> 01:00:01,520 وسوف أكمل بقية بالنسبة لي. 1324 01:00:01,520 --> 01:00:03,370 يتوهم. 1325 01:00:03,370 --> 01:00:04,960 >> سوف ننظر ونرى في مساحة العمل. 1326 01:00:04,960 --> 01:00:08,431 والآن، أنا أعمل على SuperSection 1327 01:00:08,431 --> 01:00:09,680 اننا تدريس الآن. 1328 01:00:09,680 --> 01:00:10,971 لذلك سأذهب إلى هذا الدليل. 1329 01:00:10,971 --> 01:00:14,770 1330 01:00:14,770 --> 01:00:15,970 وأخيرا، ننظر ونرى. 1331 01:00:15,970 --> 01:00:18,480 ولقد حصلت على هذا الملف bunny.c. 1332 01:00:18,480 --> 01:00:20,980 >> كل الحق في ذلك دعوني أوضح مرة أخرى. 1333 01:00:20,980 --> 01:00:24,370 وانا ذاهب الى now-- مرة أخرى أنا لا يزال يقيم في هذا الدليل 1334 01:00:24,370 --> 01:00:27,540 وانها تقول لي أنا في هذا الدليل SuperSection. 1335 01:00:27,540 --> 01:00:30,690 انا ذاهب الى المضي قدما و جعل برنامجي الأرنب. 1336 01:00:30,690 --> 01:00:33,730 1337 01:00:33,730 --> 01:00:38,810 وهذا الأمر، وجعل الأرنب، بينما السبر غريبة قليلا، 1338 01:00:38,810 --> 01:00:42,960 أيضا استدعاء مترجم رنة. 1339 01:00:42,960 --> 01:00:46,470 >> وانها تنتج ل لي الإخراج الذي هو 1340 01:00:46,470 --> 01:00:52,130 وfunny-- قابل للتنفيذ دعا الملف القابل للتنفيذ الأرنب. 1341 01:00:52,130 --> 01:00:52,700 حسنا. 1342 01:00:52,700 --> 01:00:56,700 يمكنني ذلك الحين، وهذا يبدو أسوأ من ذلك، تنفيذ الأرنب. 1343 01:00:56,700 --> 01:00:59,360 1344 01:00:59,360 --> 01:01:00,680 حسنا. 1345 01:01:00,680 --> 01:01:03,150 ودعونا نرى ما تفعله. 1346 01:01:03,150 --> 01:01:04,527 حسنا. 1347 01:01:04,527 --> 01:01:06,360 هذا قليلا من ما كنت أتوقع. 1348 01:01:06,360 --> 01:01:11,290 لقد حصلت على صورة أرنب هناك، ولكن النوع الأول من يريد كل شيء في حد ذاته. 1349 01:01:11,290 --> 01:01:13,186 ماذا افتقد؟ 1350 01:01:13,186 --> 01:01:14,478 >> SPEAKER 21: القطع لتر أو خفض ن. 1351 01:01:14,478 --> 01:01:15,602 BRIAN SCASSELLATI: القطع ن. 1352 01:01:15,602 --> 01:01:16,580 حسنا. 1353 01:01:16,580 --> 01:01:18,800 لذلك دعونا نعود هنا. 1354 01:01:18,800 --> 01:01:20,330 وسوف نخرج من ذلك. 1355 01:01:20,330 --> 01:01:23,320 وسوف أعود إلى هذا واحد. 1356 01:01:23,320 --> 01:01:27,720 ودعونا نلقي نظرة الآن من وجهة نظري تتمثل المهمة الرئيسية هنا. 1357 01:01:27,720 --> 01:01:29,280 >> اذا ماذا يجب أن أفعل؟ 1358 01:01:29,280 --> 01:01:30,465 أريد أن نهاية الخط. 1359 01:01:30,465 --> 01:01:34,020 1360 01:01:34,020 --> 01:01:35,800 لذلك أنا وضعت في تعليق. 1361 01:01:35,800 --> 01:01:38,430 وسوف أضع في printf (). 1362 01:01:38,430 --> 01:01:41,350 وماذا يجب أن أضع في؟ 1363 01:01:41,350 --> 01:01:41,890 / ن. 1364 01:01:41,890 --> 01:01:43,480 حسنا. 1365 01:01:43,480 --> 01:01:46,040 ماذا لدي لوضع حد لها مع؟ 1366 01:01:46,040 --> 01:01:47,100 منقوطة. 1367 01:01:47,100 --> 01:01:48,730 حسنا. 1368 01:01:48,730 --> 01:01:52,880 >> الآن، واحدة من الواقع أشياء مهمة هي التأكد من 1369 01:01:52,880 --> 01:01:56,720 في كل مرة تقوم فيها بإجراء تغيير في التعليمات البرمجية، التي قمت بحفظها. 1370 01:01:56,720 --> 01:02:01,380 إذا كنت لم تقم بحفظ التعليمات البرمجية الخاصة بك، وكنت الذهاب لاحظت وجود النجوم قليلا حتى هناك. 1371 01:02:01,380 --> 01:02:03,420 وهذا النجم تقول لك لم تقم بحفظ هذا الرمز. 1372 01:02:03,420 --> 01:02:07,790 >> إذا كنت ترجمة عليه الآن، انها ليست الذهاب إلى تعكس أي من تلك التغييرات، 1373 01:02:07,790 --> 01:02:11,680 لأن المترجم يبحث في ملف هذا على القرص، وليس ملف هذا 1374 01:02:11,680 --> 01:02:13,790 فتح في المحرر. 1375 01:02:13,790 --> 01:02:14,290 حسنا. 1376 01:02:14,290 --> 01:02:20,830 >> لذلك دعونا حفظه ومن ثم سنذهب نزولا هنا، أعود بها. 1377 01:02:20,830 --> 01:02:24,670 ينزل إلى محطة بلدي. 1378 01:02:24,670 --> 01:02:27,193 ودعونا مسح الفضاء مرة أخرى. 1379 01:02:27,193 --> 01:02:30,690 1380 01:02:30,690 --> 01:02:35,760 >> ويمكننا المضي قدما واحدة أكثر الوقت جعل برنامج الأرنب لدينا. 1381 01:02:35,760 --> 01:02:40,180 وتنفيذ الارنب. 1382 01:02:40,180 --> 01:02:42,500 ان لم ينجح أيضا. 1383 01:02:42,500 --> 01:02:43,950 مائل الخطأ. 1384 01:02:43,950 --> 01:02:52,280 حتى إذا نظرتم الى ما عندي، أنا وضعت / ن في هناك، ولكن كان لي مائل الخطأ. 1385 01:02:52,280 --> 01:02:56,190 >> كل ما جهاز الكمبيوتر الخاص بك هل هو واضح جدا. 1386 01:02:56,190 --> 01:02:57,230 موافق؟ 1387 01:02:57,230 --> 01:03:01,250 خطأ واحد القليل من علامات الترقيم، و فجأة كنت لا تحصل على ما تريد. 1388 01:03:01,250 --> 01:03:01,750 حسنا. 1389 01:03:01,750 --> 01:03:03,740 لذلك دعونا إعادة تكبير من جديد. 1390 01:03:03,740 --> 01:03:04,410 سوف نعود. 1391 01:03:04,410 --> 01:03:07,930 كذلك جعل ذلك إصلاح سريع جدا. 1392 01:03:07,930 --> 01:03:09,270 سنقوم بوضع مائل الصحيح في. 1393 01:03:09,270 --> 01:03:10,570 سنقوم حفظه. 1394 01:03:10,570 --> 01:03:13,410 سنقوم إعادة تكبير الخريطة. 1395 01:03:13,410 --> 01:03:16,730 >> لسبب ما، وهذا ليس يجري سعيدة، ولكن دعونا نمضي قدما 1396 01:03:16,730 --> 01:03:19,850 وسوف نعود إلى محطة هنا. 1397 01:03:19,850 --> 01:03:22,940 مسح عنه. 1398 01:03:22,940 --> 01:03:24,880 سنقوم تكبير. 1399 01:03:24,880 --> 01:03:28,410 واحد مزيد من الوقت، ونحن سوف تجعل الأرنب. 1400 01:03:28,410 --> 01:03:32,360 والآن المؤكد، وأنها تعمل. 1401 01:03:32,360 --> 01:03:33,240 الصيحة. 1402 01:03:33,240 --> 01:03:34,300 حسنا. 1403 01:03:34,300 --> 01:03:39,580 >> لذلك دعونا نحاول أن نجعل هذا أكثر من ذلك بقليل عام. 1404 01:03:39,580 --> 01:03:46,750 دعونا نرى ما اذا كان بدلا من مجرد طباعة إطار واحد معين، 1405 01:03:46,750 --> 01:03:49,610 دعونا نرى ما اذا كنا نستطيع جعل هذا حتى نتمكن من الحصول على جميع 10 1406 01:03:49,610 --> 01:03:52,960 من تلك الأطر الرسوم المتحركة أن أردنا أن يكون. 1407 01:03:52,960 --> 01:03:56,550 ذلك مرة أخرى، دعونا نلقي هذه خطوة في وقت واحد. 1408 01:03:56,550 --> 01:03:59,900 >> دعونا أولا تعميمها، لا بحيث أن أفعل كل الأطر، 1409 01:03:59,900 --> 01:04:03,990 ولكن حتى أفعل أي واحد الإطار الذي أنا قد ترغب. 1410 01:04:03,990 --> 01:04:05,920 فما هو الفرق بين الإطارات؟ 1411 01:04:05,920 --> 01:04:07,377 هو الأرنب نفسه؟ 1412 01:04:07,377 --> 01:04:07,960 الجمهور: نعم. 1413 01:04:07,960 --> 01:04:08,390 BRIAN SCASSELLATI: نعم. 1414 01:04:08,390 --> 01:04:09,370 ماهو الفرق؟ 1415 01:04:09,370 --> 01:04:10,246 >> الحضور: الوظيفة. 1416 01:04:10,246 --> 01:04:11,870 BRIAN SCASSELLATI: موقفه، أليس كذلك؟ 1417 01:04:11,870 --> 01:04:15,590 وكيف أتحكم موقفها؟ 1418 01:04:15,590 --> 01:04:17,340 كم عدد النقاط أنا وضع في بداية 1419 01:04:17,340 --> 01:04:19,048 وعدد النقاط أنا وضع في نهاية المطاف. 1420 01:04:19,048 --> 01:04:21,970 لذلك اضطررت خمسة في تبدأ وخمسة في نهاية المطاف. 1421 01:04:21,970 --> 01:04:28,320 >> دعونا استبدال ان خمسة مع لحلقة. 1422 01:04:28,320 --> 01:04:29,380 حسنا. 1423 01:04:29,380 --> 01:04:32,330 وانا ذاهب الى إنشاء ل حلقة الآن وهذا ما سأقوله، 1424 01:04:32,330 --> 01:04:37,800 أنا ذاهب لطباعة بعض رقم من النقاط في البداية. 1425 01:04:37,800 --> 01:04:39,600 انا ذاهب الى استخدام متغير. 1426 01:04:39,600 --> 01:04:44,150 دعنا نقول، وكيف حول ط ك العداد في حلقة بلدي. 1427 01:04:44,150 --> 01:04:47,200 وانا ذاهب الى نعلن ذلك حتى أعلى. 1428 01:04:47,200 --> 01:04:49,360 >> ثم في لحلقة ولست بحاجة إلى القيام بثلاثة أشياء. 1429 01:04:49,360 --> 01:04:52,340 أول شيء يجب أن أفعل هو أنني بحاجة إلى تهيئة ط. 1430 01:04:52,340 --> 01:04:56,570 ما الذي يجب أن تهيئة لبدء أن تكون؟ 1431 01:04:56,570 --> 01:04:57,160 0. 1432 01:04:57,160 --> 01:04:58,310 حسنا. 1433 01:04:58,310 --> 01:05:00,950 >> ثم أريد أن أقول، ما هو في حالة إنهاء؟ 1434 01:05:00,950 --> 01:05:03,020 متى يجب أن يتوقف؟ 1435 01:05:03,020 --> 01:05:05,983 حسنا كم عدد النقاط هل تريد طباعتها على هذا واحد؟ 1436 01:05:05,983 --> 01:05:06,921 >> الحضور: خمسة. 1437 01:05:06,921 --> 01:05:08,170 BRIAN SCASSELLATI: خمس مرة أخرى؟ 1438 01:05:08,170 --> 01:05:10,650 ماذا عن دعونا نفعل شيئا مختلفة، ونحن لم الخمسة. 1439 01:05:10,650 --> 01:05:12,584 دعونا تبين أن الأمر مختلف. 1440 01:05:12,584 --> 01:05:13,250 SPEAKER 22: اثنان. 1441 01:05:13,250 --> 01:05:13,580 BRIAN SCASSELLATI: اثنان. 1442 01:05:13,580 --> 01:05:14,080 حسنا. 1443 01:05:14,080 --> 01:05:17,760 لذلك إذا أريد اثنين من النقاط، ما يجب أن أضع هنا؟ 1444 01:05:17,760 --> 01:05:19,140 >> الجمهور: ثلاثة. 1445 01:05:19,140 --> 01:05:20,530 >> BRIAN SCASSELLATI: ثلاثة. 1446 01:05:20,530 --> 01:05:21,400 حسنا. 1447 01:05:21,400 --> 01:05:24,220 كم مرة هو أن من خلال الذهاب الى؟ 1448 01:05:24,220 --> 01:05:28,469 ما يجري من خلال الذهاب الى ثلاث مرات، 0، 1، و 2، أليس كذلك؟ 1449 01:05:28,469 --> 01:05:30,010 كل الحق، دعونا نعود إلى اثنين. 1450 01:05:30,010 --> 01:05:31,570 الآن سنقوم الحصول على اثنين من النقاط. 1451 01:05:31,570 --> 01:05:35,800 وماذا أريد أن أفعل كل مرة أذهب خلال الحلقة؟ 1452 01:05:35,800 --> 01:05:38,657 ما يجب أن يتغير في كل مرة أذهب من خلال؟ 1453 01:05:38,657 --> 01:05:39,850 >> SPEAKER 23: إضافة نقطة. 1454 01:05:39,850 --> 01:05:41,020 >> BRIAN SCASSELLATI: لا بد لي من الاستمرار. 1455 01:05:41,020 --> 01:05:41,978 انا ذاهب لإضافة نقطة. 1456 01:05:41,978 --> 01:05:45,310 انا ذاهب الى طباعة نقطة، في كل مرة خلال الحلقة. 1457 01:05:45,310 --> 01:05:49,990 ولكن كيف أنا تتبع كيف مرات عديدة لقد كنت خلال الحلقة؟ 1458 01:05:49,990 --> 01:05:53,260 أنا باستخدام ط، أن المتغير، هذا العداد. 1459 01:05:53,260 --> 01:05:57,110 >> هكذا في كل مرة من خلال، وانا ذاهب لزيادة العداد بمقدار واحد. 1460 01:05:57,110 --> 01:06:00,670 الآن، وهذا هو نفسه بالنسبة ل لي قوله ط = ط + 1. 1461 01:06:00,670 --> 01:06:01,210 وهذا موافق. 1462 01:06:01,210 --> 01:06:04,653 أنا يمكن أن يفعل ذلك هكذا- يضرب أحب الاختزال، لذلك أنا ذاهب لأقول ++. 1463 01:06:04,653 --> 01:06:07,190 1464 01:06:07,190 --> 01:06:08,370 حسنا. 1465 01:06:08,370 --> 01:06:10,680 >> دعونا نفعل نفس الشيء إلى هنا في الأسفل. 1466 01:06:10,680 --> 01:06:11,846 فقط أنا نوع من فعل ذلك واحد. 1467 01:06:11,846 --> 01:06:13,990 انا ذاهب لتمكنك من الرجال تفعل هذا واحد تماما. 1468 01:06:13,990 --> 01:06:14,260 حسنا. 1469 01:06:14,260 --> 01:06:15,426 >> لذلك ماذا أكتب هنا؟ 1470 01:06:15,426 --> 01:06:17,170 وهنا قال لي للحلقة. 1471 01:06:17,170 --> 01:06:23,162 انا ذاهب الى القيام printf () وانا ذاهب لتجعل من ذلك أنني فقط طباعة نقطة واحدة 1472 01:06:23,162 --> 01:06:25,740 على أن القاع. 1473 01:06:25,740 --> 01:06:27,740 >> ماذا أكتب داخل هذه لحلقة الآن؟ 1474 01:06:27,740 --> 01:06:30,897 1475 01:06:30,897 --> 01:06:33,948 حسنا، أولا وقبل كل ما المتغيرات التي يمكنني استخدامها؟ 1476 01:06:33,948 --> 01:06:35,430 >> SPEAKER 24: ي. 1477 01:06:35,430 --> 01:06:36,880 >> BRIAN SCASSELLATI: I يمكن استخدام ي. 1478 01:06:36,880 --> 01:06:38,040 يمكنني استخدام نفس واحدة؟ 1479 01:06:38,040 --> 01:06:39,961 هل يمكنني استخدام ط مرة أخرى؟ 1480 01:06:39,961 --> 01:06:40,460 نعم. 1481 01:06:40,460 --> 01:06:45,531 وهذا موافق، لأن هل أنني أستخدم هنا، 1482 01:06:45,531 --> 01:06:47,780 أنا لا حاجة إليها مرة أخرى عندما أنا ننكب على هذه النقطة. 1483 01:06:47,780 --> 01:06:52,240 1484 01:06:52,240 --> 01:06:53,790 >> فما ينبغي لي أن تهيئة لي ل؟ 1485 01:06:53,790 --> 01:06:56,675 1486 01:06:56,675 --> 01:06:57,300 SPEAKER 25: 10. 1487 01:06:57,300 --> 01:06:58,567 BRIAN SCASSELLATI: 0. 1488 01:06:58,567 --> 01:06:59,400 ماذا يجب أن تحقق؟ 1489 01:06:59,400 --> 01:07:02,960 كم عدد النقاط التي أحتاجها الآن في نهاية إذا كنت قد حصلت على اثنين من النقاط في البداية؟ 1490 01:07:02,960 --> 01:07:05,820 1491 01:07:05,820 --> 01:07:09,165 أحتاج ثمانية في النهاية، فما يجب أن تحقق، أنا أقل than-- 1492 01:07:09,165 --> 01:07:12,645 >> الحضور: سبعة، ثمانية، تسعة. 1493 01:07:12,645 --> 01:07:14,020 BRIAN SCASSELLATI: سمعت سبعة. 1494 01:07:14,020 --> 01:07:14,810 سمعت ثمانية. 1495 01:07:14,810 --> 01:07:15,970 وسمعت تسعة. 1496 01:07:15,970 --> 01:07:16,470 حسنا. 1497 01:07:16,470 --> 01:07:19,540 لذلك نحن جميعا في الحق ball-- يقول جيسون 10. 1498 01:07:19,540 --> 01:07:21,550 حسنا. 1499 01:07:21,550 --> 01:07:25,920 >> إذا كنت بحاجة اثنين من النقاط ل أول واحد، وكم تفعل 1500 01:07:25,920 --> 01:07:30,170 I-- وانا بحاجة الى ثمانية نقاط ل آخر احدا-- أضع اثنين حتى أعلاه، 1501 01:07:30,170 --> 01:07:31,743 ما يجب أن أضع الأسفل؟ 1502 01:07:31,743 --> 01:07:32,570 >> الحضور: ثمانية. 1503 01:07:32,570 --> 01:07:33,611 >> BRIAN SCASSELLATI: ثمانية. 1504 01:07:33,611 --> 01:07:35,695 لأن ذلك سيكون ل العد من صفر إلى سبعة. 1505 01:07:35,695 --> 01:07:38,490 وهذا هو ثماني مرات خلال الحلقة. 1506 01:07:38,490 --> 01:07:38,990 حسنا. 1507 01:07:38,990 --> 01:07:41,774 وماذا علي أن أفعل في نهاية المطاف؟ 1508 01:07:41,774 --> 01:07:42,670 >> الحضور: أنا ++. 1509 01:07:42,670 --> 01:07:44,400 >> BRIAN SCASSELLATI: أنا ++. 1510 01:07:44,400 --> 01:07:45,440 حسنا. 1511 01:07:45,440 --> 01:07:48,260 بحيث انها تبدو جيدة جدا هناك. 1512 01:07:48,260 --> 01:07:50,620 دعونا نحاول ودعونا نرى ما تفعله. 1513 01:07:50,620 --> 01:07:51,450 حسنا. 1514 01:07:51,450 --> 01:07:53,770 لذلك نحن ذاهبون لحفظه. 1515 01:07:53,770 --> 01:07:54,940 لطيفة وحفظها. 1516 01:07:54,940 --> 01:07:56,910 >> سنقوم إعادة تكبير بها. 1517 01:07:56,910 --> 01:07:58,220 سنحاول هنا في المحطة. 1518 01:07:58,220 --> 01:08:01,440 1519 01:08:01,440 --> 01:08:02,970 سنقوم تكبير. 1520 01:08:02,970 --> 01:08:05,416 عفوا. 1521 01:08:05,416 --> 01:08:09,990 وسوف نقوم، واحد مزيد من الوقت، جعل برنامج الأرنب لدينا. 1522 01:08:09,990 --> 01:08:14,460 والمضي قدما وتنفيذ الأرنب. 1523 01:08:14,460 --> 01:08:15,980 وهناك هو عليه. 1524 01:08:15,980 --> 01:08:17,710 >> ولذلك لا يوجد لدينا الأرنب. 1525 01:08:17,710 --> 01:08:25,130 حيث فقد اثنين من النقاط في بداية وثمانية نقاط للخروج في نهاية المطاف. 1526 01:08:25,130 --> 01:08:27,540 الجميع لا يزال معي؟ 1527 01:08:27,540 --> 01:08:28,770 حسنا. 1528 01:08:28,770 --> 01:08:29,580 >> لذلك قمنا ببناء عنه. 1529 01:08:29,580 --> 01:08:33,000 بنينا أرنب واحد، إطار واحد معين. 1530 01:08:33,000 --> 01:08:36,229 الآن كنا قادرين على التعميم أنه من أجل بناء 1531 01:08:36,229 --> 01:08:38,390 أكثر من ذلك، أنواع مختلفة من الإطارات. 1532 01:08:38,390 --> 01:08:42,399 >> الآن دعونا نمضي قدما، ويكون أن تولد ليس فقط إطار واحد، 1533 01:08:42,399 --> 01:08:46,290 ولكن دعونا توليد 10 الإطارات، حيث أننا ببطء 1534 01:08:46,290 --> 01:08:50,569 جعل الارنب نقل كافة على طول الطريق عبر المجال. 1535 01:08:50,569 --> 01:08:51,430 حسنا. 1536 01:08:51,430 --> 01:08:53,660 >> دعونا نعود. 1537 01:08:53,660 --> 01:08:54,839 وسنحاول الآن. 1538 01:08:54,839 --> 01:09:00,680 1539 01:09:00,680 --> 01:09:02,830 فماذا أنا فعلا بحاجة لتغيير هنا؟ 1540 01:09:02,830 --> 01:09:06,139 1541 01:09:06,139 --> 01:09:07,180 ما الذي أحتاجه لتغيير؟ 1542 01:09:07,180 --> 01:09:10,638 >> SPEAKER 26: أنت بحاجة أولا ل تغيير عدد أقصى النقاط 1543 01:09:10,638 --> 01:09:11,626 في البداية. 1544 01:09:11,626 --> 01:09:16,850 لأنه إذا نفعله 10 نقطة، انها بحاجة الى الذهاب الى ما يصل الى نطاق واسع. 1545 01:09:16,850 --> 01:09:17,850 BRIAN SCASSELLATI: نعم. 1546 01:09:17,850 --> 01:09:23,760 حتى الآن لدي نوع من ماثلة لتفعل دائما اثنين من النقاط في بداية 1547 01:09:23,760 --> 01:09:27,890 وتفعل دائما ثماني نقاط في نهاية المطاف. 1548 01:09:27,890 --> 01:09:30,660 >> اريد بناء حلقة أخرى، أليس كذلك؟ 1549 01:09:30,660 --> 01:09:33,290 لأنني لا أريد بناء مجرد صورة أرنب واحد، 1550 01:09:33,290 --> 01:09:37,140 اريد بناء 10 صور الأرنب. 1551 01:09:37,140 --> 01:09:41,500 لذلك أنا بحاجة لبناء حلقة أخرى، وعند خضوعي أن حلقة، 1552 01:09:41,500 --> 01:09:44,660 أريد أن تغيير عدد النقاط I طباعة في بداية 1553 01:09:44,660 --> 01:09:50,529 وعدد النقاط يمكنني طباعة في النهاية، وعلى هذا الأساس دورة خلال الحلقة 1554 01:09:50,529 --> 01:09:52,270 لقد دخلت. 1555 01:09:52,270 --> 01:09:52,770 حسنا. 1556 01:09:52,770 --> 01:09:54,430 >> لذلك دعونا الحصول على أخرى مضادة. 1557 01:09:54,430 --> 01:09:58,142 قبل قال شخص ي، ولذا فإننا سوف تجعل ي آخر. 1558 01:09:58,142 --> 01:10:00,100 والآن، نحن في طريقنا لل بناء آخر للحلقة. 1559 01:10:00,100 --> 01:10:02,650 1560 01:10:02,650 --> 01:10:06,200 >> ما يدور داخل تلك الحلقة؟ 1561 01:10:06,200 --> 01:10:09,060 هذه الاشياء لديه للذهاب داخل الحلقة، أليس كذلك؟ 1562 01:10:09,060 --> 01:10:11,190 هل لدى الارنب للذهاب داخل الحلقة؟ 1563 01:10:11,190 --> 01:10:13,390 هل أحتاج إلى الأرنب في كل من هذه الإطارات 10؟ 1564 01:10:13,390 --> 01:10:14,099 >> الحضور: هاه. 1565 01:10:14,099 --> 01:10:15,098 BRIAN SCASSELLATI: نعم. 1566 01:10:15,098 --> 01:10:17,250 أريد أرنب في كل من إطارات 10، أليس كذلك؟ 1567 01:10:17,250 --> 01:10:20,531 ماذا عن النقاط في في النهاية، لا أحتاج ذلك؟ 1568 01:10:20,531 --> 01:10:21,030 حسنا. 1569 01:10:21,030 --> 01:10:22,550 >> لذلك أنا ذاهب بمحاذاة أطراف كل منهم. 1570 01:10:22,550 --> 01:10:25,110 انا ذاهب الى تسليط الضوء على كل هذا، وانا ذاهب الى ضرب تبويب. 1571 01:10:25,110 --> 01:10:28,590 وهذا ما يحدث لدفعهم على كل قليلا، بحيث من السهل بالنسبة لي 1572 01:10:28,590 --> 01:10:32,010 لمعرفة ما هو في الحلقة. 1573 01:10:32,010 --> 01:10:33,710 وبعد ذلك سوف إنهائه. 1574 01:10:33,710 --> 01:10:35,850 على افتراض. 1575 01:10:35,850 --> 01:10:36,430 موافق؟ 1576 01:10:36,430 --> 01:10:39,230 >> الآن، في هذه الحلقة أن أنا building-- يصيح، 1577 01:10:39,230 --> 01:10:43,810 جعل هذا حتى تتمكن من see-- لقد حصلت على مكافحة ي. 1578 01:10:43,810 --> 01:10:45,630 سوف بدأ في 0. 1579 01:10:45,630 --> 01:10:47,829 كم مرة لا أريد للذهاب من خلال هذه الحلقة؟ 1580 01:10:47,829 --> 01:10:48,620 الحضور: 10 مرة. 1581 01:10:48,620 --> 01:10:49,786 BRIAN SCASSELLATI: 10 مرة. 1582 01:10:49,786 --> 01:10:51,402 فما عدد ينبغي أن أضع هنا؟ 1583 01:10:51,402 --> 01:10:52,880 >> الحضور: 9، 10. 1584 01:10:52,880 --> 01:10:55,600 >> BRIAN SCASSELLATI: 9، 10، لقد حصلت على شخص ما ليقول 11، أليس كذلك؟ 1585 01:10:55,600 --> 01:10:58,190 1586 01:10:58,190 --> 01:11:01,585 أردت اثنين من النقاط قبل ووضع ط أقل من 2. 1587 01:11:01,585 --> 01:11:03,810 أردت ثمانية نقاط، أضع أنا أقل من 8. 1588 01:11:03,810 --> 01:11:06,950 الآن أريد أن أذهب إلى 10 مرات، لذلك أضع ي أقل than-- 1589 01:11:06,950 --> 01:11:07,590 >> الحضور: 10. 1590 01:11:07,590 --> 01:11:08,610 >> BRIAN SCASSELLATI: 10. 1591 01:11:08,610 --> 01:11:10,150 هناك نذهب. 1592 01:11:10,150 --> 01:11:13,360 وماذا أفعل في النهاية إلى ي؟ 1593 01:11:13,360 --> 01:11:15,310 ++، زيادة عليه. 1594 01:11:15,310 --> 01:11:16,230 حسنا. 1595 01:11:16,230 --> 01:11:21,500 الآن، وهنا الجزء صعبة، ما هو يحدث الآن إذا كنت تفعل هذا؟ 1596 01:11:21,500 --> 01:11:24,537 أنا ذاهب لطباعة 10 لقطة؟ 1597 01:11:24,537 --> 01:11:26,370 SPEAKER 27: أعتقد أنها سوف تكون كل نفس. 1598 01:11:26,370 --> 01:11:28,453 BRIAN SCASSELLATI: أنها سوف جميع تكون هي نفسها، أليس كذلك؟ 1599 01:11:28,453 --> 01:11:31,750 لأن كل منهم ما زالت مستمرة لوضع اثنين من النقاط في البداية. 1600 01:11:31,750 --> 01:11:34,162 ولكن أنا لا أريد لهم جميعا ل لدينا اثنين من النقاط في البداية. 1601 01:11:34,162 --> 01:11:35,870 كم عدد النقاط يمكنني أريد في البداية؟ 1602 01:11:35,870 --> 01:11:39,097 1603 01:11:39,097 --> 01:11:40,020 >> الحضور: تغيير. 1604 01:11:40,020 --> 01:11:42,840 >> BRIAN SCASSELLATI: I تريد أن تتغير، أليس كذلك؟ 1605 01:11:42,840 --> 01:11:46,588 وذلك ما لا بد لي هنا أن يتغير في كل مرة حلقة يمر؟ 1606 01:11:46,588 --> 01:11:48,242 >> الحضور: عدد من النقاط، ي. 1607 01:11:48,242 --> 01:11:49,950 BRIAN SCASSELLATI: ي، عدد من النقاط. 1608 01:11:49,950 --> 01:11:54,782 حتى أتمكن من تغيير هذا ي. 1609 01:11:54,782 --> 01:11:59,190 للمرة الأولى من خلال حلقة، ما الذي سيكون؟ 1610 01:11:59,190 --> 01:12:01,700 ما أقوم بإعداد ي لفي البداية؟ 1611 01:12:01,700 --> 01:12:02,420 >> الجمهور: 0. 1612 01:12:02,420 --> 01:12:05,700 >> BRIAN SCASSELLATI: فكيف العديد من الأوقات أنا ذاهب للقيام بذلك؟ 1613 01:12:05,700 --> 01:12:06,750 0. 1614 01:12:06,750 --> 01:12:11,750 للمرة الثانية خلال الحلقة، ي ل سيكون 1 لأنني زيادة عليه. 1615 01:12:11,750 --> 01:12:14,180 كم عدد النقاط أنا ذاهب لطباعة؟ 1616 01:12:14,180 --> 01:12:15,100 1. 1617 01:12:15,100 --> 01:12:19,904 للمرة الثالثة خلال الحلقة، كم عدد النقاط أنا ذاهب لطباعة؟ 1618 01:12:19,904 --> 01:12:20,587 >> الجمهور: ثلاثة. 1619 01:12:20,587 --> 01:12:22,170 BRIAN SCASSELLATI: ي ستكون 3. 1620 01:12:22,170 --> 01:12:24,890 كم عدد النقاط أنا ذاهب لطباعة؟ 1621 01:12:24,890 --> 01:12:26,817 أوه، آسف، ي ستكون 2. 1622 01:12:26,817 --> 01:12:28,233 كم عدد النقاط أنا ذاهب لطباعة؟ 1623 01:12:28,233 --> 01:12:28,980 >> الحضور: 2. 1624 01:12:28,980 --> 01:12:29,855 >> BRIAN SCASSELLATI: 2. 1625 01:12:29,855 --> 01:12:32,460 OK، لذلك أنا ذاهب للحفاظ على تزايد هذا ونحن نمضي على طول. 1626 01:12:32,460 --> 01:12:33,460 كيف حول الأسفل؟ 1627 01:12:33,460 --> 01:12:34,310 ما يذهب إلى هنا؟ 1628 01:12:34,310 --> 01:12:38,080 أنا لا أريد دائما 8 في نهاية بعد الآن؟ 1629 01:12:38,080 --> 01:12:39,269 >> SPEAKER 28: 10. 1630 01:12:39,269 --> 01:12:40,685 BRIAN SCASSELLATI: أريد 10 النقاط؟ 1631 01:12:40,685 --> 01:12:43,440 1632 01:12:43,440 --> 01:12:44,620 أريد أن تغيير أيضا. 1633 01:12:44,620 --> 01:12:47,469 فكيف أريد أن تتغير؟ 1634 01:12:47,469 --> 01:12:49,167 >> الحضور: (غير مسموع). 1635 01:12:49,167 --> 01:12:51,750 BRIAN SCASSELLATI: حسنا، إذا أنا لديك خمس نقاط في البداية، 1636 01:12:51,750 --> 01:12:53,293 وكم نقطة ويمكنني الحصول في نهاية؟ 1637 01:12:53,293 --> 01:12:54,020 >> الحضور: خمسة. 1638 01:12:54,020 --> 01:12:55,630 >> BRIAN SCASSELLATI: إذا كان لدي ست نقاط في البداية، 1639 01:12:55,630 --> 01:12:56,875 وكم يمكنني الحصول في نهاية؟ 1640 01:12:56,875 --> 01:12:57,500 الحضور: أربعة. 1641 01:12:57,500 --> 01:12:58,950 BRIAN SCASSELLATI: إذا حصلت سبع نقاط في البداية، 1642 01:12:58,950 --> 01:13:00,204 وكم يمكنني الحصول في نهاية؟ 1643 01:13:00,204 --> 01:13:00,870 الجمهور: ثلاثة. 1644 01:13:00,870 --> 01:13:03,161 BRIAN SCASSELLATI: إذا كان لدي حصلت النقاط ي في البداية، 1645 01:13:03,161 --> 01:13:04,790 وكم يمكنني الحصول في نهاية؟ 1646 01:13:04,790 --> 01:13:07,520 10-ي. 1647 01:13:07,520 --> 01:13:08,650 حسنا. 1648 01:13:08,650 --> 01:13:10,390 لذلك دعونا نحاول أن الخروج. 1649 01:13:10,390 --> 01:13:13,180 >> لذلك أنا ذاهب لإنقاذ برنامج الأرنب لدينا. 1650 01:13:13,180 --> 01:13:16,270 مرة أخرى سنقوم تصغير. 1651 01:13:16,270 --> 01:13:19,090 سنذهب الى محطة لدينا. 1652 01:13:19,090 --> 01:13:20,180 سنقوم مسحها. 1653 01:13:20,180 --> 01:13:23,410 وتكبير. 1654 01:13:23,410 --> 01:13:26,410 ونحن سوف تجعل البرنامج الأرنب لدينا، مرة أخرى. 1655 01:13:26,410 --> 01:13:27,690 وسنقوم تنفيذه. 1656 01:13:27,690 --> 01:13:30,462 1657 01:13:30,462 --> 01:13:32,090 اه اوه. 1658 01:13:32,090 --> 01:13:34,580 >> عقد، دعونا التصغير. 1659 01:13:34,580 --> 01:13:36,860 لم أحصل على 10 لقطة؟ 1660 01:13:36,860 --> 01:13:38,970 حسنا، كم من الأرانب أرى هناك؟ 1661 01:13:38,970 --> 01:13:43,330 1، 2، 3، 4، 5، 6، 7، 8، 9، 10. 1662 01:13:43,330 --> 01:13:44,820 حصلت على 10 لقطة. 1663 01:13:44,820 --> 01:13:46,375 هم جميعا نفس الشيء؟ 1664 01:13:46,375 --> 01:13:47,000 الجمهور: نعم. 1665 01:13:47,000 --> 01:13:48,740 لا. 1666 01:13:48,740 --> 01:13:50,000 >> BRIAN SCASSELLATI: رقم 1667 01:13:50,000 --> 01:13:55,050 ان اول واحد، الأرنب أبعد ما يكون عن اليسار. 1668 01:13:55,050 --> 01:13:57,541 وهنا، الارنب هو أبعد ما يكون عن 1669 01:13:57,541 --> 01:13:58,290 SPEAKER 29: الحق. 1670 01:13:58,290 --> 01:14:00,502 BRIAN SCASSELLATI: وهكذا، ما لم أنسى أن تفعل؟ 1671 01:14:00,502 --> 01:14:01,750 SPEAKER 30: بدء سطر جديد. 1672 01:14:01,750 --> 01:14:04,041 BRIAN SCASSELLATI: لقد نسيت لبدء سطر جديد، مرة أخرى. 1673 01:14:04,041 --> 01:14:05,270 نفس الخطأ الذي أدليت به من قبل. 1674 01:14:05,270 --> 01:14:07,120 كل الحق، دعنا نذهب إصلاح ذلك. 1675 01:14:07,120 --> 01:14:11,690 الآن، ما زال أمامي رمز في وجود لجعل خط جديد. 1676 01:14:11,690 --> 01:14:13,899 لماذا لا يعمل؟ 1677 01:14:13,899 --> 01:14:15,440 SPEAKER 31: انها ليست داخل الحلقة. 1678 01:14:15,440 --> 01:14:17,710 BRIAN SCASSELLATI: أوه، انها ليست داخل الحلقة. 1679 01:14:17,710 --> 01:14:18,520 هذا صحيح. 1680 01:14:18,520 --> 01:14:20,150 انه يجلس خارج هنا. 1681 01:14:20,150 --> 01:14:23,470 1682 01:14:23,470 --> 01:14:29,050 وللحلقة هو كل شيء وهذا داخل هذا النص. 1683 01:14:29,050 --> 01:14:35,500 >> لذلك أنا ذاهب للتحرك هذا داخل لحلقة. 1684 01:14:35,500 --> 01:14:39,410 وسوف أكون تبويب أمامه ل تبين أنه في المكان المناسب. 1685 01:14:39,410 --> 01:14:42,020 والآن، ونحن سوف حفظه مرة أخرى. 1686 01:14:42,020 --> 01:14:44,350 سنقوم تصغير. 1687 01:14:44,350 --> 01:14:45,770 سنقوم التحول إلى محطة لدينا. 1688 01:14:45,770 --> 01:14:48,330 1689 01:14:48,330 --> 01:14:50,360 تقريب. 1690 01:14:50,360 --> 01:14:54,050 سنقوم إعادة صياغة برنامج الأرنب لدينا. 1691 01:14:54,050 --> 01:14:59,070 والآن، والآن لدينا لدينا 10 لقطة. 1692 01:14:59,070 --> 01:15:00,190 >> [تصفيق] 1693 01:15:00,190 --> 01:15:02,120 >> BRIAN SCASSELLATI: OK. 1694 01:15:02,120 --> 01:15:04,080 هكذا. 1695 01:15:04,080 --> 01:15:08,370 هنا متداخلة من أجل الحلقات. 1696 01:15:08,370 --> 01:15:13,140 كنا قادرين على توليد في الحلقة الداخلية كم عدد النقاط أردت 1697 01:15:13,140 --> 01:15:15,320 لطباعة في البداية، في نهاية المطاف. 1698 01:15:15,320 --> 01:15:21,570 وتسيطر على حلقة الخارجي كم عدد الإطارات كنت بناء. 1699 01:15:21,570 --> 01:15:26,340 بدأنا مع قليل احدة نواة لهذه المشكلة، 1700 01:15:26,340 --> 01:15:30,320 وبنينا من هذه النقطة. 1701 01:15:30,320 --> 01:15:30,820 حسنا. 1702 01:15:30,820 --> 01:15:33,500 >> دعونا نفعل خطوة أخرى. 1703 01:15:33,500 --> 01:15:35,040 هل انت مستعد؟ 1704 01:15:35,040 --> 01:15:38,800 هناك شيء واحد هنا حيث لقد حصلت في الواقع نوع من 1705 01:15:38,800 --> 01:15:42,180 المزيد من التعقيد مما نحتاج. 1706 01:15:42,180 --> 01:15:44,700 لنلقي نظرة. 1707 01:15:44,700 --> 01:15:52,050 وذلك في برنامج الأرنب لدينا، إذا كنت التصغير هنا، 1708 01:15:52,050 --> 01:15:54,980 أنا فعلا بعض من نفسه الشيء مرارا وتكرارا. 1709 01:15:54,980 --> 01:15:59,032 ماذا أفعل هذا النوع من نفس الشيء يتكرر مرتين؟ 1710 01:15:59,032 --> 01:16:00,310 >> SPEAKER 32: طباعة النقاط. 1711 01:16:00,310 --> 01:16:03,526 >> BRIAN SCASSELLATI: نعم I طباعة تلك النقاط مرتين. 1712 01:16:03,526 --> 01:16:05,710 حقا، يجب أن لدي هذا التعليق هنا. 1713 01:16:05,710 --> 01:16:09,037 I طباعة بعض النقاط في بداية، وصولا هنا. 1714 01:16:09,037 --> 01:16:10,620 وبعد ذلك طباعة بعض النقاط في نهاية المطاف. 1715 01:16:10,620 --> 01:16:14,694 وأنا لا نوع من بالضبط نفس الشيء. 1716 01:16:14,694 --> 01:16:17,110 ما نحن في طريقنا للبدء العمل على في الأسابيع القليلة القادمة 1717 01:16:17,110 --> 01:16:23,440 هو التمكن من اتخاذ تلك الكتل من التعليمات البرمجية التي نستخدمها مرارا وتكرارا، 1718 01:16:23,440 --> 01:16:25,800 وخلال عملية دعا التجريد، 1719 01:16:25,800 --> 01:16:31,100 ونحن في طريقنا إلى سحبهم و اكتبها مرة واحدة حتى ما في وسعنا ثم 1720 01:16:31,100 --> 01:16:35,130 إعادة استخدامها مرارا وتكرارا. 1721 01:16:35,130 --> 01:16:37,210 لذلك دعونا نحاول ذلك. 1722 01:16:37,210 --> 01:16:38,220 مستعد؟ 1723 01:16:38,220 --> 01:16:42,200 >> ونحن في طريقنا إلى اتخاذ هذه الكتلة من التعليمات البرمجية. 1724 01:16:42,200 --> 01:16:45,280 وانا ذاهب لإخراجها من هناك. 1725 01:16:45,280 --> 01:16:50,530 وانا ذاهب الى define-- في أسفل، 1726 01:16:50,530 --> 01:16:53,130 أنا أريد أن أكتب وظيفة جديدة. 1727 01:16:53,130 --> 01:16:54,750 انها لن يعود أي شيء. 1728 01:16:54,750 --> 01:16:58,550 وانا ذاهب الى نسميها printDots. 1729 01:16:58,550 --> 01:17:01,530 >> انها سوف تأخذ واحدة حجة، عدد صحيح 1730 01:17:01,530 --> 01:17:04,920 يقول howManyDots أود أن طباعة. 1731 01:17:04,920 --> 01:17:09,310 1732 01:17:09,310 --> 01:17:17,720 والآن بدلا من طباعة النقاط ي، وسوف أكون طباعة أقول howManyDots أود أن طباعة. 1733 01:17:17,720 --> 01:17:21,581 >> وهناك مشكلة صغيرة واحدة هنا. 1734 01:17:21,581 --> 01:17:22,580 أحد يعرف ما هو؟ 1735 01:17:22,580 --> 01:17:27,270 1736 01:17:27,270 --> 01:17:31,505 ماذا لدي هذا المدرجة هنا وهذا ما لا يعرف؟ 1737 01:17:31,505 --> 01:17:34,165 1738 01:17:34,165 --> 01:17:35,090 >> الحضور: (غير مسموع) 1739 01:17:35,090 --> 01:17:37,465 >> BRIAN SCASSELLATI: حسنا كيف يتم تعريف العديد من النقاط وصولا 1740 01:17:37,465 --> 01:17:40,584 هنا، ولكن أنا باستخدام هذا المتغير ط. 1741 01:17:40,584 --> 01:17:43,750 لذلك أنا ذاهب الى اتخاذ هذا المتغير ط وانا ذاهب لتحديد عليه هنا 1742 01:17:43,750 --> 01:17:44,610 بدلا من ذلك. 1743 01:17:44,610 --> 01:17:49,683 >> وحتى الآن انه سيكون لstay-- عفوا، حصلت على قبعات قفل على somehow-- أنا 1744 01:17:49,683 --> 01:17:52,060 ذاهب للحفاظ على ط أسفل هنا. 1745 01:17:52,060 --> 01:17:57,050 >> وحتى الآن وهنا قال لي وظيفة صغيرة أو الروتين الفرعي، ويقول: 1746 01:17:57,050 --> 01:18:00,640 كم عدد النقاط أنا ذاهب لطباعة؟ 1747 01:18:00,640 --> 01:18:05,300 وأنها سوف تذهب من خلال هذه الحلقة و طباعتها مرارا وتكرارا. 1748 01:18:05,300 --> 01:18:10,940 >> أنا يمكن بعد ذلك تعديل برنامجي هنا. 1749 01:18:10,940 --> 01:18:12,540 وماذا أدعو أن وظيفة؟ 1750 01:18:12,540 --> 01:18:13,960 printDots. 1751 01:18:13,960 --> 01:18:17,060 لذلك سأتصل printDots. 1752 01:18:17,060 --> 01:18:21,530 كم عدد النقاط أريد أن طباعة أول مرة قبل الارنب؟ 1753 01:18:21,530 --> 01:18:22,030 الحضور: ي. 1754 01:18:22,030 --> 01:18:23,230 BRIAN SCASSELLATI: ي. 1755 01:18:23,230 --> 01:18:27,110 كم عدد النقاط أريد أن طباعة في النهاية، بعد الارنب؟ 1756 01:18:27,110 --> 01:18:30,610 1757 01:18:30,610 --> 01:18:31,110 10-ي. 1758 01:18:31,110 --> 01:18:35,020 1759 01:18:35,020 --> 01:18:38,010 >> وهناك شيء واحد أنا في عداد المفقودين. 1760 01:18:38,010 --> 01:18:43,740 كما رأيتم في محاضرة اليوم، ونحن في طريقنا لاعلان printDots 1761 01:18:43,740 --> 01:18:52,430 حتى أعلاه لإعطاء النموذج. 1762 01:18:52,430 --> 01:18:56,740 1763 01:18:56,740 --> 01:18:58,220 حسنا. 1764 01:18:58,220 --> 01:19:03,530 >> ذلك ما فعلته هو أنني حاولت أن عزل هذا الجزء استخدامها من التعليمات البرمجية 1765 01:19:03,530 --> 01:19:06,430 أن فعلت مرارا وتكرارا. 1766 01:19:06,430 --> 01:19:11,120 ولقد حاولت أن تخلعها بحيث كل ذلك يرد في مكان واحد. 1767 01:19:11,120 --> 01:19:16,810 وبهذه الطريقة، إذا كان لدي خطأ في مكان ما، وليس لدي سوى لاصلاحها في بقعة واحدة. 1768 01:19:16,810 --> 01:19:17,310 حسنا. 1769 01:19:17,310 --> 01:19:18,470 >> لذلك دعونا حفظه. 1770 01:19:18,470 --> 01:19:20,950 ودعونا نتأكد من أنه يعمل. 1771 01:19:20,950 --> 01:19:22,050 لذلك دعونا الخروج. 1772 01:19:22,050 --> 01:19:25,200 سنذهب مرة أخرى إلى محطة لدينا. 1773 01:19:25,200 --> 01:19:27,960 سنقوم تكبير. 1774 01:19:27,960 --> 01:19:31,010 ونحن سوف تجعل هذه العملية الأرنب. 1775 01:19:31,010 --> 01:19:32,380 >> اه. 1776 01:19:32,380 --> 01:19:34,800 ولقد أعطيت لي تحذيرا. 1777 01:19:34,800 --> 01:19:37,070 ما هو عليه تقول لي؟ 1778 01:19:37,070 --> 01:19:39,870 جيد في أي من هذه مرات، وتريد دائما 1779 01:19:39,870 --> 01:19:44,170 للتمرير حتى error-- أولا جدا الآن على هذا واحد، لقد حصلت على واحد فقط. 1780 01:19:44,170 --> 01:19:52,700 >> يقول لي في bunny.c، على الخط 8، 9 العمود، هناك مشكلة. 1781 01:19:52,700 --> 01:19:58,650 تقول، وكنت قد أعلنت هذا ط متغير وأنت لم تستخدم. 1782 01:19:58,650 --> 01:20:02,230 >> الآن بشكل طبيعي، وهذا لا أسوأ خطأ. 1783 01:20:02,230 --> 01:20:04,300 هذا هو واحد من السهل لإصلاح. 1784 01:20:04,300 --> 01:20:07,550 في واقع الأمر، يمكننا أن نذهب مرة أخرى. 1785 01:20:07,550 --> 01:20:09,910 يمكننا أن نعود إلى الأرنب. 1786 01:20:09,910 --> 01:20:13,010 وفي هذه الحالة، كل ما عليك القيام به هو التخلص من ط، 1787 01:20:13,010 --> 01:20:16,630 لأننا لا تستخدم أنا داخل الرئيسي بعد الآن. 1788 01:20:16,630 --> 01:20:19,860 نحن فقط استخدامه ضمن روتين حياتنا الفرعي. 1789 01:20:19,860 --> 01:20:22,777 >> لذلك دعونا حفظ ذلك. 1790 01:20:22,777 --> 01:20:23,360 سوف نعود. 1791 01:20:23,360 --> 01:20:26,760 1792 01:20:26,760 --> 01:20:28,630 وتكبير. 1793 01:20:28,630 --> 01:20:30,700 سنقوم احد مزيد من الوقت تجعل الأرنب. 1794 01:20:30,700 --> 01:20:33,810 1795 01:20:33,810 --> 01:20:36,530 وهناك لدينا 10 لقطة مرة أخرى. 1796 01:20:36,530 --> 01:20:39,450 1797 01:20:39,450 --> 01:20:41,360 حسنا. 1798 01:20:41,360 --> 01:20:43,190 >> أي وقت نظرا لأنك وprocedure-- نعم. 1799 01:20:43,190 --> 01:20:44,690 SPEAKER 33: لدي a-- أنا مرتبك. 1800 01:20:44,690 --> 01:20:45,892 يمكنك العودة إلى رمز؟ 1801 01:20:45,892 --> 01:20:46,850 BRIAN SCASSELLATI: نعم. 1802 01:20:46,850 --> 01:20:50,730 1803 01:20:50,730 --> 01:20:54,367 >> SPEAKER 33: لذا، عندما كتب النموذج الخاص بك، وحجة لك 1804 01:20:54,367 --> 01:20:56,550 قد أسمته كان يسمى howMany؟ 1805 01:20:56,550 --> 01:20:57,540 ولكن، below-- 1806 01:20:57,540 --> 01:20:57,640 >> BRIAN SCASSELLATI: أوه نعم. 1807 01:20:57,640 --> 01:20:59,140 >> SPEAKER 33: --called لهم شيئا مختلفة، وأنا لا أفهم. 1808 01:20:59,140 --> 01:21:00,240 >> BRIAN SCASSELLATI: لماذا هم مختلفة. 1809 01:21:00,240 --> 01:21:01,780 لذلك هذا هو السؤال الكبير. 1810 01:21:01,780 --> 01:21:08,250 لذا فإن السؤال هو، ما يصل هنا، كتبت howMany، 1811 01:21:08,250 --> 01:21:12,380 والأسفل، كتبت howManyDots. 1812 01:21:12,380 --> 01:21:15,590 >> والسبب هو أن تصل في النموذج الخاص بك، انها في الواقع لا تولي اهتماما 1813 01:21:15,590 --> 01:21:17,090 إلى الأسماء التي أنك تضع في. 1814 01:21:17,090 --> 01:21:20,530 كل ما يهتم حقا هو أنه صحيح. 1815 01:21:20,530 --> 01:21:23,080 أنه يريد أن يعرف شكل ما أنك تضع في. 1816 01:21:23,080 --> 01:21:31,560 >> الآن stylistically-- oops-- ما ينبغي لي لا، وأود أن جعل هذه المباراة. 1817 01:21:31,560 --> 01:21:33,150 حسنا. 1818 01:21:33,150 --> 01:21:36,430 لأن ذلك سوف يبقيه السهل بالنسبة لي أن تذكر. 1819 01:21:36,430 --> 01:21:38,390 ولكن هذا كان خطأي نعم. 1820 01:21:38,390 --> 01:21:47,620 >> المتكلمين (34): وهكذا ل نموذج للعمل، فقط 1821 01:21:47,620 --> 01:21:50,510 كتابة هذا الخط، كتابة النموذج، 1822 01:21:50,510 --> 01:21:53,932 يسمح أن وظيفة التي تأتي الحق دون أن يذهب إلى نهاية 1823 01:21:53,932 --> 01:21:55,140 واسترداد ما يعني ذلك؟ 1824 01:21:55,140 --> 01:21:58,480 >> BRIAN SCASSELLATI: ماذا يعني عندما يذهب مترجم، من خلال 1825 01:21:58,480 --> 01:22:01,930 وغني من أعلى التعليمات البرمجية الخاصة بك إلى أسفل. 1826 01:22:01,930 --> 01:22:05,430 وما هو هذا النموذج، هو في الأساس الوعد. 1827 01:22:05,430 --> 01:22:09,570 >> تقول، هناك سيكون وظيفة محددة في مكان ما. 1828 01:22:09,570 --> 01:22:11,880 انها سوف تكون دعا printDots. 1829 01:22:11,880 --> 01:22:15,110 وانها سوف تأخذ وسيطة واحدة هذا سوف يكون عدد صحيح 1830 01:22:15,110 --> 01:22:18,590 وانها سوف تعود لا شيء، نوع باطلة. 1831 01:22:18,590 --> 01:22:19,310 حسنا. 1832 01:22:19,310 --> 01:22:22,950 أعدكم أنه سيكون يعرف مكان ما على الطريق. 1833 01:22:22,950 --> 01:22:25,590 لكن في أي وقت ترى ذلك، كما تذهب إلى أسفل 1834 01:22:25,590 --> 01:22:28,710 من خلال ما تبقى من بلدي الوظيفة الرئيسية، أريد 1835 01:22:28,710 --> 01:22:33,800 لك لعلاج ذلك بوصفها وظيفة التي تأخذ المدخلات صحيح واحد. 1836 01:22:33,800 --> 01:22:37,970 >> وحتى عندما يذهب مترجم أسفل من خلال هذا، فإنه يرى أن الوعد. 1837 01:22:37,970 --> 01:22:40,220 وعندما يحصل إلى أسفل، استمر على هذه الحال، وتبقي على الذهاب، 1838 01:22:40,220 --> 01:22:43,060 يجدها أول مرة يذكر printDots. 1839 01:22:43,060 --> 01:22:46,910 ويقول: أوه، كنت تعطي لي هذا ي. من ي عدد صحيح. 1840 01:22:46,910 --> 01:22:49,570 >> كذلك كنت وعدت لي من شأنه أن ان يكون عدد صحيح وهذا صحيح. 1841 01:22:49,570 --> 01:22:51,370 وهذا موافق. 1842 01:22:51,370 --> 01:22:53,880 ثم أخيرا، بانخفاض في الجزء السفلي جدا، 1843 01:22:53,880 --> 01:22:58,340 قبل أن نصل الى نهاية من بلدي ملف، وأنا جعل جيدة على بوعدي 1844 01:22:58,340 --> 01:22:59,896 ويمكنني تحديد ذلك. 1845 01:22:59,896 --> 01:23:01,868 موافق؟ 1846 01:23:01,868 --> 01:23:06,320 >> SPEAKER 35: لذا، فإنه saves-- لل البرنامج سوف يوفر مساحات فارغة 1847 01:23:06,320 --> 01:23:09,570 أنه يعود ويملأ في نهاية المطاف؟ 1848 01:23:09,570 --> 01:23:12,140 >> BRIAN SCASSELLATI: انها ليست حول تخصيص الذاكرة. 1849 01:23:12,140 --> 01:23:16,800 انها في الواقع مجرد حول ما نوع أنك تتوقع أن ترى. 1850 01:23:16,800 --> 01:23:19,340 يجب أن هذا الشيء يكون واحد حجة، أو خمسة الحجج؟ 1851 01:23:19,340 --> 01:23:23,590 يجب أن يكون ذلك الأعداد الصحيحة تكون نظرا لذلك، أو السلاسل؟ 1852 01:23:23,590 --> 01:23:25,780 هذا هو كل ما يتطلع القيام به هو للتحقق، 1853 01:23:25,780 --> 01:23:29,303 أنت إعطائي الحق في نوع من الجدل. 1854 01:23:29,303 --> 01:23:31,560 موافق؟ 1855 01:23:31,560 --> 01:23:32,300 حسنا. 1856 01:23:32,300 --> 01:23:38,570 >> اسمحوا لي أن أترككم مع الشيء الآخر للنظر في. 1857 01:23:38,570 --> 01:23:44,850 الفن ASCII ليس هو نموذج رائع الرسوم المتحركة كما هو اليوم. 1858 01:23:44,850 --> 01:23:50,850 ولكن بعض الناس بالطبع تأخذ الأمور وهم دفعها إلى أقصى أبعادها. 1859 01:23:50,850 --> 01:23:56,790 >> هذا هو، كما أثبتت ديفيد في محاضرة، وقطعة من التعليمات البرمجية 1860 01:23:56,790 --> 01:24:02,150 ما يجب عليك تحت أي ظرف من الظروف محاولة لتكرار أنفسكم. 1861 01:24:02,150 --> 01:24:05,260 لأنه أمر فظيع أسلوبيا. 1862 01:24:05,260 --> 01:24:11,180 في الواقع، وأنها مصممة لتكون من الصعب ممكن للقراءة. 1863 01:24:11,180 --> 01:24:11,680 حسنا. 1864 01:24:11,680 --> 01:24:16,210 >> لذلك، على أن تفعل مرة أخرى، دعونا تكبير هنا. 1865 01:24:16,210 --> 01:24:20,120 انا ذاهب للذهاب الآن، والدليل التغيير. 1866 01:24:20,120 --> 01:24:24,050 انا ذاهب لترتفع واحدة مستوى، والعودة إلى بلدي مساحة العمل. 1867 01:24:24,050 --> 01:24:29,760 أنا ثم تغيير الدليل إلى هذا الدليل الآخر الذي قمت بإنشائه. 1868 01:24:29,760 --> 01:24:36,190 >> وهذا هو الدولية غموض C برمجة المسابقة. 1869 01:24:36,190 --> 01:24:40,650 وسائل التعتيم صعبة ممكن أن نفهم. 1870 01:24:40,650 --> 01:24:44,150 لذا يرجى، لا يكون خائفا إذا نظرتم في هذه وتذهب، وأنا لا يمكن قراءة ذلك. 1871 01:24:44,150 --> 01:24:46,350 هذا هو بيت القصيد من ذلك. 1872 01:24:46,350 --> 01:24:47,700 موافق؟ 1873 01:24:47,700 --> 01:24:52,770 >> ولكن، لدينا هذا البرنامج الرائع الذي أنا 1874 01:24:52,770 --> 01:24:57,180 سوف ننظر في فقط عن طريق كتابة أكثر من ذلك. 1875 01:24:57,180 --> 01:25:01,890 ودعونا نرى ما اذا كان يمكنني تصغير فقط قليلا، حتى تتمكن من رؤيته 1876 01:25:01,890 --> 01:25:03,940 >> وهذا هو البرنامج. 1877 01:25:03,940 --> 01:25:08,080 الكشف عن اسمه ان endo.c. 1878 01:25:08,080 --> 01:25:14,850 ويبدو أن هذا دلو مع النوع من الرسائل F-L-U-I-D في ذلك. 1879 01:25:14,850 --> 01:25:16,440 >> هذا هو في الواقع برنامج. 1880 01:25:16,440 --> 01:25:20,260 الذي كتبت عليه في أكثر غموضا الطريقة التي يمكن للمؤلفين ربما 1881 01:25:20,260 --> 01:25:21,760 أكتبه. 1882 01:25:21,760 --> 01:25:29,210 ولكن هذا جزء صغير رائع أن يولد نموذجا للديناميكا الموائع. 1883 01:25:29,210 --> 01:25:34,870 >> وحتى ونحن في طريقنا لإعطاء هذا النموذج مدخلا أن 1884 01:25:34,870 --> 01:25:42,520 يبدو مثل هذا، ل staired مجموعة من حاويات 1885 01:25:42,520 --> 01:25:45,820 مع بعض السوائل، وبعض السائل، في أعلى. 1886 01:25:45,820 --> 01:25:48,790 ونحن سوف يكون ذلك محاكاة ما يحدث له. 1887 01:25:48,790 --> 01:25:52,415 >> لذلك سأتصل تلك الوظيفة، إندو. 1888 01:25:52,415 --> 01:25:59,000 وسأعطيك أن ملف الإدخال أنني دينا. 1889 01:25:59,000 --> 01:26:02,830 وهناك لدينا مثال من الفن ASCII. 1890 01:26:02,830 --> 01:26:08,960 A محاكاة ديناميكية السوائل الكاملة تشغيل في غضون بضعة أسطر من التعليمات البرمجية. 1891 01:26:08,960 --> 01:26:13,750 >> الآن ما هو الواقع حقا مذهلة حول هذا البرنامج الصغير 1892 01:26:13,750 --> 01:26:17,280 هو أنني أريد أن يتوقف ذلك الآن، لذلك أنا ذاهب إلى استخدام ما الأمر؟ 1893 01:26:17,280 --> 01:26:18,660 >> الحضور: مراقبة-C. 1894 01:26:18,660 --> 01:26:20,390 >> BRIAN SCASSELLATI: مراقبة-C. حسنا. 1895 01:26:20,390 --> 01:26:22,960 ولذا فإنني سوف تستخدم تحكم-C. C وهذا سوف وقفه. 1896 01:26:22,960 --> 01:26:25,330 سوف مسح مرة أخرى. 1897 01:26:25,330 --> 01:26:31,210 والآن انا ذاهب الى استدعاء البرنامج، تنفيذ البرنامج، 1898 01:26:31,210 --> 01:26:33,740 باستخدام نفسها كإدخال. 1899 01:26:33,740 --> 01:26:36,760 1900 01:26:36,760 --> 01:26:42,700 >> وسنرى ديناميكية السوائل محاكاة لذوبانها. 1901 01:26:42,700 --> 01:26:43,830 حسنا. 1902 01:26:43,830 --> 01:26:48,180 من فضلك لا تدع هذا البرنامج أن يكون الشيء الذي يخلط بين لك. 1903 01:26:48,180 --> 01:26:52,220 انها مجرد حتى نتمكن من وضع حد ل شيء رائع ومثير للاهتمام. 1904 01:26:52,220 --> 01:26:53,930 حسنا. 1905 01:26:53,930 --> 01:26:56,330 >> حظا سعيدا مع مجموعات مشكلتك. 1906 01:26:56,330 --> 01:26:59,030 سنكون سعداء للرد الأسئلة بعد انتهاء اليوم الدراسي. 1907 01:26:59,030 --> 01:27:01,180 شكرا جزيلا، والرجال. 1908 01:27:01,180 --> 01:27:02,793