1 00:00:00,000 --> 00:00:11,736 2 00:00:11,736 --> 00:00:16,626 >> [پخش ویدئو] 3 00:00:16,626 --> 00:00:19,410 >> پیروزی -A از ریاضی و مهارت های مکانیکی 4 00:00:19,410 --> 00:00:23,270 این بزرگ جدید به صورت خودکار ماشین حساب در دانشگاه هاروارد. 5 00:00:23,270 --> 00:00:27,140 مشکلات پیچیده در ریاضیات از طریق دستگاه را در شکل رمزی 6 00:00:27,140 --> 00:00:31,710 در نوار به طور دقیق در یک حل میزان ناچیزی از زمان مورد نیاز 7 00:00:31,710 --> 00:00:32,819 برای محاسبه انسان است. 8 00:00:32,819 --> 00:00:44,280 9 00:00:44,280 --> 00:00:48,220 طراحی شده برای تسریع تمام اشکال ریاضی و علمی پژوهش، 10 00:00:48,220 --> 00:00:53,840 مغز مکانیکی غول پیکر برای کار خواهد کرد نیروی دریایی ایالات متحده تا پایان جنگ. 11 00:00:53,840 --> 00:01:03,620 12 00:01:03,620 --> 00:01:06,570 >> [END پخش] 13 00:01:06,570 --> 00:01:08,590 >> DAVID J. مالان: این، CS50 است. 14 00:01:08,590 --> 00:01:10,590 گذشته جادویی بود مکان است، اما تا به حال اگر شما 15 00:01:10,590 --> 00:01:13,366 فکر آنچه که دستگاه است در مرکز علوم دانشگاه هاروارد، 16 00:01:13,366 --> 00:01:16,150 در واقع بخشی از هاروارد مارک من، و آن را 17 00:01:16,150 --> 00:01:18,710 بر روی صفحه نمایش وجود دارد در حال حاضر برای بسیاری از سال گذشته. 18 00:01:18,710 --> 00:01:20,590 و آنچه شما خواهید دید جاسازی شده در مجموعه ای مشکل 19 00:01:20,590 --> 00:01:24,416 یک نگاه پشت صحنه است در چه که دستگاه انجام داد، و می کند، 20 00:01:24,416 --> 00:01:27,540 از پروفسور هری لوئیس، که در است بخش علوم کامپیوتر است. 21 00:01:27,540 --> 00:01:29,440 بنابراین بیشتر در مورد که در فقط یک کمی. 22 00:01:29,440 --> 00:01:33,990 >> اما امروز ما به انتقال آغاز از هفته گذشته به این، 23 00:01:33,990 --> 00:01:37,290 و ما اشاره را از یک عکس در اینجا 24 00:01:37,290 --> 00:01:38,630 که در واقع کاملا مشهور است. 25 00:01:38,630 --> 00:01:42,270 آیا کسی می داند این در اینجا بر روی صفحه نمایش است. 26 00:01:42,270 --> 00:01:43,880 حداقل با توجه به اسطوره. 27 00:01:43,880 --> 00:01:44,837 آره. 28 00:01:44,837 --> 00:01:45,920 مخاطبان: این ویروس اولین بار. 29 00:01:45,920 --> 00:01:49,570 DAVID J. مالان: پس از آن بود ظاهرا اولین اشکال واقعی در یک کامپیوتر است. 30 00:01:49,570 --> 00:01:52,490 در حال حاضر در واقعیت اشکال کلمه، برای یک اشتباه در یک برنامه، 31 00:01:52,490 --> 00:01:55,250 با ما برای برخی از شده زمان در جهان فیزیکی، 32 00:01:55,250 --> 00:01:58,190 و این یکی از اولین بار بود بار ثبت که در آن کسی که در واقع 33 00:01:58,190 --> 00:02:02,280 یک پروانه بزرگ از علامت گذاری به عنوان کنده کامپیوتر II، آن را در چسب قرار داده است، 34 00:02:02,280 --> 00:02:05,006 و زمان آن ثبت به عنوان اولین اشکال شناخته شده 35 00:02:05,006 --> 00:02:06,630 به واقع از لحاظ جسمی یافت شده است. 36 00:02:06,630 --> 00:02:10,104 پس در نتیجه از وارد شد که به افسانه هاو روایات قومی امروز است. 37 00:02:10,104 --> 00:02:12,020 همه چیز از گذشته هفته آنلاین در دسترس است. 38 00:02:12,020 --> 00:02:14,840 در منابع خاص که شما ممکن است نه لزوما متوجه، به ویژه 39 00:02:14,840 --> 00:02:15,881 اگر از آمدن به اینجا در فرد است. 40 00:02:15,881 --> 00:02:20,230 بنابراین یکی از همراهان آموزش هر سال باعث می شود یک مجموعه استاندارد از یادداشت ها، 41 00:02:20,230 --> 00:02:22,010 بنابراین شما نیاز را حفظ کند سر خود را پایین، تلاش 42 00:02:22,010 --> 00:02:24,410 به رونویسی هر چیزی که ممکن است در کلاس در اینجا اتفاق می افتد. 43 00:02:24,410 --> 00:02:25,940 پس متوجه است که کسانی که به اصطلاح [؟ SCRIBD؟] یادداشت 44 00:02:25,940 --> 00:02:29,350 آنلاین، قطعا اسلاید و کد منبع است که ما در کلاس استفاده کنید. 45 00:02:29,350 --> 00:02:31,436 ما را رونوشت متن کامل در دسترس است. 46 00:02:31,436 --> 00:02:34,310 بنابراین اگر شما به یاد داشته باشید که برخی مبهم مدت، و می خواهید به آن نگاه کنید تا کمی 47 00:02:34,310 --> 00:02:37,280 بیشتر به راحتی، درک کنند که همه که آنلاین جستجو است. 48 00:02:37,280 --> 00:02:38,930 و همچنین تکمیل فرم سفارش است. 49 00:02:38,930 --> 00:02:42,710 در واقع، امروز ما شروع به در نگاه کنید سطح زبان برنامه نویسی پایین تر، 50 00:02:42,710 --> 00:02:45,290 به زودی به ما شناخته شده است به عنوان C، و آن را بسیار آسان 51 00:02:45,290 --> 00:02:48,820 به نوعی از تنها پس از چند دست داده لحظات زمان، و پس از تعجب 52 00:02:48,820 --> 00:02:52,370 چگونه ما در واقع به برخی کردم مثال پیچیده از ساده ترین. 53 00:02:52,370 --> 00:02:54,975 و به این ترتیب متوجه خواهیم گیلاس انتخاب کنید در کلاس برخی 54 00:02:54,975 --> 00:02:57,850 از نمونه های نماینده، اما متوجه باشید که خیلی بیشتر است 55 00:02:57,850 --> 00:03:01,140 در دسترس آنلاین، بنابراین شما می توانید کار از طریق آن با سرعت خود را، 56 00:03:01,140 --> 00:03:02,950 با این حال شما راحت ترین است. 57 00:03:02,950 --> 00:03:05,200 >> اما ما با چپ برنامه هایی که فقط این بود. 58 00:03:05,200 --> 00:03:09,690 بنابراین من پرچم سبز کلیک کنید، و چه این برنامه را انجام دهید؟ 59 00:03:09,690 --> 00:03:10,710 می گوید: سلام، جهان است. 60 00:03:10,710 --> 00:03:13,180 این باعث می شود که گربه می گویند سلام در دنیای کوچک خود 61 00:03:13,180 --> 00:03:15,990 در سمت بالا سمت چپ رابط کاربر خراش است. 62 00:03:15,990 --> 00:03:18,810 اما ما آغاز شده را به شما معرفی برخی از اصطلاحات هفته گذشته است. 63 00:03:18,810 --> 00:03:23,614 و به این ترتیب، همه چیز مثل این که ما به نام چه؟ 64 00:03:23,614 --> 00:03:25,280 آنچه ممکن است در اصطلاح عمومی برای این؟ 65 00:03:25,280 --> 00:03:26,266 آره. 66 00:03:26,266 --> 00:03:28,210 یک روش یا یک بیانیه. 67 00:03:28,210 --> 00:03:29,280 مطمئنا، آن را یک عمل است. 68 00:03:29,280 --> 00:03:30,140 آیا این. 69 00:03:30,140 --> 00:03:32,400 و در عین حال وجود دارد اشکال دیگر به خراش، 70 00:03:32,400 --> 00:03:35,360 علاوه بر این به اصطلاح بیانیه ای، آنها نیز 71 00:03:35,360 --> 00:03:38,221 چیزهایی مثل این، که ما به نام چه؟ 72 00:03:38,221 --> 00:03:38,720 آره. 73 00:03:38,720 --> 00:03:39,634 بنابراین یک حلقه. 74 00:03:39,634 --> 00:03:42,050 و در این مورد، این چیزی که تکرار، بدیهی است، 10 بار. 75 00:03:42,050 --> 00:03:43,040 یک بلوک برای همیشه وجود دارد. 76 00:03:43,040 --> 00:03:44,164 یک زن و شوهر از دیگران وجود دارد. 77 00:03:44,164 --> 00:03:48,309 و امروز ما قصد داریم تا ببینید که چگونه به ترجمه این به جهان مدرن تر، 78 00:03:48,309 --> 00:03:50,850 اگر شما خواهد شد، حتی اگر آن را به نظر می رسد در نگاه اول 79 00:03:50,850 --> 00:03:52,024 به بسیار محرمانه تر می شود. 80 00:03:52,024 --> 00:03:53,190 اما کسانی بودند که در واقع حلقه. 81 00:03:53,190 --> 00:03:56,182 و پس از آن ما چیزهایی مانند این که این شکل بود، 82 00:03:56,182 --> 00:03:57,515 و اساسا سوال پرسید. 83 00:03:57,515 --> 00:03:58,890 و ما به این عنوان چه اشاره شده؟ 84 00:03:58,890 --> 00:03:59,762 >> مخاطبان: عبارت بولی باشد. 85 00:03:59,762 --> 00:04:00,320 >> DAVID J. مالان: آره. 86 00:04:00,320 --> 00:04:01,340 عبارت بولی باشد. 87 00:04:01,340 --> 00:04:04,502 چیزی است که درست یا نادرست، آری یا نه، یک یا صفر، 88 00:04:04,502 --> 00:04:05,960 با این حال شما می خواهید برای دیدن جهان است. 89 00:04:05,960 --> 00:04:08,335 اما ما آن بولی نام عبارات، و ما آنها را به برق وصل 90 00:04:08,335 --> 00:04:09,900 به شرایط، و یا شاخه. 91 00:04:09,900 --> 00:04:12,170 و در جهان ابتدا، همه چیز به خوبی 92 00:04:12,170 --> 00:04:15,460 قفل از نظر شکل آن، اگر آن را حس منطقی به انجام این کار، 93 00:04:15,460 --> 00:04:18,490 اما شما لازم نیست که به توقف در تنها انجام یک چیز مشروط، 94 00:04:18,490 --> 00:04:20,450 شما می توانید یک ضرب المثلی دارند چنگال را در جاده 95 00:04:20,450 --> 00:04:24,040 و یا این یا آن اگر شرط درست است یا نه. 96 00:04:24,040 --> 00:04:26,040 و پس از آن، به عنوان شما خواهید دید، اگر شما در حال حاضر، 97 00:04:26,040 --> 00:04:27,480 شما می توانید لانه حتی این بلوک. 98 00:04:27,480 --> 00:04:32,110 بنابراین ابتدا رشد می کند برای پر کردن اشکال که شما ممکن است بخواهید برای وارد کردن به آن، 99 00:04:32,110 --> 00:04:35,330 بنابراین شما در واقع می تواند بیان ترین هر گونه منطق است که شما ممکن خواهید انجام دهید. 100 00:04:35,330 --> 00:04:38,220 >> در حال حاضر چند کلمه از اعلام برای هر دو در اینجا و New Haven. 101 00:04:38,220 --> 00:04:39,370 بنابراین برش امروز آغاز می شود. 102 00:04:39,370 --> 00:04:42,120 URL برای این است که در دوره است وب سایت، برای کسانی که نا آشنا. 103 00:04:42,120 --> 00:04:43,970 بخش ها خواهد بود فرصت با هم 104 00:04:43,970 --> 00:04:46,553 در یک محیط بسیار صمیمی تر از [؟ سندرز؟] اجازه می دهد، 105 00:04:46,553 --> 00:04:50,347 با 10 تا 20 با یک همکلاسی آموزش همکار در آهنگ های مختلف، 106 00:04:50,347 --> 00:04:51,930 و قدم های مختلف، اگر شما را انتخاب کنید. 107 00:04:51,930 --> 00:04:54,080 در واقع البته پیشنهادات بخش های مختلف 108 00:04:54,080 --> 00:04:57,340 برای کسانی که کمتر راحت، بیشتر راحت، و جایی در میان، 109 00:04:57,340 --> 00:04:59,860 و نقش کلی در اینجا، است هیچ تعریف رسمی وجود دارد، 110 00:04:59,860 --> 00:05:04,600 اما اگر شما کمتر و راحت هستید، شما نوع آن را می دانم. 111 00:05:04,600 --> 00:05:07,470 شما کمی بی باک در مورد ما ایده پله پا، شاید، تماس 112 00:05:07,470 --> 00:05:10,130 در کلاس درس، و یا نشان دادن تا یک در بین بخش. 113 00:05:10,130 --> 00:05:12,770 اگر شما برنامه نویسی از شما بوده ام شش ساله، راحت تر بود، 114 00:05:12,770 --> 00:05:13,400 شاید به شما. 115 00:05:13,400 --> 00:05:16,150 و اگر آن را یک نوع بازی شیر یا خط تا، این دقیقا همان چیزی است که در بین 116 00:05:16,150 --> 00:05:17,190 به معنای. 117 00:05:17,190 --> 00:05:18,410 >> در حال حاضر، در عین حال، برای یک کلاس این اندازه، 118 00:05:18,410 --> 00:05:21,326 آن را به ما طول می کشد مدتی به بخش همه، پس ما به اصطلاح، 119 00:05:21,326 --> 00:05:24,030 بخش فوق العاده، در آینده این تعطیلات آخر هفته و اوایل هفته آینده، 120 00:05:24,030 --> 00:05:26,570 بنابراین یک نگاه وب سایت درس را برای کسانی که البته گسترده ای هستند، 121 00:05:26,570 --> 00:05:28,610 و همچنین برای کسانی فیلم برداری که می تواند آنها را ندارد. 122 00:05:28,610 --> 00:05:33,470 و بخش خود را شروع خواهد شد در هفته سوم از CS50 شاخص صفر است. 123 00:05:33,470 --> 00:05:35,880 مجموعه ای مشکل است در حال حاضر 0 در وب سایت درس است. 124 00:05:35,880 --> 00:05:40,010 و متوجه است که شما لازم نه روز اواخر این ترم. 125 00:05:40,010 --> 00:05:43,240 بنابراین این ارتقا از گذشته است سال، زمانی که ما پنج روز در اواخر بود. 126 00:05:43,240 --> 00:05:46,210 >> بنابراین اگر شما نمی دانید، ما نه مجموعه مشکل است. 127 00:05:46,210 --> 00:05:53,200 شما باید نه روز اواخر، که هر کدام شما تنها می توانید یکی از صرف هر هفته است. 128 00:05:53,200 --> 00:05:56,089 که به طور موثر باعث می شود تمام مجموعه مسائل به علت جمعه، 129 00:05:56,089 --> 00:05:58,630 اما هدف این است برای قرار دادن یک کمی کمی از فشار روانی 130 00:05:58,630 --> 00:06:01,100 شما را به سعی کنید به همه چیز در روز پنج شنبه 131 00:06:01,100 --> 00:06:03,960 چرا که به عنوان شما به زودی کشف، برای بهتر یا بدتر از آن، ترین 132 00:06:03,960 --> 00:06:07,820 همه چیز را در جهان نرم افزار پایان می رسد تا مصرف بسیار طولانی تر از شما پیش بینی. 133 00:06:07,820 --> 00:06:10,620 پس از آن یک نوع در نظر فرصت برای کمک به 134 00:06:10,620 --> 00:06:13,880 خود را به هدف قرار دادن پنج شنبه، اما به راحتی در که، بله، 135 00:06:13,880 --> 00:06:14,950 همه چیز است که به علت جمعه. 136 00:06:14,950 --> 00:06:17,590 و اگر شما آنها را انتخاب در پنجشنبه، که فوق العاده است. 137 00:06:17,590 --> 00:06:21,020 هیچ امتیاز پاداش و یا اضافی وجود دارد اعتباری برای ملاقات که آخرین مهلت. 138 00:06:21,020 --> 00:06:23,250 این به معنای تنها یک چوب زیر بغل. 139 00:06:23,250 --> 00:06:25,810 >> و ساعات اداری، هر دو در اینجا و در نیوهیون، 140 00:06:25,810 --> 00:06:28,840 در فرد، اگر شما می خواهم به دیدار با هر یک از دوره های ما 141 00:06:28,840 --> 00:06:31,060 آموزش همراهان و CAS برای کمک. 142 00:06:31,060 --> 00:06:31,640 >> خیلی خوب. 143 00:06:31,640 --> 00:06:33,110 بنابراین در حال حاضر، اجازه دهید این موضوع را بیشتر واقعی است. 144 00:06:33,110 --> 00:06:35,470 و برای یک لحظه آن را به شروع به کمی محرمانه تر، اما بسیار 145 00:06:35,470 --> 00:06:37,310 به سرعت در روز جمعه و هفته آینده ما خواهد شد 146 00:06:37,310 --> 00:06:41,230 قادر به انجام خیلی بیشتر از ما می تواند تا کنون در ابتدا. 147 00:06:41,230 --> 00:06:44,350 بنابراین ما معرفی کد آخرین هفته، البته pictoral. 148 00:06:44,350 --> 00:06:45,620 این قطعات پازل بود. 149 00:06:45,620 --> 00:06:48,800 و ما که آن را به رسمیت چیزی به نام کد منبع، 150 00:06:48,800 --> 00:06:50,330 اما مثل نگاه می کنید؟ 151 00:06:50,330 --> 00:06:52,550 خوب، آن را نگاه کمی چیزی شبیه به این. 152 00:06:52,550 --> 00:06:55,410 و، در واقع، فقط به نوع کسی را دست انداختن که در آن ما می توانیم با این بروید. 153 00:06:55,410 --> 00:06:57,800 من قصد دارم به جلو بروید و باز کردن یک پنجره در اینجا، 154 00:06:57,800 --> 00:06:59,810 و من فقط رفتن را انتخاب کنید فایل جدید است. 155 00:06:59,810 --> 00:07:03,200 و من قصد دارم برای ذخیره این فایل به عنوان چیزی شبیه سلام نقطه C. 156 00:07:03,200 --> 00:07:05,700 بیشتر که انتخاب کلمات در یک لحظه. 157 00:07:05,700 --> 00:07:08,630 و این است چگونه ممکن است کسی را رفتن در مورد نوشتن یک برنامه است. 158 00:07:08,630 --> 00:07:13,990 شامل استاندارد I / O نقطه ساعت، اعضای هیات تحریریه اصلی از درجه اعتبار ساقط، و سپس باز آکولاد، نزدیک 159 00:07:13,990 --> 00:07:19,430 آکولاد، تابع () printf سلام کاما از هم جهان، بک اسلش نفر، نقطه و ویرگول، ذخیره، انجام می شود. 160 00:07:19,430 --> 00:07:19,930 باشه. 161 00:07:19,930 --> 00:07:21,670 من برای اولین بار من نوشته ام برنامه، اما آن را 162 00:07:21,670 --> 00:07:23,878 به فوق العاده جریان حرکت زیرا زمانی که من در واقع 163 00:07:23,878 --> 00:07:27,352 اجرای این برنامه، البته، با نوشتن را خوش آمدید، 164 00:07:27,352 --> 00:07:30,310 و پس از آن نقطه اسلش سلام، و ما از طریق این در جزئیات بسیار بیشتر 165 00:07:30,310 --> 00:07:31,730 در یک لحظه، که همه آن را است. 166 00:07:31,730 --> 00:07:33,270 آیا پاپ نیست باز کردن هر پنجره. 167 00:07:33,270 --> 00:07:35,070 این هیچ کاری انجام نمی به خصوص فانتزی. 168 00:07:35,070 --> 00:07:38,830 همه آن کند چیزی است که من آن را به گفت انجام دهید، اما ما چگونه به آن را دریافت کنید؟ 169 00:07:38,830 --> 00:07:40,560 و چگونه ما بر اساس آن ساخت؟ 170 00:07:40,560 --> 00:07:43,430 خوب، اجازه دهید چند معرفی مفاهیم مختلف در اینجا. 171 00:07:43,430 --> 00:07:47,170 >> بنابراین یکی، ما در مورد برای شروع با استفاده از برنامه ای به نام یک کامپایلر. 172 00:07:47,170 --> 00:07:51,470 یک کامپایلر برای سیستم عامل مک، ویندوز وجود دارد، لینوکس، هر تعداد از سیستم عامل، 173 00:07:51,470 --> 00:07:54,540 و ما به زودی شما را به معرفی محیط زیست است که ما با استفاده از خواهد شد، 174 00:07:54,540 --> 00:07:57,410 اما یک کامپایلر فقط یک عمومی مدت برای یک قطعه از نرم افزار 175 00:07:57,410 --> 00:08:01,940 که کد منبع را می گیرد و تولید کد شیء از آن. 176 00:08:01,940 --> 00:08:03,940 به عبارت دیگر، اگر شما به عنوان ورودی منبع خود را دارند 177 00:08:03,940 --> 00:08:08,250 کد، چیزی شبیه به آنچه که من فقط تایپ، در نهایت به تولید کد شی. 178 00:08:08,250 --> 00:08:11,780 و کد شیء است که واقعا فقط راه فانتزی گفت: خروجی 179 00:08:11,780 --> 00:08:12,926 صفر و یک است. 180 00:08:12,926 --> 00:08:14,800 به عبارت دیگر، منبع کد، حتی اگر آن را 181 00:08:14,800 --> 00:08:17,240 رفتن به نگاه محرمانه کمی، و کمی کمتر دوستانه 182 00:08:17,240 --> 00:08:19,590 از ابتدا در نگاه اول، آن را حداقل چیزی است 183 00:08:19,590 --> 00:08:21,120 که ما انسان ها می تواند درک. 184 00:08:21,120 --> 00:08:24,360 این نوع از نظر می رسد و برای تلفن های موبایل مانند انگلیسی حتی اگر آن را بسیار موجز. 185 00:08:24,360 --> 00:08:28,040 در حالی که برنامه نویسی در صفر و یکی، به عنوان پیشینیان ما تا به حال انجام، 186 00:08:28,040 --> 00:08:30,920 چند سال پیش، یک داور سرگرم کننده است. 187 00:08:30,920 --> 00:08:33,710 و در عین حال، این چیزی است که است کامپیوتر هنوز درک می کند. 188 00:08:33,710 --> 00:08:37,010 بنابراین کامپایلر ما را می شود از کد منبع به کد شیء. 189 00:08:37,010 --> 00:08:39,860 آن را مانند باز کردن یک فایل با این کامپایلر، و هنگامی که شما آن را ذخیره کنید، 190 00:08:39,860 --> 00:08:41,419 شما آن صفر و آنهایی که دریافت کنید. 191 00:08:41,419 --> 00:08:43,419 بنابراین خواهیم دید که چگونه به انجام که در یک لحظه. 192 00:08:43,419 --> 00:08:47,400 >> اما اجازه دهید در حال حاضر سعی به ارائه یک پل بین هفته گذشته و این، 193 00:08:47,400 --> 00:08:50,660 به طوری که حتی به عنوان ما گذاشت در مورد چیزهایی مثل آکولاد، 194 00:08:50,660 --> 00:08:54,100 و سمی کالن و پرانتز، و همه از این فکری جالب 195 00:08:54,100 --> 00:08:57,620 جنبه های برنامه نویسی، که بسیار قابل درک مردم سفر تا اوایل، 196 00:08:57,620 --> 00:09:00,930 درک کنند که همه از ایده امروز، همان گذشته است. 197 00:09:00,930 --> 00:09:03,975 بنابراین گذشته، ما شاهد این مثال در اینجا، برنامه Hello World. 198 00:09:03,975 --> 00:09:07,500 خب، از امروز شروع، اگر ما می خواهیم برای پیاده سازی است که همان برنامه، 199 00:09:07,500 --> 00:09:10,800 آن را به نگاه چیزی کمی شبیه به این. 200 00:09:10,800 --> 00:09:14,040 و ما قبل از چه نوع int طولانی توضیح دهد، و اصلی، و خالی، و همه از آن 201 00:09:14,040 --> 00:09:18,770 است، اما حداقل من در اینجا ببینید در حال حاضر آشنا سلام جهان. 202 00:09:18,770 --> 00:09:20,860 >> در همین حال، همه چیز مانند تابع، سلام، 203 00:09:20,860 --> 00:09:23,570 خیلی ساده برای رفتن به یک بیانیه بسیار ساده مثل این. 204 00:09:23,570 --> 00:09:26,930 تابع () printf سلام جهان، با برخی از نقل از، با یک بک اسلش، 205 00:09:26,930 --> 00:09:29,780 با نقطه و ویرگول، اما بیشتر در آمده است. 206 00:09:29,780 --> 00:09:34,066 حلقه ها، در عین حال، این یک حلقه است که، البته، می گوید: سلام جهان را برای همیشه، 207 00:09:34,066 --> 00:09:36,690 و این یکی را به نگاه کمی عجیب و غریبتر از در گذشته، 208 00:09:36,690 --> 00:09:39,530 اما اگر من چیزی می گویند مانند، در حالی که درست است، من 209 00:09:39,530 --> 00:09:44,050 می توانید و سپس چاپ سلام جهان دوباره و دوباره و دوباره و دوباره. 210 00:09:44,050 --> 00:09:46,660 و پس از آن به شما به عنوان می تواند به نوعی شروع به استنباط در اینجا، 211 00:09:46,660 --> 00:09:49,070 این کنوانسیون استفاده از آکولاد نوع 212 00:09:49,070 --> 00:09:52,050 مانند استقبال از خط فاصله دار از کد وجود دارد. 213 00:09:52,050 --> 00:09:55,840 خط تابع () printf کد بسیار شبیه قطعه پازل زرد تا بالا. 214 00:09:55,840 --> 00:09:58,740 بنابراین ما قصد داریم نیست که می گویند برای همیشه، ما در حال رفتن به در حالی که درست، 215 00:09:58,740 --> 00:10:01,020 اما خواهیم دید که چرا این است که در فقط یک کمی. 216 00:10:01,020 --> 00:10:04,210 >> در همین حال، اگر ما یک حلقه شبیه به این، که در آن شما را تکرار چیزی محدود 217 00:10:04,210 --> 00:10:07,730 تعداد بار، این یکی بیش از حد آن رفتن به کمی مورد استفاده قرار گرفتن 218 00:10:07,730 --> 00:10:12,820 به، اما آن را به اینترنت می گویند من می شود صفر، من کمتر از 10، من + +، 219 00:10:12,820 --> 00:10:14,056 و پس از آن تابع () printf است. 220 00:10:14,056 --> 00:10:15,430 اما برای رفتن به الگوهای وجود دارد. 221 00:10:15,430 --> 00:10:18,434 و برای کسانی از شما آشنا با AP علوم کامپیوتر، و یا جاوا، 222 00:10:18,434 --> 00:10:21,100 یا هر تعداد از زبان های دیگر، تقریبا همه از این سازه 223 00:10:21,100 --> 00:10:23,820 تا کنون باید بیشتر آشنا است. 224 00:10:23,820 --> 00:10:24,680 >> بنابراین متغیر است. 225 00:10:24,680 --> 00:10:29,270 بنابراین در اینجا گزیده ای خراش ساده است که مجموعه یک متغیر به نام شمارنده به صفر، 226 00:10:29,270 --> 00:10:33,150 و سپس برای همیشه می گوید ضد، و سپس آن را تغییر مقابله به یک است. 227 00:10:33,150 --> 00:10:37,030 بنابراین آن را با صفر شروع می شود، و سپس یکی، دو، سه. 228 00:10:37,030 --> 00:10:42,560 خوب، چگونه ممکن است معرفی می کنیم که در این زبان جدید کمی به طور مشابه؟ 229 00:10:42,560 --> 00:10:45,460 INT ضد برابر صفر، در حالی که درست است که 230 00:10:45,460 --> 00:10:48,100 که همان ایده از قبل است از انجام کاری برای همیشه، 231 00:10:48,100 --> 00:10:49,530 و من فقط رفتن به printf. 232 00:10:49,530 --> 00:10:53,310 و در حال حاضر آن را گرفتن کمی عجیب و غریب، درصد من، اما بیشتر در آمده است، 233 00:10:53,310 --> 00:10:55,140 اما این ایده ها دقیقا همان است. 234 00:10:55,140 --> 00:10:58,820 ما فقط در حال حاضر باید به پایبندی به نحو که کامپیوتر است 235 00:10:58,820 --> 00:11:00,010 رفتن به تقاضا از ما. 236 00:11:00,010 --> 00:11:04,620 >> عبارت بولی، چیزی شبیه به SX کمتر از y و x کمتر از Y، 237 00:11:04,620 --> 00:11:06,354 و y کمتر از Z است. 238 00:11:06,354 --> 00:11:09,270 آن را به نگاه یک چیزی کمی مثل این، با پرانتز فقط 239 00:11:09,270 --> 00:11:13,020 مانند ریاضی برای اندازه گیری خوبی به فقط اطمینان حاصل شود که منظور از عملیات 240 00:11:13,020 --> 00:11:14,750 است که ما قصد. 241 00:11:14,750 --> 00:11:15,600 و در حال حاضر، شرایط. 242 00:11:15,600 --> 00:11:21,220 بنابراین اگر x از y کمتر، می گویند x کمتر است از y، دیگری اگر x بزرگتر از y باشد، 243 00:11:21,220 --> 00:11:26,020 می گویند x بزرگتر از y باشد، در غیر این صورت منطقی، X به Y باید برابر باشد. 244 00:11:26,020 --> 00:11:28,710 بنابراین شما ممکن است پیاده سازی چیزی شبیه به این در ابتدا، 245 00:11:28,710 --> 00:11:31,230 یا شما ممکن است پیاده سازی آن را در این نحو. 246 00:11:31,230 --> 00:11:35,090 و دوباره، آکولاد از نوع به ما همان شکل پازل 247 00:11:35,090 --> 00:11:40,750 قطعات، اما نحو، در حال حاضر شاید، شروع به دنبال برخی از الگوهای. 248 00:11:40,750 --> 00:11:42,910 >> بنابراین، چه این به ما را در اینجا؟ 249 00:11:42,910 --> 00:11:45,260 بنابراین ما تماس پس از آن در برنامه اصلی ما است. 250 00:11:45,260 --> 00:11:47,930 اجازه دهید در واقع، در حال حاضر، انجام کاری با آن. 251 00:11:47,930 --> 00:11:50,660 بنابراین در این اولین خط ما می بینیم تیز عبارتند از، 252 00:11:50,660 --> 00:11:53,160 استاندارد I / O، نقطه H، و پس از آن برخی از زاویه های عجیب و غریب 253 00:11:53,160 --> 00:11:57,330 براکت زیر که. اصلی اعضای هیات از درجه اعتبار ساقط، و سپس تابع () printf سلام جهان. 254 00:11:57,330 --> 00:11:58,200 پس فقط یک گام را. 255 00:11:58,200 --> 00:12:02,440 کسی که قبل از برنامه ریزی هرگز، حداقل یکی از این خطوط را توضیح دهد. 256 00:12:02,440 --> 00:12:04,490 با استفاده از شاید برخی از اصطلاحات مخصوص یک صنف از هفته گذشته است. 257 00:12:04,490 --> 00:12:06,942 تابع () printf چه چیزی است، به عنوان مثال؟ 258 00:12:06,942 --> 00:12:07,442 آره. 259 00:12:07,442 --> 00:12:08,410 >> مخاطبان: [نامفهوم] 260 00:12:08,410 --> 00:12:08,610 >> DAVID J. مالان: آره. 261 00:12:08,610 --> 00:12:11,380 این یک تابع یا یک بیانیه است، از اصطلاحات هفته گذشته است. 262 00:12:11,380 --> 00:12:13,470 و آن را یک عمل است که انجام کاری است. 263 00:12:13,470 --> 00:12:15,855 در حال حاضر این تابع، یا این بیانیه، می کند 264 00:12:15,855 --> 00:12:17,550 به نظر می رسد آن را به برخی از نوع ورودی؟ 265 00:12:17,550 --> 00:12:20,080 266 00:12:20,080 --> 00:12:24,380 و به چه معنا آن را به نظر می رسد به ورودی، اگر چنین است؟ 267 00:12:24,380 --> 00:12:26,180 ورودی، چه چیزی که من در؟ 268 00:12:26,180 --> 00:12:26,720 آره. 269 00:12:26,720 --> 00:12:27,595 >> مخاطبان: [نامفهوم] 270 00:12:27,595 --> 00:12:30,565 271 00:12:30,565 --> 00:12:31,440 DAVID J. مالان: آره. 272 00:12:31,440 --> 00:12:34,890 بنابراین خراش چند قطعه پازل که در آن شما می توانید آن را parametrize. 273 00:12:34,890 --> 00:12:37,980 شما می توانید از تکرار به مسدود چند بار به تکرار، 274 00:12:37,980 --> 00:12:40,320 به طوری که یک ورودی بود انواع، و درست مثل خراش 275 00:12:40,320 --> 00:12:43,060 حال یک حفره یا سوراخ کوچک سفید برای تعداد شما می توانید نوع در، 276 00:12:43,060 --> 00:12:45,810 بنابراین ما در این استفاده پرانتز جهان متن 277 00:12:45,810 --> 00:12:49,910 به ما که به شکل دایره را به که ما می توانیم ورودی ما را وصل کنید. 278 00:12:49,910 --> 00:12:53,180 پس از همه، ده ها سال پیش زمانی که این زبان، به نام C، 279 00:12:53,180 --> 00:12:55,950 هیچ کس اختراع شد پیش بینی آن را یکی از ما، 280 00:12:55,950 --> 00:12:59,420 این چند سال بعد، ما می خواهم می خواهید یک تابع است که می گوید: سلام. 281 00:12:59,420 --> 00:12:59,920 درست؟ 282 00:12:59,920 --> 00:13:02,880 این می تواند خوب اگر یک وجود دارد قطعه پازل، و یا یک کلمات کلیدی، 283 00:13:02,880 --> 00:13:05,502 که به نام سلام، که به معنای واقعی کلمه فقط می گوید: سلام. 284 00:13:05,502 --> 00:13:06,460 اما ما نیاز به این کار نیست. 285 00:13:06,460 --> 00:13:09,320 ما می توانیم چیزی بسیار کمتری دارد سطح، مانند چاپ عمومی 286 00:13:09,320 --> 00:13:12,760 فرمان، که طول می کشد ورودی، و چاپ هر آنچه ما می خواهیم. 287 00:13:12,760 --> 00:13:14,960 بنابراین در حال حاضر متوجه الگوی که شروع خواهد شد به ظهور. 288 00:13:14,960 --> 00:13:19,310 پرانتز باز، پرانتز بسته است ظاهرا استقبال از ورودی، 289 00:13:19,310 --> 00:13:21,770 و پس از آن دو را ببینید نقل در هر دو به پایان می رسد. 290 00:13:21,770 --> 00:13:25,110 هنوز بک اسلش عجیب و غریب وجود دارد N، اما امیدوارم در حال حاضر شما 291 00:13:25,110 --> 00:13:29,900 می توانید شروع به تجسم حداقل که تابع () printf است که مصرف در بعضی از فرم های ورودی. 292 00:13:29,900 --> 00:13:31,850 نه به عنوان کاربر پسند که خراش، اما آن را فقط 293 00:13:31,850 --> 00:13:34,920 مانند در اختیار داشتن در برخی از ارزش وجود دارد وصل شده است. 294 00:13:34,920 --> 00:13:38,306 >> همه حق است، در حال حاضر اجازه واقع انجام کاری با این. 295 00:13:38,306 --> 00:13:40,930 بنابراین برخی از شما ممکن است از مطمئن شوید داشتن خرید کرده کلاس قبل، 296 00:13:40,930 --> 00:13:42,638 گفتگو با دوستان، که برای سالهای زیادی 297 00:13:42,638 --> 00:13:44,590 ما چیزی به نام استفاده دستگاه CS50. 298 00:13:44,590 --> 00:13:49,160 این یک اصطلاح برای توصیف یک تکنولوژی بود به نام ماشین مجازی، که 299 00:13:49,160 --> 00:13:51,870 یک قطعه نرم افزاری است که خود را پیشینیان را دانلود کردن 300 00:13:51,870 --> 00:13:53,360 وب سایت درس به صورت رایگان. 301 00:13:53,360 --> 00:13:56,550 آنها همچنین یک قطعه به صورت رایگان دانلود نرم افزار به نام یک Hypervisor، 302 00:13:56,550 --> 00:14:00,590 چیزی به نام مثل VMware، و یا مجازی، و یا هر تعداد 303 00:14:00,590 --> 00:14:04,450 از ابزارهای دیگر، و در خود مک و یا کامپیوتر و یا هر کامپیوتری که در سال گذشته 304 00:14:04,450 --> 00:14:06,620 و در سال گذشته، آنها دو برابر یک آیکون کلیک کنید 305 00:14:06,620 --> 00:14:08,860 این نرم افزار اجرا نام هایپروایزر. 306 00:14:08,860 --> 00:14:12,220 و سپس در داخل آن برنامه آنها دستگاه CS50 را باز کنید. 307 00:14:12,220 --> 00:14:14,710 و اثر این بود که آیا یک سلف از شما 308 00:14:14,710 --> 00:14:17,780 در حال اجرا بود و یا سیستم عامل Mac OS ویندوز، او پس از آن 309 00:14:17,780 --> 00:14:22,910 پس از آن یک پنجره جدید در حال خود صفحه نمایش در حال اجرا محیط زیست CS50 است. 310 00:14:22,910 --> 00:14:27,370 بنابراین یک ماشین مجازی شما اجازه می دهد اجرای یک سیستم عامل داخل دیگر، 311 00:14:27,370 --> 00:14:28,785 و این دقیقا همان کاری که ما کردیم. 312 00:14:28,785 --> 00:14:31,410 در طول بیشتر از دوره ما استفاده از یک سیستم عامل به نام 313 00:14:31,410 --> 00:14:34,070 لینوکس، به طور خاص لینوکس اوبونتو، و این 314 00:14:34,070 --> 00:14:37,590 یک راه بسیار خوب در سال های گذشته است مطمئن شوید که هر کس در این دوره 315 00:14:37,590 --> 00:14:38,840 فقط همان محیط بود. 316 00:14:38,840 --> 00:14:41,339 و شما می توانید هر نوع استفاده کامپیوتری که شما واقعا می خواهید. 317 00:14:41,339 --> 00:14:43,930 در میان جنبه های منفی، هر چند، بود آن را مانند دو گیگابایت بود 318 00:14:43,930 --> 00:14:45,480 برای دانلود این چیز. 319 00:14:45,480 --> 00:14:50,310 اما ضرورتا کار نمی فوق العاده خوبی در افرادی که کامپیوتر است که شاید تنها 320 00:14:50,310 --> 00:14:54,570 حال یک فرفره و یا پس از RAM، یا نه بیش از حد بسیاری از گیگاهرتز سرعت CPU، 321 00:14:54,570 --> 00:14:56,750 و بنابراین در این سال، برای این و دلایل دیگر، 322 00:14:56,750 --> 00:14:59,140 بوده ایم گذار به این محیط. 323 00:14:59,140 --> 00:15:03,730 به اصطلاح CS50 IDE است که بر اساس نرم افزار منبع باز است، 324 00:15:03,730 --> 00:15:07,380 و یک پلت فرم پشتیبانی که یک شرکت به نام از Cloud9 325 00:15:07,380 --> 00:15:11,110 از در اروپا، که اجازه می دهد تا ما را به اصل 326 00:15:11,110 --> 00:15:15,770 که محیط دقیق همان است که در سال گذشته، اما در ابر به اصطلاح. 327 00:15:15,770 --> 00:15:17,532 >> پس چه ابر است؟ 328 00:15:17,532 --> 00:15:20,480 شما احتمالا کلیک کرده اید آیکون آن بر روی مک و یا کامپیوتر شما. 329 00:15:20,480 --> 00:15:22,210 ابر چیست؟ 330 00:15:22,210 --> 00:15:22,709 آره؟ 331 00:15:22,709 --> 00:15:25,880 332 00:15:25,880 --> 00:15:26,780 کمی بلندتر. 333 00:15:26,780 --> 00:15:30,510 334 00:15:30,510 --> 00:15:31,010 آره. 335 00:15:31,010 --> 00:15:33,770 این فقط یک دسته از کامپیوتر و رایانه است در جاهای دیگر که داده اینترنتی و اجرا 336 00:15:33,770 --> 00:15:34,880 نرم افزار و مانند آن. 337 00:15:34,880 --> 00:15:39,390 پس از آن واقعا فقط به کلمه د قانونی توصیف [؟ قابل اجاره؟] 338 00:15:39,390 --> 00:15:40,930 کامپیوتر که در جاهای دیگر زندگی می کنند. 339 00:15:40,930 --> 00:15:42,810 که شما، خودتان، لزوما خودش را دارد. 340 00:15:42,810 --> 00:15:45,256 بنابراین، هنگامی که داده های خود، و یا خود را برنامه ها، در ابر هستند، 341 00:15:45,256 --> 00:15:47,630 آن را فقط به معنی آن در کسی کامپیوتر دیگری در جاهای دیگر، 342 00:15:47,630 --> 00:15:50,510 و نه، به احتمال زیاد در، خود را لپ تاپ های فیزیکی و یا دسکتاپ. 343 00:15:50,510 --> 00:15:52,990 و به طوری که چه CS50 IDE در حال حاضر است. 344 00:15:52,990 --> 00:15:55,670 >> پس شما را به برخی از به URL که شما را معرفی 345 00:15:55,670 --> 00:16:00,090 به، در مجموعه مسئله 1، بعد از این هفته، که خواهد شد و سپس، پس از ورود به سیستم، 346 00:16:00,090 --> 00:16:01,480 شما این محیط است. 347 00:16:01,480 --> 00:16:03,896 و بسیار شبیه به خراش بود چند پانل های مختلف درگیر، 348 00:16:03,896 --> 00:16:06,030 به طوری که IDE CS50 دارند که دقیقا. 349 00:16:06,030 --> 00:16:09,480 در سمت بالا دست چپ در اینجا، شما رفتن به دیدن یک مرورگر فایل آشنا. 350 00:16:09,480 --> 00:16:11,930 بنابراین هر یک از فایل های که شما قرار داده و به این محیط 351 00:16:11,930 --> 00:16:13,346 فقط به وجود ذکر شده است. 352 00:16:13,346 --> 00:16:14,350 فایل ها و پوشه ها. 353 00:16:14,350 --> 00:16:16,790 در بالای سمت راست در اینجا، شما در حال رفتن به یک مکان 354 00:16:16,790 --> 00:16:18,420 که در آن شما در واقع می تواند کد خود را بنویسید. 355 00:16:18,420 --> 00:16:21,860 در ابتدا در C، بعد از آن در مدت در پی اچ پی و جاوا اسکریپت، 356 00:16:21,860 --> 00:16:24,739 و شاید برای نهایی پروژه، روبی و پایتون یا جاوا 357 00:16:24,739 --> 00:16:27,280 یا هر تعداد از زبان پشتیبانی در این محیط زیست است. 358 00:16:27,280 --> 00:16:30,130 آن را در تمام گره خورده است به CS50 به طور خاص. 359 00:16:30,130 --> 00:16:33,390 >> و سپس در گوشه پایین در اینجا، به خصوص برای کسانی راحت تر، 360 00:16:33,390 --> 00:16:35,590 شما چیزی به نام یک پنجره ترمینال. 361 00:16:35,590 --> 00:16:38,770 و این اجازه می دهد تا پنجره ترمینال شما برای اجرای هر دستور که شما 362 00:16:38,770 --> 00:16:40,860 می خواهید در این محیط ابر. 363 00:16:40,860 --> 00:16:42,860 این اجازه می دهد شما را به نصب هیچ نرم افزار اضافی 364 00:16:42,860 --> 00:16:46,810 که شما می خواهید دلیل این که شما به اصطلاح ریشه، و یا مدیر امتیازات. 365 00:16:46,810 --> 00:16:49,930 بنابراین به عبارت دیگر، حتی اگر این در نهایت در ابر میزبانی، 366 00:16:49,930 --> 00:16:52,400 و حتی اگر ما آن را تا حدی ساده شده 367 00:16:52,400 --> 00:16:57,110 به طور پیش فرض، به معنای واقعی کلمه معرفی، به لطف دن Armendariz به، و دینو، 368 00:16:57,110 --> 00:17:01,070 و دن برادلی در تیم CS50 بیش از گذشته بسیاری از ماه های سال، کمتر و راحت 369 00:17:01,070 --> 00:17:05,140 حالت است که پنهان بسیاری از حواس او را پرت در ابتدا گیج کننده است. 370 00:17:05,140 --> 00:17:10,119 همه چیز وجود دارد به وجود نشان دهنده یک سیستم کامپیوتر معمولی 371 00:17:10,119 --> 00:17:12,319 که شما ممکن است در دنیای واقعی استفاده کنید. 372 00:17:12,319 --> 00:17:15,640 >> پس چه چیزی این همه معنی، و آنچه می تواند ما در واقع با آن انجام دهید؟ 373 00:17:15,640 --> 00:17:19,124 اجازه دهید در واقع زیرچشمی نگاه کردن را در یک برنامه است. 374 00:17:19,124 --> 00:17:21,290 بنابراین من قصد دارم برای باز کردن محیط واقعی در اینجا، 375 00:17:21,290 --> 00:17:23,894 که فقط کروم است مرورگر، که می تواند فایرفاکس، 376 00:17:23,894 --> 00:17:26,640 می تواند اینترنت اکسپلورر، و یا برخی از مرورگر های دیگر نیز هست. 377 00:17:26,640 --> 00:17:28,400 آن را کامل در اینجا برای لحظه ای به نمایش درمیآید. 378 00:17:28,400 --> 00:17:31,580 و من می خواهم به کسی را دست انداختن در واقع جدا چه این برنامه بود. 379 00:17:31,580 --> 00:17:36,170 بنابراین اجازه دهید نگاهی، با زوم کردن در تا بالا، در آنچه من انجام داد، و چگونه من به اینجا رسیدیم. 380 00:17:36,170 --> 00:17:38,315 بنابراین در اینجا آن است دقیق همان خط کد. 381 00:17:38,315 --> 00:17:40,440 بنابراین این بیانیه است، همانطور که قبلا ذکر شده است. 382 00:17:40,440 --> 00:17:42,580 تابع است که می گوید: سلام. 383 00:17:42,580 --> 00:17:45,870 آکولاد، در خط چهار خط و شش، 384 00:17:45,870 --> 00:17:49,290 احتمالا نوع پاکت که خط آن را مرتبط 385 00:17:49,290 --> 00:17:50,890 با جوهر برنامه من است. 386 00:17:50,890 --> 00:17:54,890 پس در واقع، این اصلی کلمه کلیدی، که تا در خط سه، 387 00:17:54,890 --> 00:17:59,450 شما می توانید از آن به عنوان معادل فکر می کنم از که زمانی که پرچم سبز کلیک، 388 00:17:59,450 --> 00:18:01,080 مسدود در ابتدا. 389 00:18:01,080 --> 00:18:05,280 به طوری که همه ما را در اینجا است، هنگامی که پرچم سبز کلیک، چاپ، و یا می گویند، 390 00:18:05,280 --> 00:18:06,700 سلام دنیا. 391 00:18:06,700 --> 00:18:11,210 >> اما اجازه دهید یک حدس است، در حال حاضر، در چه اولین بار از این، خط محرمانه تر، است. 392 00:18:11,210 --> 00:18:15,100 شارپ شامل، باز زاویه دار براکت، استاندارد I / O نقطه ساعت، 393 00:18:15,100 --> 00:18:17,320 بستن براکت زاویه دار. 394 00:18:17,320 --> 00:18:19,850 چه می شود که شاید انجام این کار، به خصوص اگر شما برنامه ریزی به 395 00:18:19,850 --> 00:18:21,390 قبل از در برخی از زبان دیگر. 396 00:18:21,390 --> 00:18:21,890 آره؟ 397 00:18:21,890 --> 00:18:22,765 >> مخاطبان: [نامفهوم] 398 00:18:22,765 --> 00:18:25,095 399 00:18:25,095 --> 00:18:25,970 DAVID J. مالان: آره. 400 00:18:25,970 --> 00:18:26,470 دقیقا. 401 00:18:26,470 --> 00:18:29,455 پس این است که به شما دسترسی به یک کتابخانه، پس به صحبت، از توابع. 402 00:18:29,455 --> 00:18:31,830 و یک کتابخانه از توابع است توابع است که شخص دیگری 403 00:18:31,830 --> 00:18:34,406 نوشت، یا به تازگی و یا مدت ها قبل، به طوری که شما 404 00:18:34,406 --> 00:18:35,780 لازم نیست که به چرخ را دوباره اختراع. 405 00:18:35,780 --> 00:18:39,020 به عنوان مثال، ما نمی باید بدانید که، در سال 2015، 406 00:18:39,020 --> 00:18:42,280 چگونه به نوشتن کد قرار می دهد که یک شخصیت بر روی صفحه نمایش است. 407 00:18:42,280 --> 00:18:44,820 شخص دیگری نمیفهمد که با تابع printf 408 00:18:44,820 --> 00:18:47,280 به طوری که من می توانم از انتزاعی مرتب سازی بر اساس دور از آن، و یا لایه 409 00:18:47,280 --> 00:18:49,350 در بالای خود و یا او کد، و در حال حاضر فقط 410 00:18:49,350 --> 00:18:52,760 برای مسلم است که هر برنامه من ارسال می توانید چیزی را به روی صفحه نمایش چاپ. 411 00:18:52,760 --> 00:18:58,150 بنابراین این خط اول وجود دارد در گام اول شامل به اصطلاح فایل هدر 412 00:18:58,150 --> 00:18:59,980 برای کتابخانه استاندارد. 413 00:18:59,980 --> 00:19:02,630 بنابراین مشاهده می کنید، این زبان در که ما در حال حاضر مشغول به کار 414 00:19:02,630 --> 00:19:05,010 حال یک کتابخانه استاندارد با بسیاری از توابع. 415 00:19:05,010 --> 00:19:07,240 تابع () printf یکی از آنها است، و که اولین خط از کد 416 00:19:07,240 --> 00:19:10,040 معنی من دسترسی به آن دسته از توابع، به طوری که من 417 00:19:10,040 --> 00:19:12,300 لازم نیست برای دوباره اختراع که چرخ. 418 00:19:12,300 --> 00:19:15,940 >> حالا اجازه دهید به پنجره پایین بروید و دقیقا آنچه که من قبل از انجام. 419 00:19:15,940 --> 00:19:18,520 یک لحظه پیش، زمانی که من صیقل دادن آثاری از طریق کد، 420 00:19:18,520 --> 00:19:24,540 تایپ کردن با آن را برای اولین بار، من به سرعت تایپ، را خوش آمدید. 421 00:19:24,540 --> 00:19:28,250 چه بود که همه چیز در مورد شما را حدس بزنید؟ 422 00:19:28,250 --> 00:19:29,150 چه می کردم؟ 423 00:19:29,150 --> 00:19:29,649 آره؟ 424 00:19:29,649 --> 00:19:31,810 425 00:19:31,810 --> 00:19:32,310 بیخیال. 426 00:19:32,310 --> 00:19:32,970 مشکلی نیست. 427 00:19:32,970 --> 00:19:33,492 آره. 428 00:19:33,492 --> 00:19:34,450 مخاطبان: کامپایل کردن آن. 429 00:19:34,450 --> 00:19:34,700 DAVID J. مالان: آره. 430 00:19:34,700 --> 00:19:35,770 این فقط تدوین شد. 431 00:19:35,770 --> 00:19:36,270 درست؟ 432 00:19:36,270 --> 00:19:39,280 حتی اگر این کاملا نا آشنا به شما، آن را بسیار انگلیسی مانند است. 433 00:19:39,280 --> 00:19:41,155 این قطعا صفر نیست و آنهایی که، پس من هنوز هم 434 00:19:41,155 --> 00:19:44,220 نیاز به آن اجرا را از طریق به اصطلاح برنامه، یک کامپایلر، که رفتن 435 00:19:44,220 --> 00:19:46,060 به آن را به عنوان ورودی و خروجی. 436 00:19:46,060 --> 00:19:48,270 و حداقل در حال حاضر، در این محیط لینوکس، 437 00:19:48,270 --> 00:19:51,030 اما این است که شرط لازم نیست، این تنها جایی که ما آغاز خواهد شد، 438 00:19:51,030 --> 00:19:53,960 شما به طور کلی با تعامل سیستم های کامپیوتری مثل این 439 00:19:53,960 --> 00:19:55,770 توسط یک خط دستور به اصطلاح. 440 00:19:55,770 --> 00:19:57,790 بنابراین با یک پلک زدن سریع و صفحه کلید خود را، 441 00:19:57,790 --> 00:20:01,630 و نه آنقدر ماوس خود را، و نه بنابراین ویندوز بسیار و آیکون ها و منوها، 442 00:20:01,630 --> 00:20:02,980 و نه همه چیز متنی است. 443 00:20:02,980 --> 00:20:06,180 و حتی اگر این احساس می کند، در ابتدا نگاه، شاید، مثل یک گام به عقب، 444 00:20:06,180 --> 00:20:08,437 این در واقع یک بسیار بیشتر راه های قدرتمند و رسا 445 00:20:08,437 --> 00:20:10,270 از کنترل یک کامپیوتر به خصوص که شما، 446 00:20:10,270 --> 00:20:12,950 خودتان، تر شده راحت از کمتر است. 447 00:20:12,950 --> 00:20:16,790 آن را به شما اجازه می دهد برای انجام بسیاری همه چیز بیش از آنچه مایکروسافت 448 00:20:16,790 --> 00:20:20,390 و یا اپل اجازه می دهد تا شما را به انجام با سیستم عامل گرافیکی خود را. 449 00:20:20,390 --> 00:20:23,270 >> بنابراین، هنگامی که من ضربه را وارد، در حال حاضر، هیچ چیز این زمان اتفاق می افتد 450 00:20:23,270 --> 00:20:25,960 چون ظاهرا برنامه سلام است که تا تاریخ. 451 00:20:25,960 --> 00:20:28,250 و آنچه از دستور بود من بعد از آن زد؟ 452 00:20:28,250 --> 00:20:32,370 نقطه بریده بریده سلام، و سلام جهان. 453 00:20:32,370 --> 00:20:34,350 حالا اجازه دهید یک گام تماس برای فقط یک لحظه. 454 00:20:34,350 --> 00:20:39,510 به نظر می رسد که فقط یک سلام راه ساده شده ای از کامپایل یک برنامه. 455 00:20:39,510 --> 00:20:41,670 اجازه دهید فقط معرفی یک تکه از اصطلاحات مخصوص یک صنف، 456 00:20:41,670 --> 00:20:43,470 اما پس از آن حرکت به دور از آن، از آن نمی 457 00:20:43,470 --> 00:20:46,640 که جالب برای اهداف امروز است. 458 00:20:46,640 --> 00:20:51,000 کامپایلر ما قصد داریم به شروع به استفاده از است که به نام صدای جرنگ جرنگ، برای زبان C. 459 00:20:51,000 --> 00:20:54,280 و این یک برنامه ای است که فقط اجرا است ما در خط فرمان وجود دارد انجام داد. 460 00:20:54,280 --> 00:20:56,580 و بنابراین اگر من می خواهم کامپایل برنامه که من 461 00:20:56,580 --> 00:21:00,790 در یک فایل به نام سلام نقطه نوشته شده است ج، من به معنای واقعی کلمه فقط نوع صدای جرنگ جرنگ سلام C 462 00:21:00,790 --> 00:21:02,100 را وارد کنید. 463 00:21:02,100 --> 00:21:04,880 >> جالب این است، به دلایل تاریخی، 464 00:21:04,880 --> 00:21:07,750 اگر من مشخص نیست نام برنامه 465 00:21:07,750 --> 00:21:11,690 که من به خروجی می خواهید، اگر من نمی مشخص کردن یک نام فایل را برای آن صفر 466 00:21:11,690 --> 00:21:14,990 و آنهایی که، بسیار عجیب و غریب سال کنوانسیون به تصویب رسید پیش 467 00:21:14,990 --> 00:21:17,390 جایی که حس نوع پاسخ خوب در آن زمان، 468 00:21:17,390 --> 00:21:21,650 خوب اجازه دهید فقط خودسرانه تماس برنامه برای اولین بار ما یک نقطه کامپایل است. 469 00:21:21,650 --> 00:21:22,900 می آید برای اولین بار در حروف الفبا. 470 00:21:22,900 --> 00:21:23,920 خارج، آن را به خروجی است. 471 00:21:23,920 --> 00:21:26,210 بنابراین ما را به برنامه پاسخ به طور پیش فرض یک نقطه است. 472 00:21:26,210 --> 00:21:29,550 و این خوب است چرا که اگر من می خواهم اجرای برنامه در این متن بر اساس 473 00:21:29,550 --> 00:21:33,590 محیط زیست، من فقط نوع نقطه اسلش یک نقطه خارج را وارد کنید. 474 00:21:33,590 --> 00:21:35,250 و آن را دقیقا مانند قبل اجرا. 475 00:21:35,250 --> 00:21:36,880 بنابراین اجازه دهید که واقعی سریع می باشد. 476 00:21:36,880 --> 00:21:40,370 >> بنابراین اگر من به بازگشت به من کد منبع در CS50 IDE، 477 00:21:40,370 --> 00:21:47,860 و من به جای این کار، صدای جرنگ جرنگ سلام تخت C را وارد کنید، متوجه چیزی به نظر می رسد اتفاق می افتد، 478 00:21:47,860 --> 00:21:49,790 اما تقریبا همیشه در این محیط لینوکس، 479 00:21:49,790 --> 00:21:53,310 به نظر می رسد که هیچ چیز بد اتفاق می افتد، که به معنی چیزی خوب در واقع اتفاق افتاده است. 480 00:21:53,310 --> 00:21:56,270 اگر شما یک خطای دید نیست پیام، همه احتمالا به خوبی. 481 00:21:56,270 --> 00:22:01,930 و در واقع، اگر من در حال حاضر انجام نقطه اسلش یک نقطه خارج وارد کنید، من همان برنامه من اجرا شود. 482 00:22:01,930 --> 00:22:04,610 من هنوز هم برنامه سلام از پیش از آن به دلیل واقع، آن را 483 00:22:04,610 --> 00:22:07,430 رفتن به خیلی بهتر فقط تایپ را جای به خاطر سپردن 484 00:22:07,430 --> 00:22:10,240 این ورد دستورات، اما اجازه دهید ببینیم که چگونه ما 485 00:22:10,240 --> 00:22:12,890 ممکن است بر این وجود را بهبود بخشد،. 486 00:22:12,890 --> 00:22:15,340 >> بنابراین، این دستور است به کامپایل کد. 487 00:22:15,340 --> 00:22:19,100 این دستور برای اجرا است کد کامپایل شده پس از آن. 488 00:22:19,100 --> 00:22:20,546 چگونه می توان یک نام فایل مشخص کنید؟ 489 00:22:20,546 --> 00:22:22,670 خوب اجازه دهید فقط معرفی یک قطعه از اصطلاحات مخصوص یک صنف. 490 00:22:22,670 --> 00:22:24,461 هنگامی که شما در این هستید متن محیط مبتنی بر، 491 00:22:24,461 --> 00:22:27,400 شما در حال رفتن به خواهید برای مشخص همه چیز به نام آرگومان های خط فرمان. 492 00:22:27,400 --> 00:22:31,380 که فقط یک راه فانتزی گفتن است، به عبارت دیگر در اعلان که 493 00:22:31,380 --> 00:22:33,860 نیشگون گرفتن و کشیدن رفتار هر برنامه شما در حال اجرا است. 494 00:22:33,860 --> 00:22:37,320 بنابراین به طور خاص برنامه من در حال اجرا، با تایپ کردن نام صدای جرنگ جرنگ، 495 00:22:37,320 --> 00:22:38,504 برنامه به نام صدای جرنگ جرنگ است. 496 00:22:38,504 --> 00:22:40,920 پس این است که یا مدرسه قدیمی معادل دو بار کلیک 497 00:22:40,920 --> 00:22:42,860 در مایکروسافت ورد یا آیکون برخی از برنامه است. 498 00:22:42,860 --> 00:22:46,360 من فقط به جای تایپ کردن نام آن، اما در این نسخه از دستور، 499 00:22:46,360 --> 00:22:51,334 من پس از آن فضای O فاصله دارند سلام سلام فضای نقطه C. 500 00:22:51,334 --> 00:22:53,500 بنابراین حتی اگر شما هرگز بازی در این جهان و جهان، 501 00:22:53,500 --> 00:22:58,160 فقط یک حدس را چه O می کند فاصله سلام انجام دهد؟ 502 00:22:58,160 --> 00:23:00,620 و یا چه آن صدای جرنگ جرنگ را به انجام؟ 503 00:23:00,620 --> 00:23:01,386 آره. 504 00:23:01,386 --> 00:23:02,455 >> مخاطبان: [نامفهوم] 505 00:23:02,455 --> 00:23:03,330 DAVID J. مالان: آره. 506 00:23:03,330 --> 00:23:08,614 این فقط مجموعه خروجی فایل را به سلام به جای هر نشانه یک نقطه است. 507 00:23:08,614 --> 00:23:09,780 و، در واقع، اجازه دهید این را امتحان کنید. 508 00:23:09,780 --> 00:23:14,250 بنابراین اگر من در حال حاضر انجام، اولین اجازه دهید این کار، R متر خوش آمدید. 509 00:23:14,250 --> 00:23:15,590 که حذف شده است. 510 00:23:15,590 --> 00:23:18,450 و آن را می گویند حذف فایل به طور منظم سلام، که 511 00:23:18,450 --> 00:23:22,210 است بی ارزش محرمانه، اما آن را فقط یعنی آیا شما می خواهید فایل را حذف کنید، 512 00:23:22,210 --> 00:23:23,230 و من Y برای بله نوع. 513 00:23:23,230 --> 00:23:27,340 و متوجه، اگر شما در بالای اجمالی شد سمت چپ، آن را از آن بالا ناپدید می شوند. 514 00:23:27,340 --> 00:23:32,180 اجازه دهید من در حال حاضر انجام O فاصله صدای جرنگ جرنگ، و من قصد دارم به جلو بروید و سلام، 515 00:23:32,180 --> 00:23:34,890 در همه کلاه، سلام نقطه C. 516 00:23:34,890 --> 00:23:37,775 در حال حاضر، اگر من بریده بریده نقطه سلام، آنچه که شما انتظار می کنید؟ 517 00:23:37,775 --> 00:23:41,240 518 00:23:41,240 --> 00:23:42,430 >> شاید آن حروف حساس است. 519 00:23:42,430 --> 00:23:43,070 شاید این طور نیست. 520 00:23:43,070 --> 00:23:44,030 بیایید ببینید. 521 00:23:44,030 --> 00:23:45,230 بدون چنین فایل یا دایرکتوری. 522 00:23:45,230 --> 00:23:47,438 و ما به نوعی می توانید تقلب شده توسط فقط به دنبال در بالا سمت چپ. 523 00:23:47,438 --> 00:23:49,630 چیزی که من اصلا به صرفه جویی در برنامه به عنوان؟ 524 00:23:49,630 --> 00:23:51,070 همه کلاه سلام. 525 00:23:51,070 --> 00:23:53,020 پس در واقع، که رفتن برای ایجاد یک تفاوت. 526 00:23:53,020 --> 00:23:54,540 بنابراین در حال حاضر سلام جهان است. 527 00:23:54,540 --> 00:23:56,969 در حال حاضر این است که همه چیز خوب است و خوب، و همه بسیار ذهن بیحس کننده، 528 00:23:56,969 --> 00:23:59,760 به نوعی مطلع گرفتار در این جزئیات، اما درک آنها 529 00:23:59,760 --> 00:24:00,500 خوب است. 530 00:24:00,500 --> 00:24:02,675 >> تایپ کردن به طور فزاینده این ورد طولانی 531 00:24:02,675 --> 00:24:05,980 رفتن به ویژه شود سرگرم کننده، به طوری که مردم در جهان 532 00:24:05,980 --> 00:24:08,260 اختراع یک برنامه دیگر، چند سال پیش، به نام 533 00:24:08,260 --> 00:24:12,190 را، که کاملا به سادگی اجازه می دهد تا شما را به نوع ساخت، 534 00:24:12,190 --> 00:24:14,530 نام برنامه می خواهید مطمئن، و 535 00:24:14,530 --> 00:24:18,580 هوشمند است که در آن نگاه خواهد در پوشه فعلی، با نام مستعار دایرکتوری، 536 00:24:18,580 --> 00:24:21,440 و اگر شما یک فایل به نام سلام نقطه C، 537 00:24:21,440 --> 00:24:25,800 که فایل آن را کامپایل خواهد شد برای شما به یک برنامه به نام سلام. 538 00:24:25,800 --> 00:24:29,950 پس از آن یک راه بسیار ساده است از انجام دستورات بیشتر مرموز 539 00:24:29,950 --> 00:24:30,800 که ما گذشته انجام داد. 540 00:24:30,800 --> 00:24:34,080 و ما از پیش تنظیم شده CS50 IDE به دانستن 541 00:24:34,080 --> 00:24:38,560 که آن را باید O فاصله و تعدادی از انجام پرچم دیگر، و یا آرگومان های خط فرمان، 542 00:24:38,560 --> 00:24:40,670 که ما قبل از اینکه طولانی را ببینید. 543 00:24:40,670 --> 00:24:43,700 >> اما اجازه دهید در حال حاضر در واقع انجام چیزی جالب تر است. 544 00:24:43,700 --> 00:24:46,950 فقط تایپ کردن سلام جهان همه زمان است که همه قانع کننده نیست. 545 00:24:46,950 --> 00:24:52,280 بنابراین، اجازه دهید به جلو و تغییر این برنامه و می گویند، سلام دیوید. 546 00:24:52,280 --> 00:24:54,120 در حال حاضر من رفتن به پایین صفحه بروید. 547 00:24:54,120 --> 00:24:57,360 من قصد دارم به جلو بروید و را خوش آمدید. 548 00:24:57,360 --> 00:25:00,652 و دوباره در حال حاضر شما در حال دیدن را به شما نشان دیگر 549 00:25:00,652 --> 00:25:03,360 دنباله ای از دستورات است که آن را چرا که ما به انجام پیش پیکربندی شده 550 00:25:03,360 --> 00:25:05,200 آن را که راه، اما ما نیاز برای نگران نباشید 551 00:25:05,200 --> 00:25:10,735 آنچه در آن انجام دیگر از آن است که تدوین نقطه اسلش سلام، سلام جهان است. 552 00:25:10,735 --> 00:25:14,969 553 00:25:14,969 --> 00:25:15,510 چی شده؟ 554 00:25:15,510 --> 00:25:16,177 آره. 555 00:25:16,177 --> 00:25:17,370 >> مخاطبان: [نامفهوم] 556 00:25:17,370 --> 00:25:18,203 >> DAVID J. مالان: بله. 557 00:25:18,203 --> 00:25:19,600 بنابراین، اشتباه noobie. 558 00:25:19,600 --> 00:25:22,394 من متوجه این فوق العاده ظریف، اما ستاره در اینجا، در تب، 559 00:25:22,394 --> 00:25:25,060 فقط بدان معناست که شما آن را ذخیره نمی شود، و مرورگرهای و دیگر برنامه های 560 00:25:25,060 --> 00:25:25,930 انجام این کار گاهی اوقات. 561 00:25:25,930 --> 00:25:27,939 بنابراین کنترل ها و یا دستور بازدید کنندگان باید آن را ذخیره کنید. 562 00:25:27,939 --> 00:25:29,730 حالا من به پیش بروید و دوباره اجرای برنامه است. 563 00:25:29,730 --> 00:25:33,360 564 00:25:33,360 --> 00:25:34,260 مجددا کامپایل. 565 00:25:34,260 --> 00:25:36,050 راست، پس از آن یک فرایند چند مرحله ای است. 566 00:25:36,050 --> 00:25:39,400 هیچ یک از آن است به ویژه پیچیده، اما هر زمان که ما تغییر فایل، 567 00:25:39,400 --> 00:25:43,450 ما نیاز به تغییر در نتیجه صفر و آنهایی که، و بریده بریده نقطه خوش آمدید. 568 00:25:43,450 --> 00:25:43,950 وای. 569 00:25:43,950 --> 00:25:46,450 پس این است که بسیار underwhelming که ما فقط چاپ این. 570 00:25:46,450 --> 00:25:48,360 بیایید همه چیز را کمی بیشتر پویا، در حال حاضر. 571 00:25:48,360 --> 00:25:52,280 >> خب معلوم است، که دوست ابتدا، C متغیرهای پشتیبانی می کند. 572 00:25:52,280 --> 00:25:54,790 و معلوم است اگر شما می خواهید به یک متغیر است که فروشگاه ها، 573 00:25:54,790 --> 00:25:57,300 یک عدد مانند ما نمی به طور معمول با خراش داد، 574 00:25:57,300 --> 00:26:01,300 اما مانند یک کلمه یا یک عبارت یا یک نام، شما 575 00:26:01,300 --> 00:26:04,837 می توانید یک متغیر مشخص به از نوع رشته. 576 00:26:04,837 --> 00:26:06,670 بنابراین ما بیشتر از دید این در یک لحظه، 577 00:26:06,670 --> 00:26:09,090 اما معلوم است که C، و بسیاری از زبان مانند آن، 578 00:26:09,090 --> 00:26:11,240 انواع بسیار خاص از متغیرهای. 579 00:26:11,240 --> 00:26:13,810 آن را نه تنها مانند جبر، که در آن شما یک X، یک y و z را دریافت کنید 580 00:26:13,810 --> 00:26:16,940 و کسانی که فقط همیشه اعداد، در یک زبان برنامه نویسی 581 00:26:16,940 --> 00:26:20,030 شما می توانید شماره ذخیره، شما می توانید ذخیره شخصیت های منحصر به فرد، 582 00:26:20,030 --> 00:26:24,619 شما می توانید از کلمات کل فروشگاه، شما می توانید ذخیره تصاویر کل، فایل های طیف صدا، 583 00:26:24,619 --> 00:26:25,160 و مانند آن. 584 00:26:25,160 --> 00:26:28,362 بنابراین ما نیاز به مشخص کنید که چه نوع متغیر است. 585 00:26:28,362 --> 00:26:31,570 و طبق قرارداد من قصد دارم به پاسخ من متغیر فقط به خاطر اینکه موجز، 586 00:26:31,570 --> 00:26:33,510 و برای رشته است. 587 00:26:33,510 --> 00:26:36,400 >> و سپس من قصد دارم برای ذخیره در داخل این متغیر، 588 00:26:36,400 --> 00:26:39,570 فقط با خراش دوست وقتی که من استفاده از بلوک مجموعه، 589 00:26:39,570 --> 00:26:41,950 من قصد دارم به استفاده از عملگر انتساب در C، 590 00:26:41,950 --> 00:26:45,290 که به سادگی به اندازه کافی است، مساوی است نشانه است، اما از علامت مساوی کند این است. 591 00:26:45,290 --> 00:26:53,220 آن حرکت می کند چیزی از حق به در سمت چپ از بیان است. 592 00:26:53,220 --> 00:26:57,170 پس آنچه که من انجام داده اند، در روشن شود خط پنج است، من یک متغیر اعلام کرده ام. 593 00:26:57,170 --> 00:27:01,284 من کامپیوتر را گفته ام، من را حافظه برای یک متغیر، پاسخ آن را، 594 00:27:01,284 --> 00:27:03,950 و می دانم که در پیش است که من قصد دارم به قرار دادن یک رشته در آن است. 595 00:27:03,950 --> 00:27:05,950 و یک رشته فقط یک دنباله ای از شخصیت. 596 00:27:05,950 --> 00:27:09,190 این یک کلمه یا یک عبارت یا پاراگراف، اما یک رشته از کاراکتر است. 597 00:27:09,190 --> 00:27:10,610 این اعداد نیست. 598 00:27:10,610 --> 00:27:13,800 چه رشته من برای رفتن به قرار دادن به آن متغیر؟ 599 00:27:13,800 --> 00:27:16,185 خب، ظاهرا نقل قول تمام کردن، "هانا". 600 00:27:16,185 --> 00:27:17,810 در حال حاضر متوجه الگوی که حال ظهور است. 601 00:27:17,810 --> 00:27:19,260 یک عبارت دست چپ وجود دارد. 602 00:27:19,260 --> 00:27:21,810 یک عبارت دست راست وجود دارد، از هم جدا شده علامت مساوی. 603 00:27:21,810 --> 00:27:24,390 و فقط یک حدس است، اگر نا آشنا با این حال، 604 00:27:24,390 --> 00:27:27,430 با نقطه و ویرگول در حال انجام است. 605 00:27:27,430 --> 00:27:28,865 چه آن را احتمالا برای ما انجام می دهند؟ 606 00:27:28,865 --> 00:27:29,365 آره؟ 607 00:27:29,365 --> 00:27:29,840 >> مخاطبان: [نامفهوم] 608 00:27:29,840 --> 00:27:29,980 >> DAVID J. مالان: آره. 609 00:27:29,980 --> 00:27:31,170 این فقط فسخ خط. 610 00:27:31,170 --> 00:27:31,669 درست؟ 611 00:27:31,669 --> 00:27:34,260 کامپیوتر می خواهید به صراحت می شود گفت: به معنای واقعی کلمه، چه باید بکنید. 612 00:27:34,260 --> 00:27:36,343 مانند کره بادام زمینی و ژله ساندویچ مثال، 613 00:27:36,343 --> 00:27:39,360 اگر شما مشخص نیست دقیقا آنچه شما قصد، 614 00:27:39,360 --> 00:27:42,190 ممکن است آن را به قضاوت یا خطا است. 615 00:27:42,190 --> 00:27:44,890 نقطه و ویرگول بدین معنی است، که آن را برای این دستور. 616 00:27:44,890 --> 00:27:48,310 آن را در حال فوق العاده دقیق، و آن را یک چیز بسیار آسان برای ترک کردن. 617 00:27:48,310 --> 00:27:52,240 بنابراین در حال حاضر این برنامه به نظر نمی رسد است رفتار متفاوت تا زمانی که من 618 00:27:52,240 --> 00:27:53,500 آن را پویا تر. 619 00:27:53,500 --> 00:27:57,107 بنابراین به جای سخت می تواند خود من نام، اجازه دهید من یک مقدار حفره یا سوراخ قرار داده است. 620 00:27:57,107 --> 00:28:00,190 و معلوم است که، و من می دانم این از پس از خواندن اسناد و مدارک، 621 00:28:00,190 --> 00:28:04,080 و با استفاده از تابع برای سال ها، که تابع () printf به پویا طراحی شده است. 622 00:28:04,080 --> 00:28:07,510 شما لازم نیست بدانید که در پیش چه کلمات می خواهید به در آن قرار داده. 623 00:28:07,510 --> 00:28:11,290 شما می توانید به جای یک حفره یا سوراخ، مانند درصد، که 624 00:28:11,290 --> 00:28:15,500 است که که به کامپیوتر، قرار دادن یک رشته در اینجا. 625 00:28:15,500 --> 00:28:17,740 >> که رشته ما خواهید برای قرار دادن وجود دارد؟ 626 00:28:17,740 --> 00:28:22,430 اراده می رسد که بین این پرانتز، که به یاد داشته باشید، مشخص 627 00:28:22,430 --> 00:28:28,020 ورودی به یک تابع، اگر شما کاما از هم لیستی از چیزهایی که از هم جدا در اینجا، 628 00:28:28,020 --> 00:28:31,790 ما در واقع در چند عبور ورودی به یک تابع. 629 00:28:31,790 --> 00:28:33,901 بنابراین درست مثل برخی از خراش بلوک، شما ممکن است 630 00:28:33,901 --> 00:28:36,150 با آنها را برای بازی پروژه های خود را هنوز یا در همه، 631 00:28:36,150 --> 00:28:38,250 برخی از بلوک های خراش دو ورودی. 632 00:28:38,250 --> 00:28:41,220 دو جعبه سفید شما می توانید تایپ اعداد یا کلمات را به. 633 00:28:41,220 --> 00:28:45,210 بنابراین به اختصاص C توابع مانند تابع () printf است که می تواند دو ورودی است. 634 00:28:45,210 --> 00:28:48,050 و دوباره، این کاما از هم است آنها را جدا. 635 00:28:48,050 --> 00:28:51,070 بنابراین در انگلیسی، دوباره حتی اگر شما قبل از برنامه ریزی هرگز، 636 00:28:51,070 --> 00:28:55,320 توسط تابع () printf منطق که یک تابع باشد، دو ورودی، طول می کشد که یکی از آنها 637 00:28:55,320 --> 00:28:58,810 یک حفره یا سوراخ، آنچه را که شما امیدواریم که است تابع () printf است که به انجام این ورودی؟ 638 00:28:58,810 --> 00:29:01,470 639 00:29:01,470 --> 00:29:03,220 آن را به گفتن سلام هانا، امیدوارم. 640 00:29:03,220 --> 00:29:05,274 بنابراین برای این که ما باید آن را ذخیره کنید را انجام دهید. 641 00:29:05,274 --> 00:29:06,190 من قصد دارم به زوم کردن. 642 00:29:06,190 --> 00:29:10,701 من قصد دارم برای رفتن به پایین در اینجا و می گویند، را خوش آمدید وارد کنید. 643 00:29:10,701 --> 00:29:11,200 آه. 644 00:29:11,200 --> 00:29:14,830 چیزی اشتباه است، و در واقع این است که کاملا خسته کننده باشد. 645 00:29:14,830 --> 00:29:18,400 من شش خط کد و مانند 12 خط از خطا است. 646 00:29:18,400 --> 00:29:22,120 بنابراین، نگاه به جلو به این. 647 00:29:22,120 --> 00:29:24,260 پس چه اتفاقی افتاده؟ 648 00:29:24,260 --> 00:29:27,370 بنابراین بهترین قاعده کلی در اینجا، ویژه هنگامی که شما در حال شروع کردن، 649 00:29:27,370 --> 00:29:29,370 انجام شده توسط پریشان نیست مسائل در پایین. 650 00:29:29,370 --> 00:29:31,220 در واقع، من بسیار به عمد فقط میگردین بالا 651 00:29:31,220 --> 00:29:33,930 چرا که اغلب، یک کامپیوتر است نه همه که روشن از یک دستگاه. 652 00:29:33,930 --> 00:29:35,054 آن را به اشتباه گرفته شود. 653 00:29:35,054 --> 00:29:37,220 اگر یک چیز را می بیند که آن را درک نمی، 654 00:29:37,220 --> 00:29:40,030 ممکن اشتباه دیگر خط کد به عنوان نادرست، 655 00:29:40,030 --> 00:29:41,649 حتی اگر آنها کاملا خوب است. 656 00:29:41,649 --> 00:29:43,940 بنابراین شما همیشه می خواهید برای کار بالا به پایین از طریق خطا است. 657 00:29:43,940 --> 00:29:47,850 و مسلما این است فوق العاده در حال حاضر محرمانه. 658 00:29:47,850 --> 00:29:50,830 >> خطا، استفاده از اعلام نشده رشته شناسه. 659 00:29:50,830 --> 00:29:52,130 آیا منظور من استاندارد در؟ 660 00:29:52,130 --> 00:29:53,720 نه، من به معنای رشته. 661 00:29:53,720 --> 00:29:55,830 و آن را با اشاره در، شاید آن یک اشتباه تایپی است. 662 00:29:55,830 --> 00:30:00,570 مرتب کردن بر اساس مانند، غلط گیر املایی در یک راه بسیار نخبه، اما دلیل در اینجا، 663 00:30:00,570 --> 00:30:02,840 و شما این را می دانند فقط با عمل، 664 00:30:02,840 --> 00:30:06,390 که معلوم است که رشته در C. وجود ندارد در واقع، C 665 00:30:06,390 --> 00:30:08,820 یک زبان به ویژه قدیمی است، و آن سطح بسیار پایین است، 666 00:30:08,820 --> 00:30:11,361 و آن را بسیاری از ویژگی های نه که شما ممکن است بزرگ شده اند 667 00:30:11,361 --> 00:30:14,620 با اگر شما، در واقع، برنامه ریزی در جاوا، به عنوان برخی از شما داشته باشد، 668 00:30:14,620 --> 00:30:16,980 اما شما می توانید آن را از چیزهای جدید یاد می دهد. 669 00:30:16,980 --> 00:30:20,900 و در واقع، ما این CS50 انجام داده اند، حتی اگر در پایان ترم، 670 00:30:20,900 --> 00:30:23,512 همه از این چرخ آموزش خواهد در نظر گرفته شده است، 671 00:30:23,512 --> 00:30:25,220 چیزی که ما در این کار را انجام دو هفته اول 672 00:30:25,220 --> 00:30:29,830 در ابتدا ما نیز شما از جمله CS50 نقطه ساعت. 673 00:30:29,830 --> 00:30:31,230 که یک فایل هدر است. 674 00:30:31,230 --> 00:30:32,440 بیشتر در مورد که در آینده است. 675 00:30:32,440 --> 00:30:36,430 >> این یک فایل که حاوی توابع است که ما برای شما نوشته شده است. 676 00:30:36,430 --> 00:30:39,180 و در میان آن دسته از توابع است توابع برای گرفتن ورودی 677 00:30:39,180 --> 00:30:43,520 از کاربر، مانند رشته و اعداد و اعداد حقیقی، و بیشتر. 678 00:30:43,520 --> 00:30:45,550 اما آن را نیز چند کلید های میانبر. 679 00:30:45,550 --> 00:30:48,200 این یک Boolean به عنوان نوع داده تعریف می کند. 680 00:30:48,200 --> 00:30:50,340 C می کند درست یا غلط ندارد. 681 00:30:50,340 --> 00:30:53,880 اما ما می توانیم آن مفهوم را درست یا غلط از طریق این کتابخانه است. 682 00:30:53,880 --> 00:30:57,670 و آن را نیز به یک رشته نیست ساخته شده در تا زمانی که ما شامل این خط. 683 00:30:57,670 --> 00:31:01,090 بنابراین این خط از کد می گوید کامپایلر، هی، صدای جرنگ جرنگ، نگاه 684 00:31:01,090 --> 00:31:03,570 در این فایل برای یک کل دسته از کد که CS50 685 00:31:03,570 --> 00:31:06,330 است به طوری که نوشته شده است هر کسی با استفاده از این فایل 686 00:31:06,330 --> 00:31:09,330 می توانید برای اعطا به ویژگی های آنها اضافه شده است. 687 00:31:09,330 --> 00:31:11,220 >> بنابراین در حال حاضر من جلو بروید و روشن روی صفحه نمایش، 688 00:31:11,220 --> 00:31:14,178 و اگر کنجکاو من فقط گفت کنترل L در هر زمان به پاک کردن صفحه نمایش، 689 00:31:14,178 --> 00:31:15,500 یا شما می توانید روشن کنید. 690 00:31:15,500 --> 00:31:19,220 من فقط رفتن به جلو بروید در حال حاضر و نوع را خوش آمدید، و همه خوب است. 691 00:31:19,220 --> 00:31:22,550 هنوز هم یک خروجی محرمانه، اما این یک پیام نادرست است. 692 00:31:22,550 --> 00:31:28,300 حال حاضر اگر من نقطه اسلش سلام، و به عنوان یک به کنار، بریده بریده نقطه به ترین ناآشنا است. 693 00:31:28,300 --> 00:31:30,430 این فقط بدان معناست، به معنی نقطه دایرکتوری جاری است. 694 00:31:30,430 --> 00:31:33,120 بنابراین اگر شما همیشه استفاده می شود داس، و یا لینوکس، یونیکس و یا 695 00:31:33,120 --> 00:31:35,410 شما ممکن است چیزی انجام داده اند مانند سی دی نقطه نقطه، که در آن 696 00:31:35,410 --> 00:31:39,220 نقطه نقطه به معنای رفتن به عقب در زمان، و یا به عقب، و یا بالاتر 697 00:31:39,220 --> 00:31:40,370 در دایرکتوری خود را. 698 00:31:40,370 --> 00:31:43,090 نقطه فقط بدان معناست نگاه در دایرکتوری جاری است. 699 00:31:43,090 --> 00:31:45,670 من می خواهم سلام، این است که در اینجا ببینید. 700 00:31:45,670 --> 00:31:47,750 و در واقع، در حال حاضر آن را می گوید: سلام هانا. 701 00:31:47,750 --> 00:31:51,120 و اگر آن را دوباره عوض کنم به ماریا، کامپایل مجدد 702 00:31:51,120 --> 00:31:55,650 آن سلام، نقطه اسلش را سلام، برنامه تغییر نگه می دارد. 703 00:31:55,650 --> 00:31:58,060 >> اما این است که هنوز برنامه خیلی احمقانه. 704 00:31:58,060 --> 00:32:00,972 اگر من می خواهم به کشتی این برنامه، یا آن را به یک دوست را، 705 00:32:00,972 --> 00:32:03,430 یا آن را به ماریا و یا هانا را برای آن موضوع، که خوب است. 706 00:32:03,430 --> 00:32:07,300 من می توانم آن برای هر دو آنها سفارشی، اما آن را هرگز برای رفتن به پویا. 707 00:32:07,300 --> 00:32:10,870 آنها می توانند آن یک بار آن را وارد تغییر نمی پایین را به آن صفر و آنهایی که. 708 00:32:10,870 --> 00:32:12,350 بنابراین آنچه که ما چیزی دقیق انجام داد؟ 709 00:32:12,350 --> 00:32:17,100 چه می شود اگر، به جای سخت و برنامه نویسی به برنامه نام این شخص، 710 00:32:17,100 --> 00:32:20,890 اگر ما فقط رشته در تقاضا؟ 711 00:32:20,890 --> 00:32:22,430 >> بنابراین به عبارت دیگر، به من اجازه انجام این کار. 712 00:32:22,430 --> 00:32:24,030 من قصد دارم به کامپایل مجدد این برنامه است. 713 00:32:24,030 --> 00:32:25,710 و به من اجازه زوم در پایین است. 714 00:32:25,710 --> 00:32:29,920 را خوش آمدید نقطه اسلش سلام. 715 00:32:29,920 --> 00:32:31,710 حال حاضر هیچ چیز اتفاق می افتد. 716 00:32:31,710 --> 00:32:35,860 می توانیم یک داوطلب سریع به چیزی اتفاق می افتد؟ 717 00:32:35,860 --> 00:32:36,360 بیا بالا. 718 00:32:36,360 --> 00:32:37,020 نام شما چیست؟ 719 00:32:37,020 --> 00:32:37,445 >> PANCHO: پانچو. 720 00:32:37,445 --> 00:32:38,361 >> DAVID J. مالان: پاچو؟ 721 00:32:38,361 --> 00:32:39,609 بیا بالا. 722 00:32:39,609 --> 00:32:42,150 هنگامی که شما تا اینجا، این است رفتن به بسیار underwhelming، 723 00:32:42,150 --> 00:32:44,060 اما آن را جالب تر از من تایپ کردن آن. 724 00:32:44,060 --> 00:32:49,007 اگر می خواهید پیش بروید و نوع خود را نام، من این برنامه فقط برای شما ساخته شده است. 725 00:32:49,007 --> 00:32:49,840 فقط نام خود را تایپ کنید. 726 00:32:49,840 --> 00:32:52,380 727 00:32:52,380 --> 00:32:53,900 را وارد کنید. 728 00:32:53,900 --> 00:32:54,489 فوق العاده است. 729 00:32:54,489 --> 00:32:55,780 همه حق است، از شما بسیار سپاسگزارم. 730 00:32:55,780 --> 00:32:56,708 >> PANCHO: از شما بسیار سپاسگزارم. 731 00:32:56,708 --> 00:32:57,636 >> DAVID J. مالان: OK. 732 00:32:57,636 --> 00:32:59,028 >> [تشویق حضار] 733 00:32:59,028 --> 00:33:00,884 734 00:33:00,884 --> 00:33:01,840 >> که بسیار مهربان بود. 735 00:33:01,840 --> 00:33:03,145 در اینجا شما بروید. 736 00:33:03,145 --> 00:33:03,770 آنچه ما انجام دهید؟ 737 00:33:03,770 --> 00:33:05,930 بنابراین ما در نهایت، حداقل، ساخته شده این برنامه پویا. 738 00:33:05,930 --> 00:33:08,400 در حال حاضر آن هنوز هم قطعا طراحی شده توسط underwhelming، 739 00:33:08,400 --> 00:33:11,480 اما ما در نهایت باید توانایی در حال حاضر به نوشتن کد در پیش است، بسیار 740 00:33:11,480 --> 00:33:13,770 مانند نویسندگان تابع () printf، و پس از آن به صورت پویا 741 00:33:13,770 --> 00:33:17,550 سازگاری در ورودی ما بر اساس دست، یا توسط برنامه نویس، 742 00:33:17,550 --> 00:33:20,610 و یا توسط انسان که در واقع تعامل با برنامه است. 743 00:33:20,610 --> 00:33:22,990 بنابراین اجازه دهید در واقع در حال حاضر سعی به انجام چند سازه دیگر 744 00:33:22,990 --> 00:33:26,625 ببینید و اگر ما می توانید برنامه را خود پیچیده تر است. 745 00:33:26,625 --> 00:33:29,250 بنابراین اجازه دهید پیش و به جای رفتن نوشتن این یکی، از ابتدا، 746 00:33:29,250 --> 00:33:31,540 من قصد دارم برای رفتن به امروز کد منبع، و همه از این 747 00:33:31,540 --> 00:33:34,290 موجود در دوره است وب سایت، و شما می توانید با کشیدن و رها آن 748 00:33:34,290 --> 00:33:36,590 به محیط زیست خود را آمده جمعه یک بار مشکل 749 00:33:36,590 --> 00:33:38,506 مجموعه 1 به شما می دهد دستورالعمل ها، یا شما می توانید 750 00:33:38,506 --> 00:33:41,200 این کار را در خط فرمان به خوب است، اما بیشتر به در آمده P مجموعه 1. 751 00:33:41,200 --> 00:33:44,940 >> بیایید ببینید که چه چیزی در این برنامه در اینجا به نام، جمع کننده نقطه C. 752 00:33:44,940 --> 00:33:47,970 در حال حاضر من در حال حاضر نظر داده اید آن است، اما تازه چه خبر؟ 753 00:33:47,970 --> 00:33:51,230 در نگاه اول، چه خط کد کاملا جدید؟ 754 00:33:51,230 --> 00:33:53,930 755 00:33:53,930 --> 00:33:56,780 احتمالا نه اساسا نا آشنا است. 756 00:33:56,780 --> 00:33:58,417 >> مخاطبان: [نامفهوم] 757 00:33:58,417 --> 00:34:00,250 DAVID J. مالان: آره، بنابراین اعضای هیات x برابر گرفتن N. 758 00:34:00,250 --> 00:34:03,760 ما هرگز دیده می شود هر یک از این قبل از، اما از نوع int است که احتمالا 759 00:34:03,760 --> 00:34:08,179 نماد برای چه نوع متغیر، [؟ از؟] یک عدد صحیح. 760 00:34:08,179 --> 00:34:09,040 بنابراین برای عدد صحیح بین المللی. 761 00:34:09,040 --> 00:34:11,420 این فقط بودن موجز. X فقط خودسرانه است. 762 00:34:11,420 --> 00:34:13,920 x و y و z هنوز بسیار مناسب برای اعداد، 763 00:34:13,920 --> 00:34:16,790 اما به طور کلی ما کلمات یک بار استفاده کنید برنامه های ما را دریافت کنید پیچیده تر است. 764 00:34:16,790 --> 00:34:18,940 مطلع INT، البته، بسیار شبیه به رشته GET، 765 00:34:18,940 --> 00:34:21,629 احتمالا برای به دست آوردن یک int از کاربر، 766 00:34:21,629 --> 00:34:23,670 و سپس ما در حال رفتن به همین کار را با y است. 767 00:34:23,670 --> 00:34:27,610 و ظاهرا، حتی اگر این آخرین خط، 24، به نظر می رسد پیچیده تر، 768 00:34:27,610 --> 00:34:32,679 آن را به می گویند که مجموع این و این چیزی است که دیگر است. 769 00:34:32,679 --> 00:34:35,840 >> و درصد متوجه من احتمالا نشان دهنده چه؟ 770 00:34:35,840 --> 00:34:38,190 چه نقشی درصد من ظاهرا خدمت می کنند؟ 771 00:34:38,190 --> 00:34:40,739 772 00:34:40,739 --> 00:34:41,719 این فقط متغیرهایی است. 773 00:34:41,719 --> 00:34:42,219 درست؟ 774 00:34:42,219 --> 00:34:45,149 درصد بازدید کنندگان برای رشته بود، درصد من است برای عدد صحیح است. 775 00:34:45,149 --> 00:34:47,690 رفتن وجود دارد به درصد F برای ارزش نقطه، شناور که 776 00:34:47,690 --> 00:34:49,273 فقط یک عدد با نقطه اعشار است. 777 00:34:49,273 --> 00:34:50,590 به عبارت دیگر، یک عدد حقیقی. 778 00:34:50,590 --> 00:34:55,270 بنابراین اجازه دهید در واقع این کامپایل برنامه واقعی سریع و انجام را جمع کننده. 779 00:34:55,270 --> 00:34:57,962 متأسفیم. 780 00:34:57,962 --> 00:34:58,670 فرصت خوب است. 781 00:34:58,670 --> 00:35:02,970 بنابراین اطلاع در اینجا، در تمام این مدت کاربر من نام برای این حساب jharvard است. 782 00:35:02,970 --> 00:35:06,620 من در CS50 IDE IDE50 هستم، با نام مستعار. 783 00:35:06,620 --> 00:35:11,030 و در حال حاضر به رنگ آبی در اینجا، اشاره است، اما از محیط زیست، از جایی که من هستم. 784 00:35:11,030 --> 00:35:16,050 و در واقع، اگر زوم من تا به بالا در اینجا، توجه که من یک IDE50 785 00:35:16,050 --> 00:35:19,490 و من می بینم این کلمه، اگر شما نوع به نوبه خود سر خود را به سمت، فضای کاری. 786 00:35:19,490 --> 00:35:23,890 به طور خلاصه، این واقعیت است که من از دیدن فضای کاری بریده بریده مد 787 00:35:23,890 --> 00:35:26,910 بدان معنی است که در این متن بر اساس محیط فرمان، 788 00:35:26,910 --> 00:35:32,300 من در معادل متن هستم این گرافیکی در اینجا پوشه است. 789 00:35:32,300 --> 00:35:35,730 بنابراین، هنگامی که من بریده بریده نقطه جمع کننده، آن را گفت هیچ قانون 790 00:35:35,730 --> 00:35:37,372 به هدف توقف جمع کننده. 791 00:35:37,372 --> 00:35:39,830 من نمی دانم که چه معناست، اما آن را بد برای برخی از این دلیل. 792 00:35:39,830 --> 00:35:43,310 بدون چنین فایل یا دایرکتوری حتی روشن تر است. 793 00:35:43,310 --> 00:35:45,670 که در آن است پس از آن؟ 794 00:35:45,670 --> 00:35:47,820 بر اساس جایی که من کلیک برای باز کردن فایل های قبلی است. 795 00:35:47,820 --> 00:35:49,442 که در آن ممکن است باشد؟ 796 00:35:49,442 --> 00:35:52,050 >> آن را احتمالا در منبع یکی W، برای چهارشنبه، 797 00:35:52,050 --> 00:35:53,960 و من می توانم آن را ببینید، در واقع، اگر من باز است که تا. 798 00:35:53,960 --> 00:35:57,220 جمع کننده است نقطه C وجود دارد، اما در این مبتنی بر متن محیط زیست، 799 00:35:57,220 --> 00:35:59,380 دوباره، من باید فوق العاده صریح است. 800 00:35:59,380 --> 00:36:03,950 اگر من می خواهم برای تغییر شاخه به منبع یک چهارشنبه، من نیاز به تایپ، 801 00:36:03,950 --> 00:36:07,210 سی دی منبع فضای یک چهارشنبه وارد و در حال حاضر 802 00:36:07,210 --> 00:36:09,810 تغییرات سریع به من یک نشانه بصری را که 803 00:36:09,810 --> 00:36:12,330 من، در واقع، در جاهای دیگر در محیط های من، 804 00:36:12,330 --> 00:36:15,710 اما در حال حاضر من می توانم را جمع کننده، به نظر می رسد به کار، 805 00:36:15,710 --> 00:36:18,190 نقطه اسلش جمع کننده، من یک عدد صحیح است. 806 00:36:18,190 --> 00:36:19,080 یکی. 807 00:36:19,080 --> 00:36:20,070 دو. 808 00:36:20,070 --> 00:36:21,630 مجموع یک و دو سه است. 809 00:36:21,630 --> 00:36:24,140 اما اگر من همکاری نمی کنند، بیایید ببینید که چه روی int کند. 810 00:36:24,140 --> 00:36:25,200 من یک عدد صحیح می دهد. 811 00:36:25,200 --> 00:36:26,590 شماره 812 00:36:26,590 --> 00:36:27,350 دوباره امتحان کنید. 813 00:36:27,350 --> 00:36:29,060 باشه. 814 00:36:29,060 --> 00:36:30,520 خوب است. 815 00:36:30,520 --> 00:36:32,130 50. 816 00:36:32,130 --> 00:36:32,680 50. 817 00:36:32,680 --> 00:36:33,010 خیلی خوب. 818 00:36:33,010 --> 00:36:34,055 پس از آن در نهایت همکاری می کند. 819 00:36:34,055 --> 00:36:36,430 و این برخی از قابلیت های که این توابع 820 00:36:36,430 --> 00:36:37,760 می توانید در برای شما ساخته شده است. 821 00:36:37,760 --> 00:36:43,330 >> بنابراین در داخل اجرای از روی int، چه برنامه نویسی 822 00:36:43,330 --> 00:36:47,990 ساخت از هفته گذشته است که احتمالا در وجود دارد را وادار این رفتار سعی مجدد، 823 00:36:47,990 --> 00:36:49,962 دوباره امتحان کنید، دوباره امتحان کنید؟ 824 00:36:49,962 --> 00:36:51,670 آره، احتمالا وجود دارد برخی از انواع حلقه. 825 00:36:51,670 --> 00:36:54,160 آن را به نحوی نگاه از بلوک های خراش است، 826 00:36:54,160 --> 00:36:55,880 اما این در واقع چه در داخل فایل است. 827 00:36:55,880 --> 00:36:58,505 و در یک زمان چند هفته خواهیم در واقع در کتابخانه CS50 نگاه 828 00:36:58,505 --> 00:37:02,000 به آنچه در داخل، اما وجود دارد یک حلقه تحمیل که دقیقا. 829 00:37:02,000 --> 00:37:04,840 >> بیایید بازی کمی احمقانه بازی در اینجا با این پرونده. 830 00:37:04,840 --> 00:37:06,550 شرایط صفر نقطه C. 831 00:37:06,550 --> 00:37:08,960 ما فقط در حال رفتن به طور کلی شروع به شمارش صفر. 832 00:37:08,960 --> 00:37:11,220 و من نگه داشتن اسکرول گذشته برخی از مسائل در بالا. 833 00:37:11,220 --> 00:37:15,390 به رنگ آبی در اینجا، مشخص با تمام از این ستاره ها و اسلش، 834 00:37:15,390 --> 00:37:17,310 کسانی از شما که برنامه قبل از آن، این است که؟ 835 00:37:17,310 --> 00:37:18,690 چرا ما نگه پرش بیش از آن؟ 836 00:37:18,690 --> 00:37:19,110 چی؟ 837 00:37:19,110 --> 00:37:19,490 >> رسید این یک نظر است. 838 00:37:19,490 --> 00:37:19,800 >> DAVID J. مالان: آره. 839 00:37:19,800 --> 00:37:20,633 این فقط یک نظر است. 840 00:37:20,633 --> 00:37:24,160 این یک نظر برای انسان است به خواندن، که در مورد ما، 841 00:37:24,160 --> 00:37:27,120 چه به ما می گوید نام فایل است، که آن را نوشته، و چه آن را ندارد، 842 00:37:27,120 --> 00:37:28,610 به طوری که شما لازم نیست از طریق کد به عنوان خوانده شده 843 00:37:28,610 --> 00:37:30,110 بدانید که چه چیزی این فایل همه چیز در مورد. 844 00:37:30,110 --> 00:37:33,110 این فقط یک است، اما عملکرد آن را بی ربط است. 845 00:37:33,110 --> 00:37:35,930 و من حتی می توانید آن را از حذف فایل من و هیچ تاثیری. 846 00:37:35,930 --> 00:37:38,740 خطوط آبدار این برای اولین بار دو در اینجا، در حال حاضر. 847 00:37:38,740 --> 00:37:41,405 اعتبار اصلی اعضای هیات معادل است از زمانی که ما پرچم سبز کلیک، 848 00:37:41,405 --> 00:37:44,030 بنابراین ما در حال رفتن به ترک می شود که برای امروز، و ما آمده است، 849 00:37:44,030 --> 00:37:46,940 در نهایت، به آنچه به عنوان int و باطل است، اما در حال حاضر، 850 00:37:46,940 --> 00:37:49,500 متوجه آنچه من انجام داده ام اینجا بیش از حد، شما همچنین می توانید، 851 00:37:49,500 --> 00:37:51,736 اگر شما یک خط در نظر، اگر شما 852 00:37:51,736 --> 00:37:54,670 فکر می خواهید برای به اشتراک گذاشتن در مورد یک خط از کد، 853 00:37:54,670 --> 00:37:58,910 کنوانسیون در C است که برای انجام بریده بریده بریده بریده، و پس از آن چند کلمه موجز، 854 00:37:58,910 --> 00:38:01,500 یک جمله کامل، به طور کلی یک پاراگراف، 855 00:38:01,500 --> 00:38:05,310 که فقط به شما توضیح می دهد، و یا خود را TF، و یا خوانندگان دیگر و یا همکاران، 856 00:38:05,310 --> 00:38:06,990 چه کد خود را انجام می دهند. 857 00:38:06,990 --> 00:38:10,150 بنابراین به جای به نگاه در این استنباط و از خطوط 858 00:38:10,150 --> 00:38:12,550 نه و 10، چیزی است که این کار، در خط هشت 859 00:38:12,550 --> 00:38:14,945 من فقط یک نظر به درخواست کاربر برای یک عدد صحیح، 860 00:38:14,945 --> 00:38:17,820 پس از آن من لازم نیست به فکر می کنم بیش از حد سخت در مورد چه خطوط نه و 10 می باشد. 861 00:38:17,820 --> 00:38:19,720 من فقط می دانم که این چیزی است که در مجموع آنها انجام می دهند. 862 00:38:19,720 --> 00:38:20,460 >> چگونه؟ 863 00:38:20,460 --> 00:38:22,060 خوب، در اینجا اعلان شده است. 864 00:38:22,060 --> 00:38:23,610 در اینجا گرفتن از نوع int است. 865 00:38:23,610 --> 00:38:25,984 و بر اساس قبلی رفتار، آن را مانند به نظر می رسد اعضای هیات مطلع 866 00:38:25,984 --> 00:38:29,080 به اندازه کافی هوشمند مطمئن شوید که است انسان همکاری می دهد و آن 867 00:38:29,080 --> 00:38:30,090 یک عدد صحیح. 868 00:38:30,090 --> 00:38:32,270 اما در حال حاضر ما این را ببینید. 869 00:38:32,270 --> 00:38:33,740 و این یادآور خراش است. 870 00:38:33,740 --> 00:38:36,140 من ادعا که من تجزیه و تحلیل ورودی کاربر، 871 00:38:36,140 --> 00:38:39,050 اما تا حدودی اشتباه شود. 872 00:38:39,050 --> 00:38:43,200 و ظاهرا این کار در این است که چگونه C ما بیان که اگر دیگری، یک شاخه، 873 00:38:43,200 --> 00:38:46,320 چنگال را در جاده ها، اما من می گویند تا حدودی اشتباه شود. 874 00:38:46,320 --> 00:38:50,470 اشکال در این برنامه چیست؟ 875 00:38:50,470 --> 00:38:51,610 درباره بیشتر به عقب؟ 876 00:38:51,610 --> 00:38:52,223 آره. 877 00:38:52,223 --> 00:38:53,150 >> مخاطبان: [نامفهوم] صفر است. 878 00:38:53,150 --> 00:38:54,025 >> DAVID J. مالان: آره. 879 00:38:54,025 --> 00:38:57,630 بنابراین اگر در صفر نوع I، اجازه دهید در نظر دقیقا همان است که مورد، و یا گوشه ای، 880 00:38:57,630 --> 00:38:58,450 اگر تو بخواهی. 881 00:38:58,450 --> 00:39:02,790 بنابراین اگر در صفر تایپ می کنم، که از بلوک است که به ظاهرا آن را گرفتن؟ 882 00:39:02,790 --> 00:39:04,660 اگر یا چیز دیگری؟ 883 00:39:04,660 --> 00:39:07,340 دیگری، و آن را می گویند، شما یک عدد منفی را برداشت. 884 00:39:07,340 --> 00:39:10,476 و در واقع، صفر است که قرار نیست به مثبت یا منفی، 885 00:39:10,476 --> 00:39:11,850 و به طوری که به اشتباه خواهد بود. 886 00:39:11,850 --> 00:39:12,930 که می تواند یک اشکال. 887 00:39:12,930 --> 00:39:14,580 پس چگونه می تواند ثابت؟ 888 00:39:14,580 --> 00:39:16,360 کسی که هرگز قبل از برنامه ریزی؟ 889 00:39:16,360 --> 00:39:16,570 آیا شما want-- 890 00:39:16,570 --> 00:39:17,480 >> مخاطبان: [نامفهوم] 891 00:39:17,480 --> 00:39:17,990 >> DAVID J. مالان: .. جمع؟ 892 00:39:17,990 --> 00:39:18,570 >> مخاطبان: [نامفهوم] 893 00:39:18,570 --> 00:39:18,930 >> DAVID J. مالان: اوه، شما؟ 894 00:39:18,930 --> 00:39:20,350 کسی که قبل از برنامه ریزی هرگز. 895 00:39:20,350 --> 00:39:21,750 می خواهید امتحان کنید دست خود را در این، در پیراهن قرمز؟ 896 00:39:21,750 --> 00:39:22,600 بیا بالا. 897 00:39:22,600 --> 00:39:25,320 آه، بله، در آمده است، اگر شما از ذهن نیست. 898 00:39:25,320 --> 00:39:27,586 بنابراین هرگز برنامه ریزی قبل از آن، نام شما چیست؟ 899 00:39:27,586 --> 00:39:28,210 لورن: لورن. 900 00:39:28,210 --> 00:39:29,626 DAVID J. مالان: لورن، همه حق است. 901 00:39:29,626 --> 00:39:31,150 بنابراین این اشکال را برای ما حل کنند. 902 00:39:31,150 --> 00:39:35,070 شما نمی C دیده ام، احتمالا، و احتمالا هیچ زبان دیگر. 903 00:39:35,070 --> 00:39:38,380 بنابراین این برنامه برای ما حل کنند. 904 00:39:38,380 --> 00:39:39,100 خوب به دیدار تو. 905 00:39:39,100 --> 00:39:39,615 بدون فشار. 906 00:39:39,615 --> 00:39:40,156 لورن: آره. 907 00:39:40,156 --> 00:39:43,350 908 00:39:43,350 --> 00:39:46,270 >> DAVID J. مالان: اما باز هم، اگر این قمار با توجه به طرح می رود، 909 00:39:46,270 --> 00:39:48,350 غذای آماده در اینجا خواهد باشد، فقط دوباره، برای شروع 910 00:39:48,350 --> 00:39:51,080 به متوجه الگوهای و پی بردن به نحوی موجود 911 00:39:51,080 --> 00:39:55,420 چگونه دیگری که شما ممکن بیان خودتان، بدون جناس در نظر گرفته، به منظور 912 00:39:55,420 --> 00:39:58,410 را به تصرف برخی سناریو های اضافی. 913 00:39:58,410 --> 00:39:59,603 بنابراین ما در حال گفت اگر دیگری. 914 00:39:59,603 --> 00:40:04,040 915 00:40:04,040 --> 00:40:05,230 تابع () printf، خوب است. 916 00:40:05,230 --> 00:40:09,120 و متوجه CS50 با IDE، IDE و frankly-- 917 00:40:09,120 --> 00:40:11,110 مخفف مجتمع محیط زیست و توسعه. 918 00:40:11,110 --> 00:40:14,110 این فقط یک راه فانتزی گفتن است برنامه ای است که کمک می کند تا برنامه شما. 919 00:40:14,110 --> 00:40:16,779 آن را کاربر پسند چیزهایی مانند زمانی که شما یک پرانتز تایپ کنید، 920 00:40:16,779 --> 00:40:18,320 آن را به طور خودکار به شما می دهد دیگر. 921 00:40:18,320 --> 00:40:20,760 فرض این است که شما هستید در نهایت رفتن به خواهید به نوع آن، 922 00:40:20,760 --> 00:40:22,400 و آن را نیز آن را با نقل قول. 923 00:40:22,400 --> 00:40:24,190 >> بنابراین من می خواهم خط 23. 924 00:40:24,190 --> 00:40:26,400 99٪ از راه وجود دارد. 925 00:40:26,400 --> 00:40:29,920 کسی که می خواهید به سنج در با نوک؟ 926 00:40:29,920 --> 00:40:31,420 من از نقطه ویرگول از مخاطبان شنیده می شود. 927 00:40:31,420 --> 00:40:32,080 خوب است. 928 00:40:32,080 --> 00:40:33,260 به طوری که کامل است. 929 00:40:33,260 --> 00:40:37,930 و در حال حاضر، من فقط باید کمی بهت و حیرت با خط 21. 930 00:40:37,930 --> 00:40:41,370 چگونه ما می خواهیم به بیان این؟ 931 00:40:41,370 --> 00:40:43,370 چه درخواست می خواهیم به درخواست، شما فکر می کنید؟ 932 00:40:43,370 --> 00:40:46,870 933 00:40:46,870 --> 00:40:50,330 بنابراین پیش از درخواست از ما خواسته، اگر n بزرگتر از صفر باشد، انجام این کار. 934 00:40:50,330 --> 00:40:51,870 دیگری، انجام این کار. 935 00:40:51,870 --> 00:40:54,317 بنابراین ما نیاز به انتخاب یک سوال در اینجا. 936 00:40:54,317 --> 00:40:55,192 مخاطبان: [نامفهوم] 937 00:40:55,192 --> 00:40:56,530 DAVID J. مالان: خوب. 938 00:40:56,530 --> 00:40:58,290 بنابراین اگر N برابر صفر است. 939 00:40:58,290 --> 00:41:01,140 940 00:41:01,140 --> 00:41:02,100 بسیار عالی است. 941 00:41:02,100 --> 00:41:03,080 بنابراین اجازه دهید در اینجا توقف. 942 00:41:03,080 --> 00:41:04,850 از شما بسیار سپاسگزارم برای این با braving. 943 00:41:04,850 --> 00:41:10,890 اجازه بدهید به شما کمی به خوبی سزاوار را توپ استرس، شاید وجود دارد. 944 00:41:10,890 --> 00:41:11,900 بنابراین ما تقریبا وجود دارد. 945 00:41:11,900 --> 00:41:14,790 در واقع، لورن، اگر شما نمی ذهن، اجازه دهید من در اینجا یکی نیشگون گرفتن و کشیدن، 946 00:41:14,790 --> 00:41:17,850 فقط به سازگار با آنچه که ما در ابتدا دیدم، چه 947 00:41:17,850 --> 00:41:21,080 من می خواهم به انجام این کار با خطوط 21 و 24، فقط دوباره بر اساس 948 00:41:21,080 --> 00:41:23,290 در مورد چگونه ما در ابتدا این بود، شاید؟ 949 00:41:23,290 --> 00:41:24,230 >> مخاطبان: حرکت آن است. 950 00:41:24,230 --> 00:41:25,605 >> DAVID J. مالان: بله، این حرکت به بالا. 951 00:41:25,605 --> 00:41:30,260 بنابراین شرط دیگری، سوم، و یا چهارم، و پنجم، و یا شعبه نهایی، 952 00:41:30,260 --> 00:41:34,100 باید واقع پس از آن آمده است، و این فقط بر اساس قرارداد، 953 00:41:34,100 --> 00:41:36,047 فقط به خاطر اینکه اگر شما خواهد شد. 954 00:41:36,047 --> 00:41:37,380 بنابراین من نیاز به این نیشگون گرفتن و کشیدن. 955 00:41:37,380 --> 00:41:39,660 و من نیاز به قرار دادن من آکولاد به اینجا. 956 00:41:39,660 --> 00:41:42,700 و در حال حاضر، این برنامه کامپایل خواهد شد. 957 00:41:42,700 --> 00:41:46,140 ما خیلی نزدیک است، اما وجود دارد یک اشکال بسیار، بسیار ظریف است. 958 00:41:46,140 --> 00:41:47,200 بیایید ببینید که چه اتفاقی می افتد. 959 00:41:47,200 --> 00:41:49,660 >> اول، اجازه دهید من به جلو و زوم کردن. 960 00:41:49,660 --> 00:41:53,405 من قصد دارم به جلو بروید و تایپ را شرط صفر است. 961 00:41:53,405 --> 00:41:55,070 آه، من دروغ گفته است. 962 00:41:55,070 --> 00:41:58,760 در حال حاضر کامپایلر است در واقع بسیار هوشمند است. 963 00:41:58,760 --> 00:42:00,950 و من واقعا نمی دانند آن پیغام خطا است. 964 00:42:00,950 --> 00:42:04,310 با استفاده از نتیجه انتساب به عنوان یک بیماری بدون پرانتز، 965 00:42:04,310 --> 00:42:05,740 ظاهرا بد است. 966 00:42:05,740 --> 00:42:07,100 اما به چه معنا است؟ 967 00:42:07,100 --> 00:42:10,860 >> خوب دوباره، به دنبال الگوهای در کد است که ما را ندیده اید، 968 00:42:10,860 --> 00:42:16,640 چه خط 17 در واقع انجام است، حتی اگر لورن در نظر گرفته شده کمی 969 00:42:16,640 --> 00:42:18,790 در غیر این صورت؟ 970 00:42:18,790 --> 00:42:19,290 آره. 971 00:42:19,290 --> 00:42:21,565 >> مخاطبان: [نامفهوم] 972 00:42:21,565 --> 00:42:22,440 DAVID J. مالان: آره. 973 00:42:22,440 --> 00:42:26,610 بنابراین به یاد داشته باشید از علامت مساوی، ظاهرا که ما آن را قبل از استفاده، است برابر است. 974 00:42:26,610 --> 00:42:29,240 مأموریت آن، از راست به چپ. 975 00:42:29,240 --> 00:42:33,810 بنابراین خط 17 در حال حاضر یک بیماری است، و آن را 976 00:42:33,810 --> 00:42:37,890 اجرای کد در داخل پرانتز، اما وقتی که کد اجرا، 977 00:42:37,890 --> 00:42:42,140 آنچه اتفاق می افتد به ارزش صفر؟ 978 00:42:42,140 --> 00:42:45,250 آنچه اتفاق می افتد به ارزش N؟ 979 00:42:45,250 --> 00:42:46,810 تبدیل شدن به صفر است. 980 00:42:46,810 --> 00:42:50,520 بنابراین اگر N در حال تبدیل شدن به صفر، و دوباره، به عنوان در هر هفته گذشته، 981 00:42:50,520 --> 00:42:54,690 ما به طور کلی می گویند که صفر نادرست است و یکی درست است، 982 00:42:54,690 --> 00:42:57,410 و یا بله یکی است و هیچ صفر است. 983 00:42:57,410 --> 00:42:59,590 بنابراین درست و نادرست، و 0. 984 00:42:59,590 --> 00:43:06,090 اگر n به عنوان خط 17 شده است با توجه به مقدار 0، صفر درست است؟ 985 00:43:06,090 --> 00:43:06,590 شماره 986 00:43:06,590 --> 00:43:08,280 با این تعریف، صفر غلط است. 987 00:43:08,280 --> 00:43:10,860 که کنوانسیون ما هستیم رفتن به چسبیدن به حرکت رو به جلو. 988 00:43:10,860 --> 00:43:17,320 بنابراین خطوط 18، 19، و 20 در حال حاضر همیشه اعمال می شود، منطقی است؟ 989 00:43:17,320 --> 00:43:18,320 آنها نمی توانند. 990 00:43:18,320 --> 00:43:21,640 بنابراین سوال از ما خواسته اما نه کاملا دقیق، 991 00:43:21,640 --> 00:43:25,620 و شما نمی دانید این مگر اینکه شما آن را دیده ام، راه حل در C 992 00:43:25,620 --> 00:43:29,610 زمانی است که شما می خواهید به بیان برابری، به شما می گویند برابر برابر. 993 00:43:29,610 --> 00:43:33,140 بنابراین علامت مساوی در حال حاضر مورد استفاده قرار گرفت تا با انتساب، از راست به چپ. 994 00:43:33,140 --> 00:43:35,110 برابر برابر یعنی برابر است. 995 00:43:35,110 --> 00:43:37,950 و اگر شما واقعا می خواهید ذهن خود را به خم شود، در جاوا اسکریپت و پی اچ پی، 996 00:43:37,950 --> 00:43:40,490 وجود دارد برابر با برابر است با برابر است، که معنی چیز دیگری در دسترس نباشد، 997 00:43:40,490 --> 00:43:41,990 اما ما را به که قبل از بلند است. 998 00:43:41,990 --> 00:43:45,760 >> بنابراین این یک تعمیر ساده است، اما متوجه فوق العاده آسان را به این اشتباه، 999 00:43:45,760 --> 00:43:48,700 و پس از آن تعجب و مبارزه برای چند دقیقه، اگر نه یک ساعت، 1000 00:43:48,700 --> 00:43:51,490 چرا من این است که کد اجرا به عنوان قصد من؟ 1001 00:43:51,490 --> 00:43:54,140 به این دلیل که شما نگفتم آن را دقیقا آنچه شما به معنای. 1002 00:43:54,140 --> 00:43:56,450 به طوری که تقریبا بود کامل، و آن را بزرگ بود 1003 00:43:56,450 --> 00:44:00,760 که ما در سراسر این دو کمی تصادفا همه چیز چون در حال حاضر اگر ما آنها را تعمیر کنند، 1004 00:44:00,760 --> 00:44:06,240 و من را شرط صفر نقطه اسلش شرایط صفر، 1005 00:44:06,240 --> 00:44:07,490 من می خواهم یک عدد صحیح به مدیر فروش. 1006 00:44:07,490 --> 00:44:08,090 بیایید ببینید. 1007 00:44:08,090 --> 00:44:09,160 شماره 1008 00:44:09,160 --> 00:44:10,740 آن را به زور مرا به انجام آن است. 1009 00:44:10,740 --> 00:44:11,990 بنابراین 42. 1010 00:44:11,990 --> 00:44:13,590 من یک عدد مثبت را برداشت. 1011 00:44:13,590 --> 00:44:16,470 بنابراین در حال حاضر چگونه می توانم ثابت این برنامه درست است؟ 1012 00:44:16,470 --> 00:44:19,990 اگر شما یک ریاضی دان هستید، شما می توانید نیست واقعا این اثبات با آزمون و خطا، 1013 00:44:19,990 --> 00:44:20,490 درست؟ 1014 00:44:20,490 --> 00:44:23,180 شما هم می توانید نه تنها اثبات از طریق به عنوان مثال، اما حداقل 1015 00:44:23,180 --> 00:44:25,494 به عنوان برنامه نویس ما نیست رفتن به تلاش برای اثبات برای 1016 00:44:25,494 --> 00:44:27,660 که این در واقع درست است، اما من باید احتمالا 1017 00:44:27,660 --> 00:44:29,470 تست برخی از موارد نماینده. 1018 00:44:29,470 --> 00:44:31,070 >> من 42 تست شده است. 1019 00:44:31,070 --> 00:44:33,030 من می توانم 43 تست. 1020 00:44:33,030 --> 00:44:34,910 من می توانم 44 تست. 1021 00:44:34,910 --> 00:44:35,640 آزمون 45. 1022 00:44:35,640 --> 00:44:36,140 درست؟ 1023 00:44:36,140 --> 00:44:37,860 اما من می توانم این مدت واقعا طولانی است. 1024 00:44:37,860 --> 00:44:39,925 چه خواهد بود بیشتر موارد جالب را امتحان کنید؟ 1025 00:44:39,925 --> 00:44:41,050 مخاطبان: [نامفهوم] صفر است. 1026 00:44:41,050 --> 00:44:41,740 DAVID J. مالان: پس صفر است. 1027 00:44:41,740 --> 00:44:42,297 بدیهی است. 1028 00:44:42,297 --> 00:44:44,880 و خوب است، ما آن را این بار کردم، به لطف کد جدید لورن است. 1029 00:44:44,880 --> 00:44:46,213 یک مورد دیگر خوب را امتحان کنید چیست؟ 1030 00:44:46,213 --> 00:44:47,320 رسید دیگری منفی است. 1031 00:44:47,320 --> 00:44:50,070 >> DAVID J. مالان: منفی و شاید چیزی کمی بزرگتر، 1032 00:44:50,070 --> 00:44:52,617 بنابراین شاید منفی 42، اما به طور کلی، هنگامی که 1033 00:44:52,617 --> 00:44:54,450 تست برنامه های خود را حرکت رو به جلو، شما 1034 00:44:54,450 --> 00:44:56,325 رفتن به می خواهم به فکر می کنم به خودتان، مانند آنچه 1035 00:44:56,325 --> 00:44:58,050 موارد اساسی متفاوت هستند. 1036 00:44:58,050 --> 00:45:01,720 و من به جرات می یک مورد منفی، یک مورد مثبت، صفر و یک مورد 1037 00:45:01,720 --> 00:45:03,365 بسیار دور از این. 1038 00:45:03,365 --> 00:45:04,990 اجازه دهید در یک نوع از این هر چند نگاه کنید. 1039 00:45:04,990 --> 00:45:06,930 شرایط است. 1040 00:45:06,930 --> 00:45:11,224 این یک راه حل درست است که در اینجا، به طوری که شما دو و آنلاین را مشاهده کنید، 1041 00:45:11,224 --> 00:45:13,390 اگر شما از طریق راه رفتن تکمیل فرم سفارش، به طور کلی 1042 00:45:13,390 --> 00:45:18,090 افزایش این گام به گام تا زمانی که ما گرفتن دقیقا روش درست است. 1043 00:45:18,090 --> 00:45:20,070 چه اگر ما می خواستیم به درخواست دو سوال در یک بار؟ 1044 00:45:20,070 --> 00:45:22,200 >> من اجازه باز کردن این به جای آن. 1045 00:45:22,200 --> 00:45:26,740 غیر سوئیچ، به دلایل ما بار دیگر ببینید. 1046 00:45:26,740 --> 00:45:29,610 تازه چه خبر نحوی که اینجا هستید؟ 1047 00:45:29,610 --> 00:45:32,760 من در حال حاضر بازی یک بازی که در آن کامپیوتر است که گفتن 1048 00:45:32,760 --> 00:45:35,550 من، من یک عدد صحیح را بین یک و 10، 1049 00:45:35,550 --> 00:45:37,180 و سپس من قضاوت ورودی کاربر است. 1050 00:45:37,180 --> 00:45:39,180 در انگلیسی، بر اساس کد شما اینجا را ببینید 1051 00:45:39,180 --> 00:45:41,530 به رنگ آبی، آنچه که این برنامه انجام می دهند؟ 1052 00:45:41,530 --> 00:45:44,256 1053 00:45:44,256 --> 00:45:46,380 مخاطبان: [نامفهوم] برداشت یک عدد بزرگ یا کوچک است. 1054 00:45:46,380 --> 00:45:46,484 DAVID J. مالان: آره. 1055 00:45:46,484 --> 00:45:49,450 این فقط قضاوت که آیا من برداشت بزرگ، و یا متوسط، 1056 00:45:49,450 --> 00:45:53,900 و یا تعداد کمی در بسیار بر اساس تعریف خودسرانه از کوچک، متوسط، 1057 00:45:53,900 --> 00:45:58,510 و بزرگ در اینجا، اما متوجه نحو که جدید این است. 1058 00:45:58,510 --> 00:46:02,340 هیچ کمتر از نوع int یا مساوی وجود دارد امضاء، و یا بزرگتر یا مساوی به ثبت نام، 1059 00:46:02,340 --> 00:46:05,430 که در آن یک بر دیگری، که شما می توانید مانند مایکروسافت ورد بیان در. 1060 00:46:05,430 --> 00:46:08,180 بنابراین در یک زبان برنامه نویسی شما معمولا فقط دو شخصیت، 1061 00:46:08,180 --> 00:46:09,450 یکی پس از دیگری. 1062 00:46:09,450 --> 00:46:12,695 و چه چیزی این احتمالا نمایندگی، علامت آمپرسند. 1063 00:46:12,695 --> 00:46:13,570 مخاطبان: [نامفهوم] 1064 00:46:13,570 --> 00:46:13,680 DAVID J. مالان: آره. 1065 00:46:13,680 --> 00:46:16,910 این فقط بدان معناست و به دلیل آن معلوم است که نویسندگان C 1066 00:46:16,910 --> 00:46:19,120 با استفاده از یک علامت تک، که شما ممکن است فکر 1067 00:46:19,120 --> 00:46:22,430 خواهد بود مناسب برای مفهوم و، در حال حاضر استفاده می شود، 1068 00:46:22,430 --> 00:46:27,300 علامت بنابراین علامت در واقع قطاری در مورد ما در واقع می خواهم. 1069 00:46:27,300 --> 00:46:30,610 >> بنابراین اجازه دهید حال حاضر در سراسر دو چیز تلو تلو خوردن. 1070 00:46:30,610 --> 00:46:32,640 اجازه بدهید به جلو و باز کردن است. 1071 00:46:32,640 --> 00:46:36,590 چیزی که کمی نگران کننده است. 1072 00:46:36,590 --> 00:46:37,970 عدم دقت نقطه C. 1073 00:46:37,970 --> 00:46:40,260 اجازه دهید دو چیز معرفی من در اینجا. 1074 00:46:40,260 --> 00:46:44,720 یکی، توجه کنید که ما می توانیم انجام ریاضیات، به عنوان فقط به عنوان قبل از زمانی که 1075 00:46:44,720 --> 00:46:47,797 ما انجام داد به علاوه از دو عدد، x و y. 1076 00:46:47,797 --> 00:46:49,380 آنچه که این برنامه ظاهرا انجام می دهند؟ 1077 00:46:49,380 --> 00:46:52,140 من آن نظر داده اید نشده است، و من معرفی درصد F، 1078 00:46:52,140 --> 00:46:55,720 اما من به سرعت گفت: قبل از درصد F به معنی نقطه شناور 1079 00:46:55,720 --> 00:46:56,970 ارزش است که تعداد واقعی است. 1080 00:46:56,970 --> 00:46:59,520 چیزی را با یک عدد اعشاری نقطه، که یک عدد صحیح است. 1081 00:46:59,520 --> 00:47:02,270 شما چه فکر میکنید این برنامه این است تلاش برای من بر روی صفحه نمایش نشان می دهد؟ 1082 00:47:02,270 --> 00:47:05,060 1083 00:47:05,060 --> 00:47:06,050 آره؟ 1084 00:47:06,050 --> 00:47:07,550 رسید نتیجه یک بیش از 10. 1085 00:47:07,550 --> 00:47:07,780 DAVID J. مالان: آره. 1086 00:47:07,780 --> 00:47:09,680 نتیجه یک تقسیم بر 10 چیست. 1087 00:47:09,680 --> 00:47:12,721 راست، چرا که همه از شما احتمالا رشد کرده است تا با علم به اینکه یکی از بیش از 10 1088 00:47:12,721 --> 00:47:14,502 چه شده است؟ 1089 00:47:14,502 --> 00:47:16,220 آره، آن را فقط 1/10 یا 0.1. 1090 00:47:16,220 --> 00:47:16,720 درست؟ 1091 00:47:16,720 --> 00:47:19,010 بنابراین اجازه دهید که این واقع است. 1092 00:47:19,010 --> 00:47:21,010 بنابراین اجازه دهید من به جلو و صرفه جویی در این. 1093 00:47:21,010 --> 00:47:21,970 اجازه دهید من پایین در اینجا. 1094 00:47:21,970 --> 00:47:26,360 عدم دقت را نقطه اسلش عدم دقت و توجه، بیش از حد، 1095 00:47:26,360 --> 00:47:29,380 در یک محیط لینوکس، شما نمی به تایپ کردن عدم دقت و 1096 00:47:29,380 --> 00:47:30,010 تمام روز. 1097 00:47:30,010 --> 00:47:32,910 به طور کلی، اگر شما ضربه تب، آن را خواهد فکر خود را برای شما به پایان برسد، 1098 00:47:32,910 --> 00:47:36,660 بر اساس کلمات که موجود در دایرکتوری جاری است. 1099 00:47:36,660 --> 00:47:37,160 باشه. 1100 00:47:37,160 --> 00:47:37,970 بنابراین حق با تو بود. 1101 00:47:37,970 --> 00:47:41,239 یکی تقسیم بر 10 است، در واقع، 0.1. 1102 00:47:41,239 --> 00:47:42,280 اما من یک کمی کنجکاو هستم. 1103 00:47:42,280 --> 00:47:44,196 و معلوم است تابع () printf پشتیبانی از برخی از ویژگی های 1104 00:47:44,196 --> 00:47:48,700 به موجب آن شما می توانید بیش از مشخص تعداد پیش فرض نقطه اعشاری. 1105 00:47:48,700 --> 00:47:52,140 بنابراین اگر من می خواهم برای دیدن 10 دهدهی امتیاز من می توانم درصد انجام دهید، 1106 00:47:52,140 --> 00:47:55,510 برای نماد حفره یا سوراخ، نقطه 10 برای من 10 رقم اعشار را، 1107 00:47:55,510 --> 00:47:58,140 و پس از آن هنوز هم نقطه شناور ارزش، و، از سوی دیگر، 1108 00:47:58,140 --> 00:48:01,550 این بک اسلش نفر است ظاهرا ما در حفظ و با استفاده از؟ 1109 00:48:01,550 --> 00:48:03,450 به نظر می رسد آن را به یک نماد برای یک خط جدید. 1110 00:48:03,450 --> 00:48:05,970 این راه بسیار صریح و روشن است از گفتن به کامپیوتر، 1111 00:48:05,970 --> 00:48:08,759 حرکت مکان نما به بعد خط بعد از شما در حال انجام است. 1112 00:48:08,759 --> 00:48:10,800 و خواهیم دید که چه اتفاقی می افتد هنگامی که ما این کار را نمی کند. 1113 00:48:10,800 --> 00:48:12,430 >> اجازه دهید من کامپایل مجدد را عدم دقت. 1114 00:48:12,430 --> 00:48:15,320 1115 00:48:15,320 --> 00:48:18,356 در حال حاضر نقطه اسلش عدم دقت. 1116 00:48:18,356 --> 00:48:18,930 باشه. 1117 00:48:18,930 --> 00:48:19,780 هنوز هم حق. 1118 00:48:19,780 --> 00:48:21,512 یکی تقسیم بر 10. 1119 00:48:21,512 --> 00:48:23,220 در حال حاضر من یک کمی کنجکاو، هر چند. 1120 00:48:23,220 --> 00:48:27,599 اگر من نگاه 20 دهدهی اشاره می کند، ترجمه و مجددا تکرار، 1121 00:48:27,599 --> 00:48:29,390 و به عنوان یک کنار گذاشته برای سرعت، شما همچنین می توانید استفاده کنید 1122 00:48:29,390 --> 00:48:31,800 بالا و پایین فلش به خود را در طول تاریخ خود را حرکت، 1123 00:48:31,800 --> 00:48:35,476 بنابراین شما لازم نیست که برای حفظ تایپ مجدد این دستورات، را وارد کنید. 1124 00:48:35,476 --> 00:48:36,910 متعجب. 1125 00:48:36,910 --> 00:48:39,220 من یاد ندارم که در مدرسه ابتدایی. 1126 00:48:39,220 --> 00:48:43,260 خوب، پس به من اجازه دهید مانند 29 مکان را ببینید. 1127 00:48:43,260 --> 00:48:44,300 شاید این فقط یک اتفاق است. 1128 00:48:44,300 --> 00:48:46,907 شاید کامپیوتر من اقدام عجیب و غریب. 1129 00:48:46,907 --> 00:48:47,990 که یک چیز نیست، درست است؟ 1130 00:48:47,990 --> 00:48:50,300 آن را به انجام چیزی قطعی. 1131 00:48:50,300 --> 00:48:53,410 بنابراین عدم دقت است. 1132 00:48:53,410 --> 00:48:54,890 OK، که خراب کرد. 1133 00:48:54,890 --> 00:48:57,620 بنابراین آنچه در جریان است؟ 1134 00:48:57,620 --> 00:49:00,160 >> بنابراین ظاهرا خود را معلم است از دروغ گفتن 1135 00:49:00,160 --> 00:49:03,900 به همه شما از این زمان برای دلایلی که ما قبل از اینکه طولانی را ببینید. 1136 00:49:03,900 --> 00:49:05,569 اما اجازه دهید با یک برنامه دیگر به پایان برسد. 1137 00:49:05,569 --> 00:49:07,860 این برنامه کوچک است کسی نوشت چند سال پیش، 1138 00:49:07,860 --> 00:49:08,990 و این در واقع بخشی از یک مسابقه. 1139 00:49:08,990 --> 00:49:11,198 در واقع هیچ کس می نویسد کد مانند این، و اگر شما، 1140 00:49:11,198 --> 00:49:12,880 این است سبک نگارش یک مشکل. 1141 00:49:12,880 --> 00:49:14,660 اما مردم این کار را برای افتخار کردن. 1142 00:49:14,660 --> 00:49:17,260 برای ارسال گیج کننده ترین به دنبال برنامه ای است که 1143 00:49:17,260 --> 00:49:19,110 وجود به چیزی جالب است. 1144 00:49:19,110 --> 00:49:23,930 و توجه داشته باشید من فکر کردم ما ترک در امروز، قبل از کولتون بازی می کند ما را در اینجا، 1145 00:49:23,930 --> 00:49:27,840 است که برای اجرای این برنامه، که حتی در فقط با استفاده از 1146 00:49:27,840 --> 00:49:31,450 C در این متن مبتنی بر محیط زیست، به ما این را می دهد. 1147 00:49:31,450 --> 00:49:32,264 لعنتی. 1148 00:49:32,264 --> 00:49:34,930 >> [خنده حضار] 1149 00:49:34,930 --> 00:49:36,800 >> ایستاده. 1150 00:49:36,800 --> 00:49:39,340 [نامفهوم] C فاصله ل متر. 1151 00:49:39,340 --> 00:49:42,885 شما در حال رفتن برای دیدن جادویی افسون که ما قبل از اینکه طولانی را ببینید. 1152 00:49:42,885 --> 00:49:45,780 [نامفهوم] خوب. 1153 00:49:45,780 --> 00:49:51,592 و در حال حاضر شما می توانید حتی انجام چیزهایی مثل این. 1154 00:49:51,592 --> 00:49:52,340 خودشه. 1155 00:49:52,340 --> 00:49:56,410 برای CS50 ما، شما را در روز جمعه را ببینید. 1156 00:49:56,410 --> 00:49:58,910 >> [موسیقی] 1157 00:49:58,910 --> 00:52:38,390 1158 00:52:38,390 --> 00:52:41,440 >> [تشویق حضار] 1159 00:52:41,440 --> 00:52:42,812