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 >> დევიდ ჯ Malan: ეს არის 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 ეს ნამდვილად არის ნაწილი ჰარვარდის Mark I, და ეს 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 დევიდ ჯ Malan: ასე რომ, ეს იყო, სავარაუდოდ, პირველივე ფაქტობრივი შეცდომის კომპიუტერში. 30 00:01:49,570 --> 00:01:52,490 ახლა რეალურად სიტყვა bug, შეცდომა პროგრამაში, 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 ამოაგდო დიდი moth გარეთ ჩანაწერები II კომპიუტერში, ამას შემკვრელის, 34 00:02:02,280 --> 00:02:05,006 და შემდეგ ჩაწერილი როგორც პირველი ცნობილი bug 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 უნდა transcribe ყველაზე არაფერი რომ შეიძლება მოხდეს აქ კლასში. 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 ისევე როგორც walkthroughs ისევე. 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 ასე რომ მიხვდებიან, ჩვენ გამოგიგზავნით cherry აირჩიოთ დროს კლასში ზოგიერთი 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 ამბობს, hello, world. 60 00:03:10,710 --> 00:03:13,180 რაც კატა ამბობენ მიესალმები თავის პატარა სამყაროში 61 00:03:13,180 --> 00:03:15,990 ზედა მარცხენა მხარეს Scratch- ს ინტერფეისი. 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 ასე რომ, loop. 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 ბევრად უფრო arcane. 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 >> დევიდ ჯ Malan: ჰო. 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 და მსოფლიოში Scratch, ყველაფერი კარგად 92 00:04:12,170 --> 00:04:15,460 interlocks თვალსაზრისით მისი ფორმის, თუ ეს ქმნის ლოგიკურ აზრი ამის გაკეთება, 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 ასე რომ, Scratch იზრდება შეავსოთ ფორმები რომ დაგვჭირდება ჩადეთ შევიდა, 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 ასე რომ, sectioning დღეს იწყება. 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 ბევრად უფრო ინტიმური გარემო ვიდრე [? Sanders?] საშუალებას იძლევა, 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 და როლი thumb აქ, არ არსებობს ფორმალური განმარტება, 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 და თუ ეს არის ერთგვარი toss-up, ეს არის ზუსტად ის, რაც შორის 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 super სექციები, ახლოვდება ამ შაბათ-კვირას და მომდევნო კვირის დასაწყისში, 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 >> და საოფისე საათი, როგორც აქ და New Haven, 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 და ერთი წუთით, რომ ის აპირებს დაიწყოს ცოტა უფრო arcane, მაგრამ ძალიან 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 და მე ვაპირებ გადარჩენა ეს ფაილი როგორც რაღაც მიესალმები dot გ. 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 dot h, int ძირითადი ბათილად, და შემდეგ ღია Curly გაუწიოს, მჭიდრო 159 00:07:13,990 --> 00:07:19,430 Curly გაუწიოს, printf მიესალმები მძიმით მსოფლიოში, წარმატებული ო, მძიმით, შენახვა, გაკეთდეს. 160 00:07:19,430 --> 00:07:19,930 OK. 161 00:07:19,930 --> 00:07:21,670 მე დაწერილი ჩემი პირველი პროგრამა, მაგრამ ის აპირებს 162 00:07:21,670 --> 00:07:23,878 უნდა იყოს ძალიან underwhelmed იმიტომ, რომ როცა რეალურად 163 00:07:23,878 --> 00:07:27,352 გაუშვით ეს პროგრამა, რა თქმა უნდა, პირველი წერილობით მიიღოს hello, 164 00:07:27,352 --> 00:07:30,310 და შემდეგ dot slash hello, და ჩვენ გაიაროს ეს ბევრად უფრო დეტალურად 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 შემდგენელი არსებობს Mac OS, Windows, Linux, ნებისმიერი რაოდენობის ოპერაციული სისტემები, 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 აპირებს გამოიყურებოდეს ცოტა arcane, და ცოტა ნაკლებად მეგობრული 182 00:08:17,240 --> 00:08:19,590 ვიდრე Scratch ერთი შეხედვით, ეს მაინც რაღაც 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 თქვენ იმ zeros და პირობა. 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 ასე რომ, მიუხედავად იმისა, რომ ჩვენ გაუთიშა რამ, როგორიცაა Curly braces, 194 00:08:50,660 --> 00:08:54,100 და semicolons, და ბრჭყალების და ყველა ამ ინტელექტუალურად საინტერესო 195 00:08:54,100 --> 00:08:57,620 პროგრამირების ასპექტის, რომ ძალიან გასაგები მიზეზების გამო, მოგზაურობა ადამიანი up დასაწყისში, 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 არის, მაგრამ მაინც მე ვერ ვხედავ აქ უკვე ნაცნობი Hello World. 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 hello მსოფლიოში, რამდენიმე მოჰყავს, ერთად წარმატებული, 205 00:09:26,930 --> 00:09:29,780 მძიმით, მაგრამ უფრო, რომ მოვა. 206 00:09:29,780 --> 00:09:34,066 მარყუჟების, იმავდროულად, ეს არის მარყუჟის რომ, რა თქმა უნდა, აცხადებს, Hello World სამუდამოდ, 207 00:09:34,066 --> 00:09:36,690 და ეს ერთი აპირებს გამოიყურებოდეს პატარა weirder ვიდრე ბოლო, 208 00:09:36,690 --> 00:09:39,530 მაგრამ თუ მე ვიტყვი, რომ რაღაც მოსწონს, ხოლო ჭეშმარიტი, მე 209 00:09:39,530 --> 00:09:44,050 შემდეგ შეგიძლიათ ამობეჭდოთ Hello world ისევ და ისევ და ისევ და ისევ. 210 00:09:44,050 --> 00:09:46,660 და მაშინ, როგორც თქვენ შეგიძლიათ სახის დავიწყოთ, რომ დავასკვნათ, აქ, 211 00:09:46,660 --> 00:09:49,070 ამ კონვენციის გამოყენების curly აფრთხილებს სახის 212 00:09:49,070 --> 00:09:52,050 მოსწონს მოიცავს indented ხაზი კოდი არსებობს. 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 >> ამასობაში, თუ ჩვენ გვაქვს loop, როგორც ეს, სადაც თქვენ ვიმეორებ რაღაც სასრული 217 00:10:04,210 --> 00:10:07,730 რაოდენობის ჯერ, ეს ერთი ძალიან ეს აპირებს ცოტა შეგუება 218 00:10:07,730 --> 00:10:12,820 , მაგრამ ის აპირებს ვთქვა int i იღებს ნულოვანი, მე 10-ზე ნაკლები, i ++, 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 კომპიუტერული მეცნიერების, ან Java, 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 ასე რომ, აქ არის მარტივი Scratch ამონაწერი, რომ ადგენს ცვლადში counter ნულოვანი, 226 00:10:29,270 --> 00:10:33,150 და შემდეგ სამუდამოდ ამბობს counter, და მაშინ იგი შეიცვლის counter ერთი. 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 counter ტოლია ნულოვანი, ხოლო ჭეშმარიტი, რომელიც 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 და ახლა ის მიღების ცოტა უცნაურია, პროცენტს i, მაგრამ უფრო, რომ მოვა, 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 ასე, რომ თქვენ შეიძლება განახორციელოს რაღაც ამ Scratch, 245 00:11:28,710 --> 00:11:31,230 ან თქვენ შეიძლება განახორციელოს იგი ამ სინტაქსის. 246 00:11:31,230 --> 00:11:35,090 ისევ და ისევ, curly აფრთხილებს სახის გვაძლევს იგივე ფორმა, როგორც თავსატეხი 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, dot სთ შემდეგ რამდენიმე უცნაური კუთხე 253 00:11:53,160 --> 00:11:57,330 ფრჩხილებში ქვემოთ რომ. int ძირითადი ბათილად, და მაშინ printf hello მსოფლიოში. 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 >> აუდიტორია: [INAUDIBLE] 260 00:12:08,410 --> 00:12:08,610 >> დევიდ ჯ Malan: ჰო. 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 >> აუდიტორია: [INAUDIBLE] 270 00:12:27,595 --> 00:12:30,565 271 00:12:30,565 --> 00:12:31,440 დევიდ ჯ Malan: ჰო. 272 00:12:31,440 --> 00:12:34,890 ასე რომ, Scratch რამდენიმე თავსატეხი ცალი სადაც შეგიძლიათ parametrize იგი. 273 00:12:34,890 --> 00:12:37,980 ვერ გეტყვით, განმეორებითი ბლოკირება რამდენჯერ უნდა გავიმეორო, 274 00:12:37,980 --> 00:12:40,320 ისე, რომ იყო შეყვანილი სახის, და ისევე, როგორც Scratch 275 00:12:40,320 --> 00:12:43,060 მქონდა პატარა თეთრი placeholder იმ რაოდენობის თქვენ აკრიფოთ, 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 ამ რამდენიმე წლის შემდეგ, ჩვენ გვინდა გსურთ ფუნქცია, რომელიც ამბობს hello. 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 რომ ე.წ. hello, რომ ფაქტიურად ამბობს hello. 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 ღია paren ახლოს, paren არის როგორც ჩანს, მოიცავს input, 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 მოსწონს რომელმაც plugged in გარკვეული მნიშვნელობა არსებობს. 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 chatted მეგობრებთან ერთად, რომ მრავალი წლის განმავლობაში 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 არის ნაჭერი პროგრამული უზრუნველყოფა, რომ თქვენი წინამორბედები იქნებოდა ჩამოტვირთოთ off 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, ან VirtualBox, ან ნებისმიერი რაოდენობის 303 00:14:00,590 --> 00:14:04,450 სხვა იარაღები, და მათი Mac ან PC ან რასაც კომპიუტერი გვქონდა შარშან 304 00:14:04,450 --> 00:14:06,620 და გასულ წლებში, მათ ორმაგად დაწკაპეთ ხატი 305 00:14:06,620 --> 00:14:08,860 გაუშვით ეს პროგრამული უზრუნველყოფა მოუწოდა hypervisor. 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 ან Windows, მას შემდეგ 309 00:14:17,780 --> 00:14:22,910 შემდგომში ჰქონდა new window მათი ეკრანზე გაშვებული 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 Linux, კონკრეტულად Ubuntu Linux, და ეს 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, და არა ძალიან ბევრი გიგაჰერციანი პროცესორის სიჩქარე, 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 თქვენ ალბათ აირჩიეთ მისი ხატი თქვენს Mac ან PC. 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 ეს არის მხოლოდ bunch of კომპიუტერები სხვაგან, რომ შენახვის მონაცემები და აწარმოებს 336 00:15:33,770 --> 00:15:34,880 პროგრამული უზრუნველყოფა და ასე შემდეგ. 337 00:15:34,880 --> 00:15:39,390 ასე რომ, ეს მხოლოდ იმიტომ, რომ სიტყვა de იურე აღწერილია [? რენტაბელურ?] 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 და არა, სავარაუდოდ, თქვენი ფიზიკური ლეპტოპი ან desktop. 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 და ჰგავს Scratch ჰქონდა რამდენიმე სხვადასხვა პანელები ჩართული, 348 00:16:03,896 --> 00:16:06,030 ასე აკეთებს CS50 ის IDE აქვს ზუსტად რომ. 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, მოგვიანებით ტერმინი PHP და JavaScript, 356 00:16:21,860 --> 00:16:24,739 და, ალბათ, საბოლოო პროექტები, Ruby ან Java ან Python 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 მინდა ამ cloud გარემო. 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 ჩვეულებრივ, ფაქტიურად შემოღების, მადლობა Dan Armendariz და Dino, 368 00:16:57,110 --> 00:17:01,070 და დენ ბრედლი on CS50 გუნდი მეტი ბოლო თვეების ნაკლებად კომფორტული, 369 00:17:01,070 --> 00:17:05,140 რეჟიმი, რომელიც მალავს ბევრი თავდაპირველად დამაბნეველი distractions. 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 მოდით რეალურად მიიღოს peek at პროგრამა. 374 00:17:19,124 --> 00:17:21,290 ამიტომ, მე ვაპირებ გახსნას გარემოზე აქ, 375 00:17:21,290 --> 00:17:23,894 რომელიც მხოლოდ ჩვენი Chrome ბრაუზერი, რომელიც შეიძლება იყოს Firefox, 376 00:17:23,894 --> 00:17:26,640 შეიძლება იყოს Internet Explorer, ან სხვა ბრაუზერის ასევე. 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 ფუნქცია, რომელიც ამბობს, hello. 383 00:17:42,580 --> 00:17:45,870 Curly braces, on ხაზის ოთხი და ხაზი ექვსი, 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 hello მსოფლიოში. 391 00:18:06,700 --> 00:18:11,210 >> მაგრამ მოდით ვხვდები, ახლა, რა ეს, პირველ რიგში, უფრო arcane ხაზი, არის. 392 00:18:11,210 --> 00:18:15,100 Sharp მოიცავს, ღია დახრილი bracket, სტანდარტული I / O dot h, 393 00:18:15,100 --> 00:18:17,320 დახურვა დახრილი bracket. 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 >> აუდიტორია: [INAUDIBLE] 398 00:18:22,765 --> 00:18:25,095 399 00:18:25,095 --> 00:18:25,970 დევიდ ჯ Malan: ჰო. 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 ვინმეს აქვს figured, რომ ერთად 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 ასე რომ, ეს პირველი ხაზი იქ ნაბიჯი ერთი მოიცავს ე.წ. header ფაილი 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 >> ახლა მოდით, გადადით ბოლოში window და ზუსტად რა მე ადრე. 419 00:19:15,940 --> 00:19:18,520 მომენტში წინ, როდესაც მე ვიყავი whizzing მეშვეობით კოდი, 420 00:19:18,520 --> 00:19:24,540 აკრეფის ის პირველად, მე ძალიან სწრაფად აკრეფილი, მიიღოს hello. 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 ეს OK. 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 დევიდ ჯ Malan: ჰო. 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 ეს რა თქმა უნდა არ zeros და პირობა, ასე რომ მე მაინც 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 და მაინც, ახლა, ამ ამ Linux გარემოში, 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 იგი აპირებს საშუალებას გაძლევთ, რომ ბევრი სხვა რამ, ვიდრე მხოლოდ ის, რაც Microsoft 448 00:20:16,790 --> 00:20:20,390 ან Apple გაძლევთ უნდა გააკეთოს მათი გრაფიკული ოპერაციული სისტემა. 449 00:20:20,390 --> 00:20:23,270 >> ასე რომ, როდესაც მე დააჭიროთ, ახლა, არაფერი არ ხდება ამ დროს 450 00:20:23,270 --> 00:20:25,960 რადგან, როგორც ჩანს პროგრამის Hello დღემდე. 451 00:20:25,960 --> 00:20:28,250 და რა იყო ბრძანება მე გაიქცა მას შემდეგ? 452 00:20:28,250 --> 00:20:32,370 Dot slash hello, და hello მსოფლიოში. 453 00:20:32,370 --> 00:20:34,350 ახლა მოდით მიიღოს ნაბიჯი უკან მხოლოდ ერთი წუთით. 454 00:20:34,350 --> 00:20:39,510 გამოდის, რომ მიიღოს hello მხოლოდ გამარტივებული შედგენის პროგრამას. 455 00:20:39,510 --> 00:20:41,670 მოდით უბრალოდ გააცნობს ერთი ნაჭერი jargon, 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 შემდგენელი ჩვენ ვაპირებთ, რომ დაიწყოს გამოყენებით ეწოდება Clang, რომ 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 არ წერია ფაილი სახელად მიესალმები dot გ, მე ფაქტიურად აკრიფოთ clang მიესალმები გ 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 რომ მე მინდა გამომავალი, თუ მე არ მიუთითეთ ფაილის სახელი იმ zeros 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 კარგად მოდით უბრალოდ თვითნებურად მოვუწოდებთ პირველი პროგრამა ჩვენ კომპილაციის dot out. 469 00:21:21,650 --> 00:21:22,900 მოდის პირველი ანბანი. 470 00:21:22,900 --> 00:21:23,920 Out, ის გამომუშავება. 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 გარემო, მე უბრალოდ აკრიფოთ dot სლეში dot out შევა. 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 და მე ნაცვლად ამისათვის clang მიესალმები cot გ შევა, შეამჩნია არაფერი ჩანს, უნდა მოხდეს, 478 00:21:47,860 --> 00:21:49,790 მაგრამ თითქმის ყოველთვის ამ Linux გარემოში, 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 და მართლაც, თუ მე ახლა dot სლეში dot გარეთ შევა, მე აწარმოებს იგივე პროგრამა. 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 ამ მართლწერის of ბრძანებები, მაგრამ ვნახოთ, თუ როგორ ჩვენ 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 ისე მოდით უბრალოდ გავაცნოთ კიდევ ერთი ნაჭერი jargon. 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 tweak ქცევის რასაც პროგრამა თქვენ გაშვებული. 494 00:22:33,860 --> 00:22:37,320 ასე რომ, კონკრეტულად პროგრამა ვარ გაშვებული, აკრეფით სახელწოდება clang, 495 00:22:37,320 --> 00:22:38,504 ეს არის პროგრამა, სახელწოდებით Clang. 496 00:22:38,504 --> 00:22:40,920 ასე რომ, ეს არის და ძველი სკოლა ეკვივალენტს ორმაგი დაჭერით 497 00:22:40,920 --> 00:22:42,860 on Microsoft Word ან ზოგიერთი პროგრამა ხატი. 498 00:22:42,860 --> 00:22:46,360 მე ნაცვლად უბრალოდ აკრეფით მისი სახელი, მაგრამ ეს ვერსია ბრძანება, 499 00:22:46,360 --> 00:22:51,334 მე მაშინ უნდა dash o სივრცეში მიესალმები სივრცეში მიესალმები dot გ. 500 00:22:51,334 --> 00:22:53,500 ასე რომ, თუ თქვენ არასდროს ითამაშა ამ მსოფლიოს წინაშე, 501 00:22:53,500 --> 00:22:58,160 უბრალოდ ვხვდები რა ამჯამად dash o მიესალმები გავაკეთოთ? 502 00:22:58,160 --> 00:23:00,620 ან რას გეტყვით clang უნდა გავაკეთოთ? 503 00:23:00,620 --> 00:23:01,386 ჰო. 504 00:23:01,386 --> 00:23:02,455 >> აუდიტორია: [INAUDIBLE] 505 00:23:02,455 --> 00:23:03,330 დევიდ ჯ Malan: ჰო. 506 00:23:03,330 --> 00:23:08,614 უბრალოდ ადგენს ფაილის გამომავალი უნდა იყოს მიესალმები ნაცვლად sillier წერტილი გარეთ. 507 00:23:08,614 --> 00:23:09,780 და, მართლაც, მოდით ცდილობენ ამ. 508 00:23:09,780 --> 00:23:14,250 ასე რომ, თუ მე ახლა ამის გაკეთება, პირველი მოდით ეს, r m hello. 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 ზედმეტად arcane, მაგრამ ეს მხოლოდ საშუალება გსურთ მისი წაშლა, 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 ნება მომეცით ახლა clang dash o, და მე ვაპირებ წავიდეთ წინ და ამის hello, 515 00:23:32,180 --> 00:23:34,890 ყველა caps, hello dot გ. 516 00:23:34,890 --> 00:23:37,775 ახლა, თუ მე dot ხაზი hello, რას ველოდოთ? 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 ყველა caps hello. 525 00:23:51,070 --> 00:23:53,020 ასე რომ, მართლაც, რომ აპირებს რათა სხვაობა. 526 00:23:53,020 --> 00:23:54,540 ასე რომ, ახლა hello მსოფლიოში დაბრუნდა. 527 00:23:54,540 --> 00:23:56,969 ახლა ეს არის ყველა კარგი და კეთილი, და ყველა ძალიან გონება- numbing, 528 00:23:56,969 --> 00:23:59,760 ერთგვარი bogged ქვემოთ ეს დეტალები, მაგრამ გაგება მათ 529 00:23:59,760 --> 00:24:00,500 არის კარგი. 530 00:24:00,500 --> 00:24:02,675 >> Typing აღნიშნული უფრო ხანგრძლივი მართლწერის 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 არის ჭკვიანი, რომ ის გამოიყურება მიმდინარე საქაღალდეში, aka დირექტორია, 536 00:24:18,580 --> 00:24:21,440 და თუ თქვენ გაქვთ ფაილი მოუწოდა hello dot გ, 537 00:24:21,440 --> 00:24:25,800 რომ არის ფაილი კომპილირდება თქვენ შევიდა პროგრამა მოუწოდა hello. 538 00:24:25,800 --> 00:24:29,950 ასე რომ, ეს უფრო მარტივი გზა ამით უფრო cryptic ბრძანებები 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 რომ ეს უნდა გავაკეთოთ dash 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 უბრალოდ აკრეფით გარეთ hello მსოფლიოში ყველა დრო არ არის ყველა, რომ მყარი. 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 მე ვაპირებ წავიდეთ წინ და მიიღოს hello. 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 რასაც ის აკეთებს, სხვა, ვიდრე შედგენის dot slash hello, მიესალმები მსოფლიოში. 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 >> აუდიტორია: [INAUDIBLE] 556 00:25:17,370 --> 00:25:18,203 >> დევიდ ჯ Malan: დიახ. 557 00:25:18,203 --> 00:25:19,600 ასე რომ, noobie შეცდომა. 558 00:25:19,600 --> 00:25:22,394 ვამჩნევ, ეს არის სუპერ დახვეწილი, მაგრამ ვარსკვლავით აქ, tab, 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 ასე რომ, კონტროლის ან ბრძანება s უნდა შეინახოთ. 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 Recompiled. 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 ჩვენ უნდა შეიცვალოს, რის შედეგადაც zeros და პირობა, და dot slash hello. 568 00:25:43,450 --> 00:25:43,950 Wow. 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 >> ისე გამოდის, რომ მინდა Scratch, C მხარს უჭერს ცვლადები. 572 00:25:52,280 --> 00:25:54,790 და აღმოჩნდება, რომ, თუ გსურთ აქვს ცვლადი, მაღაზიები, 573 00:25:54,790 --> 00:25:57,300 არ არის რიცხვი, როგორც ჩვენ როგორც წესი, გააკეთა Scratch, 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 და კონვენციის მე ვაპირებ მოვუწოდო ჩემს ცვლადი s მხოლოდ იმიტომ, რომ ლაკონური, 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 ისევე, როგორც Scratch როდესაც მე კომპლექტი ბლოკი, 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 მე ვუთხარი, კომპიუტერი, მომეცი მეხსიერების ცვლადი, მას s, 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 ისე, როგორც ჩანს ციტირებით unquote, "Hannah". 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 >> აუდიტორია: [INAUDIBLE] 608 00:27:29,840 --> 00:27:29,980 >> დევიდ ჯ Malan: ჰო. 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 მსგავსად არაქისის კარაქი და ჟელე sandwich მაგალითად, 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 ეს ხდება სუპერ ზუსტი, და ეს ძალიან მარტივია, რაც უნდა დატოვონ off. 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 შეგიძლიათ ნაცვლად აქვს placeholder, როგორც პროცენტი s, რომელიც 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 ასე რომ, ისევე, როგორც ზოგიერთი Scratch კორპუსები, თქვენ შეიძლება არ 630 00:28:33,901 --> 00:28:36,150 არ ითამაშა, რომელზეც მათ თქვენი პროექტები ჯერ ან საერთოდ, 631 00:28:36,150 --> 00:28:38,250 ზოგიერთი Scratch ბლოკები აქვს ორი საშუალებებით. 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 არის placeholder, რას იმედი მაქვს, printf აპირებს ამ შეყვანის? 638 00:28:58,810 --> 00:29:01,470 639 00:29:01,470 --> 00:29:03,220 ის აპირებს მიესალმები Hannah, იმედია. 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 მე ვაპირებ დაბრუნდეს ქვემოთ აქ და აცხადებენ, რომ მიიღოს hello შევა. 643 00:29:10,701 --> 00:29:11,200 Oh. 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 ასე რომ, საუკეთესო უზენაესობის ცერის აქ, განსაკუთრებით მაშინ, როდესაც თქვენ დაწყებული out, 649 00:29:27,370 --> 00:29:29,370 არ უნდა განადგურდეს პერსონალის ბოლოში. 650 00:29:29,370 --> 00:29:31,220 ფაქტობრივად, მე სრულიად შეგნებულად მხოლოდ scrolled up 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 და მართლაც, ეს არის სუპერ arcane მომენტში. 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 დალაგება მსგავსი, მართლწერის შემოწმების in a ძალიან geeky გზა, მაგრამ მიზეზი აქ, 663 00:30:00,570 --> 00:30:02,840 და თქვენ იცით ამ მხოლოდ პრაქტიკა, 664 00:30:02,840 --> 00:30:06,390 რომ გამოდის, რომ string არ არსებობს 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 dot თ. 673 00:30:29,830 --> 00:30:31,230 რა არის header ფაილი. 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 იგი განსაზღვრავს ლოგიკური, როგორც მონაცემების ტიპის. 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 ასე რომ, ეს ხაზი კოდი ეუბნება შემდგენელი, hey, Clang, გამოიყურება 684 00:31:01,090 --> 00:31:03,570 ამ ფაილი მთელი bunch of კოდი, რომელიც 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 და თუ აინტერესებს მე უბრალოდ ვამბობ, კონტროლის ლ ყოველი გარკვევა ეკრანზე, 689 00:31:14,178 --> 00:31:15,500 ან შეგიძლიათ აკრიფოთ წმინდა. 690 00:31:15,500 --> 00:31:19,220 მე უბრალოდ აპირებს წავიდეთ წინ ახლა და ტიპი მიიღოს Hello, და ყველაფერი კარგად იქნება. 691 00:31:19,220 --> 00:31:22,550 კიდევ arcane გამომავალი, მაგრამ ეს არ არის მცდარი გაგზავნა. 692 00:31:22,550 --> 00:31:28,300 ახლა, თუ dot slash hello, და როგორც განზე, dot slash უცნობ საუკეთესო. 693 00:31:28,300 --> 00:31:30,430 ეს მხოლოდ იმას ნიშნავს, dot საშუალებით მიმდინარე დირექტორია. 694 00:31:30,430 --> 00:31:33,120 ასე რომ, თუ თქვენ ოდესმე გამოყენებული DOS, ან Linux, ან Unix 695 00:31:33,120 --> 00:31:35,410 თქვენ არ კეთდება რამე ისევე როგორც cd dot dot, სადაც 696 00:31:35,410 --> 00:31:39,220 dot dot ნიშნავს, რომ წავიდეს უკან დრო, ან უკან, ან უმაღლესი 697 00:31:39,220 --> 00:31:40,370 თქვენს დირექტორია. 698 00:31:40,370 --> 00:31:43,090 Dot მხოლოდ იმას ნიშნავს, გამოიყურება მიმდინარე დირექტორია. 699 00:31:43,090 --> 00:31:45,670 მინდა hello, რომელიც სწორედ აქ. 700 00:31:45,670 --> 00:31:47,750 და მართლაც, ახლა იგი აცხადებს, Hello ხანა. 701 00:31:47,750 --> 00:31:51,120 და თუ შევცვალო იგი ერთხელ მარია, გადააკომპილეთ 702 00:31:51,120 --> 00:31:55,650 ეს გახდის hello, dot slash hello, პროგრამა ინახავს იცვლება. 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 ან მისცეს მას მარია და Hannah ამ საკითხთან დაკავშირებით, რომ ჯარიმა. 706 00:32:03,430 --> 00:32:07,300 მე შემიძლია სახის ორივე მათგანი, მაგრამ ის არასდროს იქნება დინამიური. 707 00:32:07,300 --> 00:32:10,870 ისინი ვერ შეცვლის მას კიდევ შედგენილი ქვემოთ იმ zeros და პირობა. 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 ჩადება მიესალმები dot slash hello. 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 კარგით up. 718 00:32:36,360 --> 00:32:37,020 რა გქვია? 719 00:32:37,020 --> 00:32:37,445 >> პანჩო: პანჩო. 720 00:32:37,445 --> 00:32:38,361 >> დევიდ ჯ Malan: Pacho? 721 00:32:38,361 --> 00:32:39,609 კარგით up. 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 >> პანჩო: ძალიან დიდი მადლობა. 731 00:32:56,708 --> 00:32:57,636 >> დევიდ ჯ Malan: 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 ამის გაკეთება ბრძანებათა ზოლს კარგად, მაგრამ უფრო მეტი მოვა ჟ მითითებული 1. 751 00:33:41,200 --> 00:33:44,940 >> ვნახოთ, რა არის ამ პროგრამის აქ მოუწოდა, გველგესლა dot გ. 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 >> აუდიტორია: [INAUDIBLE] 757 00:33:58,417 --> 00:34:00,250 დევიდ ჯ Malan: ჰო, ასე int 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 ასე int for რიცხვი. 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, რა თქმა უნდა, ჰგავს მიიღოს სიმებიანი, 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 >> და შეამჩნია პროცენტი i ალბათ ნიშნავს, რა? 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 ეს მხოლოდ placeholders. 773 00:34:41,719 --> 00:34:42,219 მარჯვენა? 774 00:34:42,219 --> 00:34:45,149 პროცენტი s იყო სიმებიანი, პროცენტი i არის რიცხვი. 775 00:34:45,149 --> 00:34:47,690 არ იქნება პროცენტი ვ მცურავი წერტილი ღირებულება, რომელიც 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 Whoops. 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, aka 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 მოკლედ, ის ფაქტი, რომ მე ხედავს tilde slash სამუშაო გარემოს 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 ასე რომ, როდესაც მე dot slash გველგესლა, ის ამბობდა, არსებობს წესი 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 არსებობს გველგესლა dot გ, მაგრამ ეს ტექსტი დაფუძნებული გარემოს, 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 cd სივრცეში წყარო ერთ-ერთი ოთხშაბათი შევა და ახლა 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 dot slash გველგესლა, მომეცი რიცხვი. 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 No. 812 00:36:26,590 --> 00:36:27,350 გაიმეორეთ. 813 00:36:27,350 --> 00:36:29,060 OK. 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 მდგომარეობა ნულოვანი dot გ. 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 რატომ შენარჩუნება skipping მას? 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 >> დევიდ ჯ Malan: ჰო. 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 int ძირითადი ბათილად არის ეკვივალენტი ჩვენი როდესაც მწვანე დროშა დააწკაპებთ, 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 არის ამის slash ხაზი, და შემდეგ რამდენიმე ლაკონური სიტყვა, 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 და ეფუძნება წინა ქცევა, როგორც ჩანს, კიდევ int 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 და ეს არის თქვენში Scratch. 870 00:38:33,740 --> 00:38:36,140 მე, რომ მე ვარ ანალიზის მომხმარებლის input, 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 რა არის bug ამ პროგრამაში? 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 >> აუდიტორია: [INAUDIBLE] ნულოვანი. 878 00:38:53,150 --> 00:38:54,025 >> დევიდ ჯ Malan: ჰო. 879 00:38:54,025 --> 00:38:57,630 ასე რომ, თუ მე აკრიფოთ ნულოვანი, განვიხილოთ ზუსტად იმ შემთხვევაში, თუ კუთხეში შემთხვევაში, 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 >> აუდიტორია: [INAUDIBLE] 891 00:39:17,480 --> 00:39:17,990 >> დევიდ ჯ Malan: აღიარა? 892 00:39:17,990 --> 00:39:18,570 >> აუდიტორია: [INAUDIBLE] 893 00:39:18,570 --> 00:39:18,930 >> დევიდ ჯ Malan: ოჰ, შენ? 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 კარგით up. 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 LAUREN: Lauren. 900 00:39:28,210 --> 00:39:29,626 დევიდ ჯ Malan: Lauren, ყველა უფლება. 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 Nice შეხვდება ya. 905 00:39:39,100 --> 00:39:39,615 არარის ზეწოლა. 906 00:39:39,615 --> 00:39:40,156 LAUREN: ჰო. 907 00:39:40,156 --> 00:39:43,350 908 00:39:43,350 --> 00:39:46,270 >> დევიდ ჯ Malan: თუმცა ისევ და ისევ, თუ ეს Gamble, გეგმის მიხედვით, 909 00:39:46,270 --> 00:39:48,350 takeaway აქ იქნება შეიძლება, უბრალოდ, კიდევ ერთხელ, უნდა დაიწყოს 910 00:39:48,350 --> 00:39:51,080 შეამჩნია ნიმუშების და დასკვნის არსებული სინტაქსი 911 00:39:51,080 --> 00:39:55,420 როგორ სხვაგან თქვენ შეიძლება გამოხატოს საკუთარ თავს, არ pun განკუთვნილი, რათა 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 და frankly-- IDE 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 >> ასე რომ, მე მიყვარს line 23. 924 00:40:24,190 --> 00:40:26,400 99% გზა არსებობს. 925 00:40:26,400 --> 00:40:29,920 ვინმე გვინდა chime ერთად წვერი? 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 აუდიტორია: [INAUDIBLE] 937 00:40:55,192 --> 00:40:56,530 დევიდ ჯ Malan: კარგი. 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 ფაქტობრივად, Lauren, თუ არ გონება, ნება მომეცით ერთი tweak აქ, 946 00:41:14,790 --> 00:41:17,850 უბრალოდ უნდა შეესაბამებოდეს კი რაც ჩვენ ვნახეთ Scratch, რა 947 00:41:17,850 --> 00:41:21,080 არ მინდა ამის გაკეთება ხაზები 21 და 24, მხოლოდ ერთხელ დაფუძნებული 948 00:41:21,080 --> 00:41:23,290 იმაზე, თუ როგორ ჩვენ ეს Scratch, ალბათ? 949 00:41:23,290 --> 00:41:24,230 >> აუდიტორია: გადატანა up. 950 00:41:24,230 --> 00:41:25,605 >> დევიდ ჯ Malan: ჰო, გადატანა. 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 ასე რომ, მე უნდა მიიღოს ამ tweak. 955 00:41:37,380 --> 00:41:39,660 და მე უნდა დააყენოს ჩემი Curly გაუწიოს უკან აქ. 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 >> აუდიტორია: [INAUDIBLE] 972 00:42:21,565 --> 00:42:22,440 დევიდ ჯ Malan: ჰო. 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 No. 986 00:43:06,590 --> 00:43:08,280 ზოგადად, ნულოვანი არის ყალბი. 987 00:43:08,280 --> 00:43:10,860 სწორედ კონვენციის ჩვენ აპირებს cling რომ მიიწევს წინ. 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 ასე რომ თანაბარი ნიშანი უკვე გამოიყენება up დავალება, მარჯვნიდან მარცხნივ. 994 00:43:33,140 --> 00:43:35,110 უდრის უდრის საშუალებით უდრის. 995 00:43:35,110 --> 00:43:37,950 და თუ თქვენ ნამდვილად გსურთ თქვენი გონება უნდა იყოს მოხრილი, JavaScript და PHP, 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 რომ ჩვენ stumbled მასშტაბით ამ ორ პატარა რამ, რადგან ახლა თუ ჩვენ დაფიქსირება მათ, 1004 00:44:00,760 --> 00:44:06,240 და მე, რათა მდგომარეობა ნულოვანი dot slash მდგომარეობა ნულოვანი, 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 No. 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 აუდიტორია: [INAUDIBLE] ნულოვანი. 1026 00:44:41,050 --> 00:44:41,740 დევიდ ჯ Malan: ასე რომ ნულოვანი. 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 >> დევიდ ჯ Malan: უარყოფითი ერთი, და შესაძლოა, რაღაც ცოტა დიდია, 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 თუ თქვენ გავლა walkthroughs, ზოგადად 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 აუდიტორია: [INAUDIBLE] აიყვანეს დიდი და მცირე რაოდენობით. 1054 00:45:46,380 --> 00:45:46,484 დევიდ ჯ Malan: ჰო. 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 სადაც ერთი სხვა, რომ თქვენ შეგვიძლია გამოვხატოთ, როგორიცაა Microsoft Word. 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 და რას ნიშნავს ეს, ალბათ, წარმოადგენს, ampersand ampersand. 1063 00:46:12,695 --> 00:46:13,570 აუდიტორია: [INAUDIBLE] 1064 00:46:13,570 --> 00:46:13,680 დევიდ ჯ Malan: ჰო. 1065 00:46:13,680 --> 00:46:16,910 ეს უბრალოდ ნიშნავს, და რადგან ეს გამოდის, რომ ავტორები C 1066 00:46:16,910 --> 00:46:19,120 გამოიყენება ერთი ampersand, რომელიც თქვენ ალბათ ფიქრობთ, 1067 00:46:19,120 --> 00:46:22,430 იქნება სრულყოფილი ცნება და, უკვე გამოიყენება up, 1068 00:46:22,430 --> 00:46:27,300 ასე ampersand ampersand რეალურად იღებს შემთხვევაში ჩვენ რეალურად გვინდა. 1069 00:46:27,300 --> 00:46:30,610 >> მოდით ახლა stumble მასშტაბით ორი რამ. 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 ორაზროვნება dot გ. 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 მე არ კომენტარი ჯერ, და მე გააცნო პროცენტი ვ, 1078 00:46:52,140 --> 00:46:55,720 მაგრამ მე სწრაფად დასაწყისში განაცხადა, პროცენტი ვ ნიშნავს მცურავი წერტილი 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 დევიდ ჯ Malan: ჰო. 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 ჩადება ორაზროვნება dot slash ორაზროვნება და გაფრთხილების, ძალიან, 1095 00:47:26,360 --> 00:47:29,380 წელს Linux გარემოში, თქვენ არ უნდა აკრიფოთ გარეთ ორაზროვნება და მიიღოს 1096 00:47:29,380 --> 00:47:30,010 მთელი დღის განმავლობაში. 1097 00:47:30,010 --> 00:47:32,910 ეს ზოგადად, თუ მოხვდა Tab, ეს დასრულდება თქვენი აზრის თქვენთვის, 1098 00:47:32,910 --> 00:47:36,660 საფუძველზე სიტყვები, რომლებიც შესაძლებელია მიმდინარე დირექტორია. 1099 00:47:36,660 --> 00:47:37,160 OK. 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 რომ ჩანაცვლების სიმბოლო, dot 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 >> ნება მომეცით recompile მიიღოს ორაზროვნება. 1114 00:48:12,430 --> 00:48:15,320 1115 00:48:15,320 --> 00:48:18,356 ახლა dot slash ორაზროვნება. 1116 00:48:18,356 --> 00:48:18,930 OK. 1117 00:48:18,930 --> 00:48:19,780 Still უფლება. 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 თქვენი up და down ისრები გადახვევა მეშვეობით თქვენი ისტორია, 1123 00:48:31,800 --> 00:48:35,476 ასე რომ თქვენ არ უნდა შეინარჩუნოს retyping ეს ბრძანებები, შევა. 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 ადგილებში out. 1127 00:48:43,260 --> 00:48:44,300 იქნებ ეს მხოლოდ fluke. 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 ის აკეთებს რაღაც deterministically. 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 და შენიშვნა მეგონა ჩვენ დატოვების შესახებ დღეს, ადრე კოლტონი თამაშობს us აქ, 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 Dammit. 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 [INAUDIBLE] გ dash ლ მ. 1151 00:49:39,340 --> 00:49:42,885 თქვენ ვაპირებთ ვხედავ ჯადოსნური incantation, რომ ჩვენ დავინახავთ, სანამ ხანგრძლივი. 1152 00:49:42,885 --> 00:49:45,780 [INAUDIBLE] ყველა უფლება. 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