დავით Malan: ეს არის CS50 და ეს არის დაწყების კვირაში ერთი. და რა გვეგონა ჩვენ მინდა გავაკეთოთ არის უკან დახევის ფარდა of მოწყობილობა, რომ ბევრი თქვენგანს ალბათ დადიოდა წარსულს წლების განმავლობაში, მაგრამ ალბათ არასდროს საკმაოდ ცნობილია, რა არის. ასე რომ, ამ მოწყობილობის სავარაუდოდ გამოიყურება ნაცნობი ყველაზე მეტად თქვენ უკვე. [ვიდეო აღწარმოების] -ტრიუმფი მათემატიკური და მექანიკური უნარი ეს დიდი ახალი ავტომატური კალკულატორი at ჰარვარდის უნივერსიტეტი. რთული პრობლემების მათემატიკასა დააყენა მეშვეობით მანქანა კოდირებული ფორმით ფირზე მათ ზუსტად მოგვარდება წუთი ფრაქცია საჭირო დრო ადამიანის გაანგარიშებით. დამზადებულია დააჩქარებს ყველა ფორმის მათემატიკური და სამეცნიერო კვლევის, გიგანტური მექანიკური ტვინის მუშაობა ამერიკის შეერთებულ შტატებში სამხედრო საზღვაო ფლოტის სანამ ომი დასრულდა. [END ვიდეო აღწარმოების] დავით Malan: ასე, რომ ის, რაც ხედავთ სამეცნიერო ცენტრი, რომელიც არის სადაც რომ მანქანა არის განთავსებული. რეალურად მხოლოდ ნაწილს. მხოლოდ ნაწილი ამჟამად გამოფენილია, და ეს მოწყობილობა მოუწოდა Mark I, და ეს იყო არსებითად ძალიან დიდი კალკულატორით. იგი მემკვიდრე Mark II, და ეს ეხლა Mark II, რომ ჩვენ რეალურად მიიღეთ ცოტა ლექსიკონში. ეს არის პირველი ჩაწერილი ინსტანციაში რაღაც თქვენ შესახებ, რომ გახდეს ყველა ვიცი, მეტი რა თქმა უნდა, სემესტრში - კერძოდ, შეცდომა. ასე რომ ერთ მომენტში ჩანაწერები II მოწყობილობა არ ფუნქციონირებს სათანადოდ, და იმ მჭიდრო ინსპექციის, იქ მართლაც bug - თვიანი - რომ moth - შიგნით. ხოლო მას შემდეგ, რაც, ჩვენ მოხსენიებული შეცდომები პროგრამების შეცდომები. ასე რომ, უფრო, რომ მოვა. საუბრის დროს, ვიდეო, ასევე, თუ არ უკვე, ვიცით, რომ CS50 არის აშკარად გადაიღეს. ლექციები, როგორც წესი, მოიმატებს მას შემდეგ, რაც კლასი ერთგვარი წინასწარი გათავისუფლების unedited ფორმატი, შემდეგ კი დღეს ან ორი შემდეგ ჩვენ დაფასოებული მაღალი გარჩევადობა და უმაღლესი ხარისხის ვერსია. გაიხსენეთ Vanessa, რომელმაც ბედი თამაშობს Google შუშა, რაც მე გაიხსენა, რომ დააკისროს ამ დროს. ასე რომ, თუ გვინდა, რომ ამუშავება შემდეგ კლასი და ითამაშოს, მათ უნდა იმუშაონ დღეს. და თუ გსურთ ნახოთ თუ რა Vanessa ვნახე მეორე დღეს, რა დაინახავთ აქ - ნება მომეცით დააყენებს მოცულობა აქ ჩემს ლეპტოპში. [ვიდეო აღწარმოების] -ნება მომეცით მდგომ ეს მხოლოდ. ყველა უფლება. ასე რომ შეეხოთ ამ. ყველა უფლება. OK, შუშა. ჩაწერა ვიდეო. ყველა უფლება. Vanessa? [END ვიდეო აღწარმოების] დავით Malan ყველა უფლება, მიზეზი რომ ეს არ უმეტესი თქვენ ბოლოს კლასი იმიტომ, რომ მე ჩაიარა ჩაწერას საათი რომ კადრები მიუთითებს თავს მას შემდეგ, რაც მე სათვალე ქვემოთ. ასე რომ, დღეს, მე დატოვეთ, მაგრამ მადლობა გადავუხადო თქვენ Vanessa ყოფნის ასეთი კარგი სპორტული. ამასობაში, რამდენიმე განცხადებები სანამ ჩვენ გაყალბებას წინ ანგარიშით დაასრულა. ასე რომ, ერთი, CS50 აქვს ტრადიცია აკეთებს რა შეგვიძლია რომ ცდილობენ ძალიან დიდი კლასი გრძნობენ მცირე. ხოლო მიმართ, რომ ბოლოს და ბოლოს, ყველაზე ყოველ სამშაბათს, ჩვენ შეიკრიბებიან რესტორანი სკვერი, ცეცხლი და ყინულის, 30 ან 40 თქვენი თანაკლასელები, პირადად, რამდენიმე აკადემიური პერსონალის და ჩვენ მხოლოდ ძალიან ჩვეულებრივი სადილი. ჩვენ ხშირად ვიწვევთ მეგობრებთან მრეწველობის, კურსდამთავრებულები კლასის, კურსდამთავრებულები კოლეჯის, უბრალოდ სტატისტიკა ყოველ სხვა up, ვისაუბროთ სიცოცხლე კოლეჯის, ცხოვრების კოლეჯის, და ასე შემდეგ. ასე რომ, თუ გვინდა, რომ მიიღოს ამ პირველი ასეთი სადილი ამ პარასკევს 1:15 PM, ხელმძღვანელი, რომელიც URL რაღაც მომენტში. ფართი არის შეზღუდული, ამიტომ ჩვენ ყველაფერს გავაკეთებთ პირველი მოდის პირველი ემსახურება. მაგრამ ჩვენ ეს კიდევ ერთხელ on განმეორებითი საფუძველზე, ასე რომ არ ინერვიულოთ თუ არ წავიდა ეს პირველი პარტია. ახლა თვალსაზრისით რესურსები curricularly მიერ რა თქმა უნდა, არსებობს მთელი slew და თუ არ გამოყვანილია up თქმა ნახვა უკვე, კერძოდ, ქვეშ ლექციები, თქვენ ნახავთ, რომ ყველაფერი ჩვენ გასულ კვირას არის, როგორც ვიდეო და გარკვეული ელექტრონული ფორმით. თუმცა მიღმა ვიდეო, თქვენ მოვძებნოთ რომ არსებობს ახლა სრული ტექსტი ჩანაწერები, მაგალითად, ყველა ლექცია. ასე რომ, თუ ჩვენ რეალურად დავუბრუნდეთ ამ ეკრანზე აქ Vanessa, და ნავიგაცია ბოლოში კუთხეში, თქვენ ნახავთ, რომ რეალურად, არა პარასკევი ლექცია, მაგრამ თუ ჩვენ დაბრუნდეს ოთხშაბათს, რადგან ამ ფუნქციის იღებს რამდენიმე დღის განმავლობაში, თქვენ ნახავთ, რომ თქვენ რეალურად დახევის up, უკეთესი ან უარესი, ყველა სიტყვა, რომელიც მე ან მოხალისე სცენაზე მან. და უფრო მეტი, ვიდრე უბრალოდ, რომ. თქვენ შეგიძლიათ რეალურად ძებნის, შეგიძლიათ დაწკაპეთ ნებისმიერი იმ სასჯელს, ნახტომი იმ მომენტში ვიდეო, ყველა მიმართულებით და ბოლოს მიღების მატერიალური ყველა მეტი ფუნქციონირებს. მაგრამ თუ ნეტავ არ შეასრულა ეს ასეთ დეტალი, თქვენ მოვძებნოთ, ამისთვის მაგალითად, ამ პატარა menu აქ 1.5x სიჩქარე, 2x სიჩქარე, ან i F მე უკვე საუბარი ძალიან სწრაფად თქვენთვის, 0.75x სიჩქარე. ასე რომ მიხვდებიან, ყველა, რომ არის ხელმისაწვდომი არსებობს თქვენთვის. მაგრამ ამის მიღმა, რადგან ლექცია, გააცნობიეროს რომ ჩვენ ასევე ამ რესურსების ხელმისაწვდომია ასევე. სლაიდები, მაგალითად კოდი, ყველაფერი, რაც მე ამის გაკეთება სცენაზე ან ადრე კლასის, ჩვენ ჩანაწერის იქ ასე რომ თქვენ შეუძლია ერთად სახლში ან Sanders. მაგრამ ის, რაც ჩვენ ასევე ფიქრობდნენ ჩვენ მინდა გაკეთება წელს პირველად ასევე მოგაწვდით walkthroughs ამ მაგალითს. უფრო მეტად, როგორც მე აისახება ღირებულება CS50-ს ლექციები, მე დაიწყო ეჭვქვეშ რამდენად სასარგებლოა ეს არის თქვენ ბიჭები რომ იჯდეს იქ, ჩემთვის დგომა აქ, და ჩემთვის გაიგო თქვენ, კერძოდ, როგორც მატერიალური, მაგალითები, კიდევ უფრო რთული. იმის გამო, რომ უცვლელად, გარკვეული რაოდენობის ე წუთზე, ვინმე ზონის გარეთ, და მაშინ მენატრება ზოგიერთი საკვანძო რისთვისაც გარკვეული მაგალითად, და მაშინ თქვენ არსებითად წავიდა დანარჩენი ნაწილი კლასის, რომელიც არ არის საუკეთესო გამოყენების თქვენი დრო, ან, მართლაც, ჩვენი ერთობლივად, როგორც კლასი. ასე რომ, რა გვეგონა ჩვენ მინდა ვცდილობთ გავაკეთოთ, განსაკუთრებით ზოგიერთი უფრო კომპლექსური მაგალითები, რომ მე შეიძლება არ გააკეთებს იუსტიციის კლასში, რომ ჩვენ შეიძლება არ გვაქვს დრო კლასში, ან შეიძლება უბრალოდ ზონაში დროს, არის ჩვენ ვაწარმოებთ სერია walkthroughs ამ მაგალითები ასე რომ, თუ თქვენ გადასვლა, რადგან მაგალითად, გასულ პარასკევს-ის ვიდეო გვერდზე აქ ქვეშ მაგალითები, დაინახავთ, რომ პარასკევის, იქ ახლა ეს ბმული walkthroughs. და ფორმატში ამ შეიცვლება დროთა განმავლობაში. ახლა ვიყენებთ მარტივ YouTube რეპერტუარი. მაგრამ რა მე ჩვენს წარმოების გუნდი ამის შემდეგ იყო გავლა თითოეულ და ყველა იმ მაგალითები კიდევ ერთხელ, იმედია მიუთითებს, გაცილებით უფრო დიდი სიწმინდე ზუსტად რა takeaways შეიძლება იყოს ან უნდა იყოს თითოეული. ასე რომ, თქვენ მოვძებნოთ, მაგალითად, გასული კვირას, ყველა ნულიდან მაგალითები ჩვენ გაიარა კეთდება ხაზოვანი ამ მოდის. ასე რომ, შეგიძლიათ ჩაერთოს თუ არა ჩაერთონ ეს მასალა. ნამდვილად თემა ამ კონკრეტული რა თქმა უნდა არის ის, რომ, ალბათ, უფრო გზა რესურსების, ვიდრე თქვენ შეიძლება აღიქვას მეტი რა თქმა უნდა, სემესტრში. მაგრამ ეს მიზანმიმართული. ეს ნიშნავს, რომ ასე რომ თქვენ, როგორც ინდივიდუალური სტუდენტთა თვითმმართველობის select ეფუძნება თქვენი სწავლის სტილი. ასე რომ, თუ ლექციების გაამართლა, დიდი. თუ სექციები გაამართლა, დიდი. თუ walkthroughs მუშაობა თქვენ უკეთესი, დიდი. ეს მართლაც იქნება თქვენი აირჩიოს რა რესურსები იმუშავებს საუკეთესო თქვენთვის. და ბოლოს, მადლობა ბიზნეს სკოლის კურსდამთავრებული of რა თქმა უნდა, ასევე კანონიკური მითითებული მწიგნობარი შენიშვნები. ასე რომ, ვიდრე თქვენ ბიჭები ხელმძღვანელები ქვემოთ ლექციების scribbling ქვემოთ რამ, რომ ამუშავება კლასი, ჩვენ, პერსონალი, მოგაწვდით, რაც ჩვენ გრძნობენ არის კანონიკური კომპლექტი შენიშვნები გასათავისუფლებლად თქვენ, რომ განადგურების, ისე, რომ თუ თქვენ ხართ აქ და ჩართული, თქვენ მართლაც დაკავებული თუ რა ხდება, თქვენი კლასელები ვაკეთებთ მდე ეტაპზე, რა არის up ეკრანზე, და არა უბრალოდ წერა ქვემოთ Verbatim რა მოხდა უკვე განაცხადა. ასე რომ მიხვდებიან, ყველა იმ რესურსის ხელმისაწვდომია თქვენ. Sectioning, ამ პასუხს კითხვა, დაიწყება ოთხშაბათს. ჩვენ არსებითად დაველოდოთ შემდეგ ყველაზე სხვა მეცადინეობა გაკეთდეს ისე, რომ ჩვენ შეგვიძლია შემცირდეს რიგი ცვლილებები რომ ჩვენ უნდა გავაკეთოთ. მაგრამ მალე ამ კვირის ბოლოს, დაწყებული კვირა, იქნება ერთ დროს ინსტანციაში რაც ჩვენ მოვუწოდებთ სუპერ სექციები. ეს იქნება გადაღებული მათთვის, ვინც ვერ დაესწრება და არსებითად, კურსის ხელმძღვანელები ფეხით us მეშვეობით საქართველოს C ნაწილი რა თქმა უნდა, მიმართ ბოლომდე პრობლემის დასახული, რაც იქნება ჩვენი პირველი C საფუძველზე პრობლემა ნაკრები. და ეს იქნება მხოლოდ სურვილისამებრ სექციები მოლოდინში, რაც გახდეს განმეორებითი სექციები გამოიწვია by კურსის 50 პლუს სწავლების სტიპენდიანტები ყოველკვირეული. კვირას ან ორშაბათს ან სამშაბათს, ჩვენ აქვს 90 წუთი სექციების ძალიან ტრადიციული გაგებით, რაც იქნება შესაძლებლობები ხელში და მეტი ინტიმური მიმოხილვა კურსის მასალა. გარეშე ado, ნება მომეცით წარმოგიდგინოთ კურსის ხელმძღვანელები, რომლებიც კულუარებში ჩემთან ერთად, მიღების ყველაფერი მოხდეს. თუ იმ დღეს აქ შემოგვიერთდებიან ჩემთვის, რობ და ლორენ და იოსებ და Lucas, ყველა რომელთაგან ყოფილიყო ერთად რა თქმა უნდა, გარკვეული დროის განმავლობაში. RJ მესამე ასეთი წევრი ჩვენი გუნდი. მან ვერ იქნება დღეს აქ, მაგრამ მან მთხოვა ნახოთ ფოტო მისი. მე არ ვარ დარწმუნებული, რომ მას სურდა ამ ერთი, მაგრამ იქ არის. და ნება მომეცით მხოლოდ საშუალებას იძლევა გუნდის ვთქვა კომენტარი პირველმა და დანერგვა თავს ისე, რომ თქვენ უნდა იცოდეს, მათ, ისევე როგორც თქვენი საკუთარი სწავლების თანამემამულე ეს ტერმინი. LAUREN Carvalho: Hi. ჩემი სახელი ლორენ Carvalho. მე ვარ რეზიდენტი პედაგოგი ამ Leverett სახლი. მე ასევე სუპერ აღფრთოვანებული უნდა იყოს ხელმძღვანელი მაუწყებლის CS50 წელს. CS50 არის ძალიან რთული დონის ასევე როგორც ძალიან დიდი კლასი, ასე რომ, თუ რაიმე შეშფოთება, თუ გრძნობს, როგორც თქვენ დაცემა უკან, შეგიძლიათ მივაწვდინოთ რომელიმე ჩვენგანი ზე heads@cs50.het, ან ჩემთვის, თუ მინდა მინდა თამაში, ჩემი ოქროს Retriever puppy. აი ლუკასი. LUCAS Freitas: Hey, ბიჭები. ჩემი სახელი Lucas Freitas. მე უმცროს [inaudible] კომპიუტერული მეცნიერებისა და ლინგვისტიკის. მე რეალურად ბრაზილია, და მე ასევე გააცნობიეროს აღმოსავლეთ აზიის კვლევები. ასე რომ, თუ თქვენ გაქვთ რაიმე შეკითხვები კომპიუტერული მეცნიერების ან ენაზე ან არაფერი, უბრალოდ ნება მომეცით ვიცი. ან CS50, განსაკუთრებით. JOSEPH Ong: Hi. მე ვარ იოსებ. მე ვარ უფროსი შესწავლა კომპიუტერული მეცნიერების Elliott სახლი. ასე რომ, ვნახოთ. ნახავთ ჩემს გარშემო ტარების ერთი ასეთი უზარმაზარი კამერები. მე ვარ რეზიდენტი პერსონალის ფოტოგრაფი 50 ისევე, და სტუდენტები ხშირად ზოგჯერ შეცდომა ჩემთვის აზიური ტურისტული. ასე რომ, თუ ხედავთ ჩემს კამერა, არ გაიქცა. უბრალოდ ღიმილი და ნუ ერიდება. და ვიმედოვნებ, რომ სარგებლობენ 50. მე სარგებლობდა ძალიან, როდესაც მე მას, ამიტომ მე TFing for ამ სამი წლის განმავლობაში. ROB BOWDEN: Hi. მე Rob. ეს არის ჩემი მეოთხე სემესტრში ერთად CS50. უბრალოდ დაამთავრა მაისში. ვიყავი KIRKLAND. მე აღფრთოვანებული ამ სემესტრის და იმედი მაქვს, რომ თქვენ ხართ ძალიან. დავით Malan: დიდი მადლობა, რომ ამ წლის ხელმძღვანელები და RJ ასევე. ასე რომ, რამდენიმე საბოლოო შენიშვნებს რესურსები. ერთი, ჟ მითითებული 0 უკვე up. ეს ერთი არსებობს მხოლოდ სტანდარტული გამოცემა, რომელიც განკუთვნილია მთლიანად კლასის. დაწყებული ჟ კომპლექტი 1, იქნება ჰაკერების გამოცემები საუკეთესო პრობლემა კომპლექტი, რომელიც, კიდევ ერთხელ, დაფარავს მასალა ცოტა მეტი გამოწვევა, ხოლო მაინც ეხება ზოგიერთ ამავე თემებზე. ნუ შევხედოთ რა თქმა ნახვა ამისათვის სპეციფიკაცია P კომპლექტი 0. სამუშაო საათები, ძალიან, ამ კვირაში დაიწყება, დღეს, ხვალ, ოთხშაბათს, და ხუთშაბათს სხვადასხვა სასადილო დარბაზები on campus. შეამოწმეთ cs50.net/ohs ოფისში საათი რა თქმა უნდა, და გააცნობიეროს ამ იქნება ძალიან ჩვეულებრივი შესაძლებლობები, რა თქმა უნდა, დაწყების სემესტრის მოვა მიერ თქვენი ნოუთბუქი თავის ტვინის შესვენება. მოტანაზე მეგობრები და სტატისტიკა up კურსის TFS და CAS ნებისმიერი კითხვა, რომელიც ალბათ. და მე ვერ ხაზი გავუსვა საკმარისი, თუნდაც ნულიდან და პრობლემა კომპლექტი 0, იქ ნამდვილად არ არის მითუმეტეს კითხვაზე. არ არსებობს სტუდენტი ძალიან არასასიამოვნო შეკითხვები. შეგიძლიათ ისარგებლოს ამ რესურსის. ეს იქნება recurringly მთელი სემესტრის როგორც იქნება CS50 იმსჯელებს. ეს არის რა თქმა უნდა ის ონლაინ დისკუსია ფორუმებში, რომ მისამართი არ არსებობს. რა ჩვენ ასევე არ განმავლობაში ლექციებს არის ასევე დავაკვირდეთ ამ წყალობით კურსის სწავლების გუნდი. ასე რომ, თუ თქვენ გაქვთ შეკითხვა დროს ლექცია, იმიტომ, რომ მე განაცხადა, რომ რაღაც ცუდად ან საერთოდ არ, ყველა საშუალებით, ვთხოვთ რომ რეალურ დროში, თუ თქვენ გაქვთ თქვენი ლეპტოპი ან ტელეფონი ვებგვერდზე და ჩვენ ყველაფერს გავაკეთებთ, რომ უახლოეს რეალური დრო, რეაგირება, რომ. არსებობს თუ არა რაიმე შეკითხვები CS 50? მაშინ ერთი ბოლო ნოტები აფეთქდა. ეს საკითხი SAT UNSAT. როგორც თქვენ დაასრულებს თქვენი სასწავლო ბარათები, თუ არ უკვე, გააცნობიეროს, რომ ყოვლისმომცველი ხედვა SAT UNSAT, ხელმისაწვდომია ყველა სტუდენტები, მართლაც რათა დაეხმაროს მიიღოს პირას გამორთვა რა თქმა უნდა ასე, ასე ვთქვათ, ასე რომ თუ თავს გვიან ღამით, 2AM, 3AM, მართლაც banging თქვენი უფროსი წინააღმდეგ კედლის სადაც თქვენ იცით, თქვენ 99% გზაში დასრულების, მაგრამ თქვენ აქვს ძალიან ბევრი სხვა რამ უნდა გააკეთოს, ვფიქრობ, უკეთესი გამოყენების, ხშირად, რა სტუდენტთა დრო არის მართლაც გადასვლა იმ სხვა რამ, ასე რომ შეგიძლიათ ოპტიმიზაცია თქვენი დრო გარშემო. და დაჯდა UNSAT არის ერთ მექანიზმი მეშვეობით, რომელიც თქვენ შეუძლია კომფორტს ფაქტი რომ 99% გზა არსებობს ერთმანეთისგან საკმაოდ darn კარგი. ანალოგიურად, ძალიან, თუ თქვენ მოვიდეს რა თქმა უნდა, არ წინასწარი ფონზე ან არ არის თითქმის იმდენი ფონზე, როგორც თქვენ ვფიქრობ თქვენი თანაკლასელები შესაძლოა,, ჭეშმარიტი ან ყალბი, გააცნობიეროს, რომ ეს არის შესაძლებლობა მიიღოს თქვენი ხელები ბინძური ერთად რა თქმა უნდა, თქვენს toes in წყალი, ასე ვთქვათ, ჰგავს მეც გააკეთა წლის წინ უღელტეხილზე / ვერ. მინდა აღვნიშნო, რომ გასულ კვირას, რომ ეს, რა თქმა უნდა, ისევე, როგორც სხვა არ ყოფილა ხელმისაწვდომი მიღება / ჩავარდება დროს, მე ალბათ არ ოდესმე გააძლიერა ფეხით კლასი, მიუხედავად იმისა, რომ მე, ხუთი კვირის მოგვიანებით, შეცვლა, ჩემი აზრით, რომელიც თქვენ შეიძლება ისევე, და გადართვის გადასცა ან წერილი ფასდება სტატუსი. ყველა უფლება. ასე რომ, ჩვენ შევხედე რამ, როგორიცაა ეს პარასკევი, და ჩვენ ძალიან სწრაფად მიმდინარეობს გადასვლას, რომ რაღაც უფრო cryptic დღეს. მაგრამ მაინც იგივე ძირითადი იდეა. რა იყო ზოგადი ტერმინი, რომ ჩვენ აღსაწერად თავსატეხი ცალი რომ ჰგავდა ეს? ასე რომ, განცხადებაში. და შეგიძლიათ ვუწოდებთ ნებისმიერი რიგი რამ. მაგრამ ჩვენ უბრალოდ ეძახით განცხადებით, და განაცხადი უბრალოდ ეუბნება პროგრამა - ან იმ შემთხვევაში, ნულიდან, Sprite - რაღაც. მიესალმე ამ შემთხვევაში. მსგავსი რამ ჩვენ ნაცვლად მოუწოდა რა? ჰო, ისე, ლოგიკური გამოხატულებაა. ლოგიკური გამოხატულებაა მართლა რაღაცა რომ ეს სიმართლეა თუ ცრუ და ა.შ. Scratch ამახვილებს მათ ამ ფორმის, არამედ ერთად კითხვის ნიშნის გადასცეს იდეა, რომ ამ კითხვაზე პასუხი არის ან ნამდვილი ან ყალბი, არა ერთი, 1 ან 0. და ჩვენ გამოიყენოთ ეს ლოგიკური გამონათქვამების შიგნით აშენებს ასეთი, რაც ჩვენ მოუწოდა რა? ასე რომ, მდგომარეობა ან ფილიალი. და ეს პირობა ხედავთ აქ Scratch ცოტა placeholder for თავსატეხი ცალი, რომ ფორმა, მიზანი რომლის, ასე რომ შეგიძლიათ გადაიტანეთ და ვარდნა მას თავზე და შემდეგ უკარნახოს პროგრამის თუ ეს ლოგიკური გამოხატვის მართალია, ამის გაკეთება ნაკრები მითითებები, ეს ნაკრები განცხადებებს, სხვას ამის გაკეთება სხვა ნაკრები საქართველოს მითითებებს. და გავიხსენოთ, რომ თქვენ ბუდე ეს ყველაფერი. მიუხედავად იმისა, რომ არსებობს ბევრი ოთახი ვიზუალურად რომ თავსატეხი ცალი, Scratch გაიზრდება და შემცირება შეესაბამება რაც არ უნდა თავსატეხი ცალი თქვენ გადაიტანეთ და ვარდნა იქ ასე რომ თქვენ რეალურად ბუდე ეს და აქვს სამი გზა fork in გზაზე. თუ, სხვა შემთხვევაში, სხვა. და თქვენ კი სცილდება, რომ მობუდარი შემდგომი და შემდგომი, როგორც საჭიროა. ასე რომ, ბოლოს, ვნახეთ აშენებს მოსწონს ამ, წინააღმდეგ შემთხვევაში, ცნობილია, როგორც ციკლი. და ეს არის მხოლოდ ის, რასაც აკეთებს რაღაც ისევ და ისევ და ისევ. ამ შემთხვევაში, ის ხდება, რომ სასრულ არაერთხელ, მაგრამ ჩვენ ასევე დაინახა მაგალითად, სადაც რიგი ჯერ მოვიდა ცვლადი, ამიტომ შეიძლება შეიცვალოს. ჩვენ ასევე ვნახეთ, მეორე კვარტალი საერთოდ მოუწოდა სამუდამოდ ბლოკი რომ მოგვცა მარყუჟის უსასრულოდ გრძელი. ასე რომ, კიდევ ერთი მშენებლობა რომ Scratch 2.0 აქვს - და იმ თქვენ უფრო კომფორტული წინასწარი ფონზე არის უკვე კარგად იცნობს ამ მშენებლობა - ეს ყველაფერი ჩვენ მოუწოდა რა? ასე რომ, ჩვენ მოუწოდა აღნიშნული ფუნქციების სხვაგვარად ცნობილია როგორც პროცედურები. აქ არის უმნიშვნელო აზრობრივი განსხვავება, მაგრამ ჩვენ მოვუწოდებთ მათ უბრალოდ ფუნქციები. და ფუნქცია, იმ შემთხვევაში, ნულიდან, არის საბაჟო თავსატეხი ცალი, რომ რომ თავად შეუძლიათ შექმნან ისე, რომ თქვენ გაქვთ ახალი თავსატეხი ცალი, რომ ამ შემთხვევაში, იქნება მოუწოდა ხველა, რომ როგორც ჩანს, მათ შორის ყველა სხვა ხელმისაწვდომი თავსატეხი ცალი ნულიდან. მიუხედავად იმისა, რომ MIT არ გამოგონება ეს თავსატეხი ცალი, გააკეთეთ. ასე რომ, ფუნქცია საშუალებას გაძლევთ შექმნათ ახალი ქცევა, მისთვის ფუნქციის სახელი და შემდეგ მას, ასე ვთქვათ. ნამდვილად გამოიყენოს იგი პროგრამების ისევ და ისევ და ისევ გარეშე უნდა ველოდოთ ვიღაცას მოსწონს MIT ქვემოთ გზა გამოგონება ახალ ფუნქციებს ნულიდან. თქვენ თავად შეგიძლიათ შექმნათ ეს თავსატეხი ცალი საკუთარ თავს, ხოლო შემდეგ reuse მათ საკუთარი პროგრამები. და ჩვენ დავინახავთ, განმეორებითი მაგალითად იმ დღეს და შემდგომი. ამიტომ დღეს, ჩვენ გარდამავალ ახლა რაიმე arcane. თუმცა, დღის ბოლოს, რაღაც უფრო ძლიერი და გამომხატველი და უფრო წარმომადგენელი გზა, რომ ვიქნებით მე ყველა სემესტრში მთელი რიგი ენათა - რომ ან კოდის წყაროს კოდი. და კოდების, თურმე არ არის ის რაც კომპიუტერი როგორც წესი, ფაქტობრივად მართავს. წყარო კოდი გამოიყურება მსგავსი რამ. ასე რომ, ეს, კიდევ ერთხელ, ალბათ, იმ მარტივი პროგრამის ჩვენ შეგვიძლია წერა ენის მოუწოდა C. ჩვენ დაიწყებს tease ამ გარდა ადრე დიდი ხნის განმავლობაში, და თუ ეს ნამდვილად არ ჰგავს ბერძნულ თქვენ, სწორედ ახლა, მერწმუნეთ. ფარგლებში მხოლოდ ორი კვირის დროს, ამ იქნება ძალიან ნაცნობი და რეალურად საკმაოდ წარმომადგენლობითი უფრო კომპლექსური მაგალითები, რომლითაც თქვენ ასევე უფრო კომფორტული. მაგრამ შეგიძლიათ არა მხოლოდ აწარმოებს ამ სახის კოდი როგორც წესი. თქვენ უნდა აქციოს ის, რაც კომპიუტერული თვითონ ესმის. ასე რომ, რომ, ჩვენ გვჭირდება რაღაც ჩვენ ვაპირებთ, რომ მოვუწოდო შემდგენელი. შემდგენელი არის პროგრამა, რომელიც იღებს წყაროს კოდი, ისევე როგორც უბრალოდ დაინახა, როგორც შეყვანა, და ის აწარმოებს zeroes და ვინც როგორც გამომავალი, წინააღმდეგ შემთხვევაში ცნობილია, როგორც ობიექტის კოდი. და ეს იმ zeroes და პირობა, რომ შეიძლება საკმაოდ მოსწონს ეს რომ საბოლოო ჯამში, მათ მიხვდნენ თქვენი Mac ან თქვენი კომპიუტერი. თუ თქვენ ოდესმე მოისმინა მარკეტინგი გამოხატვის Intel შიგნით, რომ მხოლოდ ნიშნავს, რომ კომპანია მოუწოდა Intel აქვს წარმოებული ტვინი თქვენი კომპიუტერის - სხვაგვარად ცნობილია როგორც CPU, ცენტრალური გადამამუშავებელი ერთეული - და ეს მხოლოდ, რაც ესმის ნიმუშების საქართველოს zeroes და მიიჩნიეს. ასე რომ, მიერ კონვერტაცია წყაროს კოდი შევიდა ობიექტის კოდი მეშვეობით ამ პროცესს აქ რომ ჩვენ ყველაფერს გავაკეთებთ რამდენიმე ბრძანებები რაღაც ცოტა, თქვენ ქმნის ნიმუში zeroes და პირობა რომ თანამშრომელთა Intel აქვს გადაწყვიტა წარმოადგენს გარკვეულ განცხადებებს. ახლა, მე არ საკმაოდ ვიცი, რომელიც არის, რომელიც მხოლოდ glancing ზე ეს zeroes და მიიჩნიეს. ყველაზე ადამიანები ამ დღეებში არ. მაგრამ სადღაც არსებობს ნიმუში zeroes და პირობა, რომელიც წარმოადგენს განაცხადი ბეჭდვითი. სადღაც შეიძლება იყოს სხვადასხვა მითითებული zeroes და პირობა, რომ წარმოადგენს ცნება სამუდამოდ ან ვიმეორებ 10 ჯერ ან თუნდაც meow, თუ ეს რეალურად პროგრამა, რომელსაც შეუძლია ახლდეს ხმები. ასე რომ, მოკლედ, ადამიანის ახლახანს გადაწყვიტეს, ჰგავს ჩვენ გააკეთა ASCII - ამისთვის ასო ანბანის გასულ კვირას - ადამიანები გადავწყვიტეთ, რომ თუნდაც უფრო რთული ნიმუშების zeroes და პირობა წარმოადგენს უფრო რთული ქცევის ისევე როგორც ბეჭდვის ან ამბობდა ან meowing. ასე რომ, დღეს, და უმეტესწილად შემდგომი ამ სემესტრში, ჩვენ მიიღოს მინიჭებული, რომ ვიღაცამ figured თუ როგორ უნდა გავაკეთოთ, რომ რუკების. მაგრამ ჩვენ, შეესაბამება ამ იდეას layering თავზე მუშაობის ადამიანები ვინც მოვიდა ჩვენს წინაშე, მიიღებს for მინიჭებული იმისა, რომ ეს ხდება ქვეშ Hood. მაგრამ ჩვენ ბევრად უფრო აინტერესებთ შენობა რამ, რაც უფრო საინტერესო თავზე ეს ყველაფერი. ასე რომ, რა თქმა უნდა, პირველი პროგრამა ჩვენ წერდა Scratch იყო ამ სუპერ მარტივი ერთი, Hello World. თქვენ შეიძლება ვიფიქროთ, ეს როგორც მთავარი პროგრამა, რომელიც არეგულირებს Scratch-ს ქცევის, როგორც გასულ პარასკევს. დღეს ჩვენ ვაპირებთ დავიწყოთ თარგმნა ნულიდან თავსატეხი ცალი შევიდა წყაროს კოდი ამ ენაზე მოუწოდა C ისე, რომ ის, რაც ჩანდა, ეს პარასკევი, დღეიდან შემდგომი, არის ახლა აპირებს გამოიყურება ასე. მართლაც უფრო cryptic. ეს არის საკმაოდ გადატანის და ერთგვარი გონება numbing სანახავად ყველა შეთავაზებებს და semicolons და ფრჩხილებში და სხვ. მაგრამ თუ დაიწყება იგნორირება რამე არ მესმის, და რეალურად გამოიყურება ერთი არსი თეთრი ტექსტი ეკრანზე, აუცილებლად ხედავთ, ისევე, როგორც მე, "Hello, world". რომ ხაზები ერთად purple განაცხადი დასაწყისშივე, და გამოდის რომ სიტყვით ძირითადი აპირებს გამოდიან კონცეპტუალურად ერთად, როდესაც მწვანე flag დაწკაპავთ. ასე რომ, სხვა სიტყვებით, ხოლო ნულიდან, ჩვენ შევასრულებთ Hello World პროგრამა იმ ორ თავსატეხი ცალი, დო, ჩვენ ვაპირებთ ამის შესრულება, ამ ოთხი გარკვეულწილად cryptic ხაზები. მაგრამ, როგორც ჩვენ dive სიღრმეში ამ, თქვენ ვხედავთ, რომ თითოეული იმ თეთრი გმირები ეკრანზე რეალურად რამდენიმე მნიშვნელოვანი დატვირთვა აქვს, და ჩვენი პროგრამების ვაპირებთ შეხედეთ სტრუქტურულად საკმაოდ იგივე. ასე რომ განაცხადი, უნდა იყოს ნათელი, თუ რა ჩანდა, "მიესალმები მსოფლიოს" წლის პარასკევი დაწყებას აპირებს ეძებს მინდა ამ ორშაბათს. printf ("hello, world"). წინ კიდევ რამდენიმე უცნაური წარმატებული ო, იქ ფრჩხილებში, არ არსებობს semicolons. თუმცა, დღის ბოლოს, გასაღები takeaway დღეს არის ის, რომ ყველა ვაკეთებთ არის თარგმნის რამ სურათზე ქმნის ტექსტის ფორმით. ასე რომ, მარყუჟის, რომ ჩანდა, ამ გასულ კვირას აპირებს ახლა გამოიყურება მსგავსი რამ. და ნება მომეცით განაცხადს, ისევე, როგორც Scratch, არსებობს სხვადასხვა გზა მისაღწევად იგივე მიზანი. იგივე C. მე არ გიჩვენებთ მხოლოდ გზა უნდა გააკეთოს ყველაფერი, მაგრამ ერთი გზა თარგმნა სამუდამოდ ბლოკის მარყუჟის in C. ეს აქ, ვიმეორებ 10 ჯერ. ეს ერთი ნამდვილად სახის მომატება მოსახვევებში ძალაუნებურად პირველად თქვენ მისი ნახვა. თუმცა განხორციელება, რომ ამიერიდან, ჩვენ ვაპირებთ გამოვიყენოთ ამისთვის მარყუჟის, ასე ვთქვათ. და ნათლად არის გარკვეული სინტაქსი, რომ ცოტა კომპლექსი იქ მე და თანაბარი და 0, მაგრამ კიდევ ჩვენ dive შევიდა, რომ დღეს შემდგომი, თქვენ მხოლოდ აპირებს ის, რომ ეს ყველაფერი უბრალოდ აკეთებს ზოგიერთი ძირითადი არითმეტიკული მისაღებად us from 0 მდე 9 ან 10 ამ შემთხვევაში. და ბოლოს, ერთად ცვლადები, თქვენ გავიხსენოთ რომ ცვლადის ნაწილი შენახვა. ისე, რაც ჩვენ გვქონდა შედეგად მარცხენა გასულ კვირაში აპირებს გამოიყურებოდეს ცოტა მსგავსი რამ ამ კვირაში. თუმცა ისევ და ისევ, უფრო, რომ მოვა. ჩვენ გვქონდა ლოგიკური გამონათქვამები, რომელიც გასულ კვირას, ჩანდა მოსწონს ეს. ამ კვირაში შემდგომი, ისინი აპირებენ დაიწყოს თვალი ცოტა იგრძნობა. ეს ერთი, ფაქტობრივად, ცოტა reassuring. ეს, ფაქტობრივად, თითქმის მარტივი როგორც მწვანე ბლოკად. მაგრამ აქ ჩვენ გვაქვს, კიდევ ერთხელ, ახალი syntax ერთად ampersands, მაგრამ შეგიძლიათ ალბათ მისახვედრია ხოლო Scratch, თქვენ ამბობენ-N-D, როგორც ჩანს, ამ C, ჩვენ თქმას ampersand ampersand. მაგრამ ეს ყველაფერი გახდება ბუნებრივი ადრე ხანგრძლივი. პირობები. გასულ კვირას, ჩანდა ამ მარცხენა. ამ კვირაში, მარჯვენა, ეს აპირებს ჰგავს, რომ. თუმცა ისევ და ისევ, გასაღები takeaway ისაა, რომ როგორც ხედავთ რამ, როგორიცაა, რომ უფლება, და მით უმეტეს, თუ ნაკლები კომფორტული, ეს ერთგვარი თქვენი ხელმძღვანელი, თქვენ ცოტა overwhelmed, რომ მე ნამდვილად არ ვიცი, როგორ შეიძლება შესაძლოა ამუშავება რომ ნულიდან - არ pun განკუთვნილი - უბრალოდ გააცნობიეროს, რომ ეს მართლაც იგივე იდეა, რომ ალბათ იგრძნო ასე უფრო მეტი ბუნებრივი წინა კვირაში. და მაშინაც კი, თუ არ საპირისპირო მხარეს ბურთის შევიდა პრობლემა კომპლექტი 0, I daresay თქვენ მოვძებნოთ რომ თავსატეხი ცალი საკმაოდ ინტუიციური, ან თუნდაც ისეთი დროთა განმავლობაში. მოდით ჩაყვინთვის სისტემაში დე, ჩვენს ხელში ბინძური აქ ეს პირველი მარტივი პროგრამა. და მარტივი, რა თქმა უნდა, ნათესავი. ამისათვის, მე ვაპირებ შეცვლას ეკრანებზე იმ მოწყობილობის დავრეკე CS50 მოწყობილობების. CS50 მოწყობილობების არის ნაჭერი პროგრამული უზრუნველყოფა, რომელიც კანდიდატად შიგნით ფანჯარა ჩემს Mac, და ასევე შეგიძლიათ აწარმოებს ის ფანჯრის შიგნით, ასევე PC, რომ საშუალებას აძლევს ჩემს აქვთ იგივე ზუსტი კომპიუტერული გარემოს ყველა TF, როგორც ყველა CA, როგორც ყველა სტუდენტს კლასი. იმის გამო, რომ CS50 მოწყობილობების ფაქტიურად ოპერაციული სისტემა მოუწოდა Linux - კონკრეტულად Fedora Linux - და ჩვენ, პერსონალი, დაკონფიგურირებული ინსტალაციას ეს ოპერაციული სისტემა ისე, რომ ერთი, აქ არის პატარა CS50 ლოგო შუა, ორი, იქ საბაჟო მენიუს ქვედა და სამი, pedagogically, ჩვენ გამარტივებული ინტერფეისი როგორც მაქსიმალურად ისე, რომ როდესაც თქვენ პირველი ჩატვირთვისას ეს რამ up საკუთარ Mac ან PC, თქვენ გაქვთ იგივე გარემოს როგორც ყველას, და თქვენ აქვს ყველა ინსტრუმენტი, რომელიც გჭირდებათ ასევე კურსის გარეშე ახერხებს თუ როგორ უნდა დააყენოთ თითოეული ყველა საშუალებას ინდივიდუალურად. ასე რომ, ეს გამოიყურება შედარებით ისევე როგორც Mac OS და Windows. მარცხენა ქვედა კუთხეში, თქვენ არსებითად აქვს დაწყება მენიუ სახის, ან ვაშლის მენიუ. და მაშინ აქვს, რაც ჩვენ ეჭვი იქნება თქვენი სამი ყველაზე გავრცელებული ხატები. ერთი არის Chrome. არსებობს ბრაუზერის შიგნით საქართველოს მოწყობილობების. ორი არის პროგრამა gedit, რომელიც დავინახეთ, მოკლედ გასულ კვირას, რაც უბრალოდ გრაფიკული რედაქტორი. და სამი არის Terminal პროგრამა, რომელიც არის შავი და თეთრი ფანჯერბი yesteryear, რომელიც საშუალებას გვაძლევს, აკრიფოთ მეტი arcane მაგრამ უფრო ძლიერი ბრძანებები ზე ჩვენი კლავიატურაზე. ამიტომ, მე ვაპირებ წავიდეთ წინ და დააკლიკეთ gedit და დანარჩენი დავრწმუნდი, რომ პრობლემა მითითებული 1, გათავისუფლდება პარასკევს, ნების ფეხით თქვენ მეშვეობით ყველა ეს იგივე ნაბიჯები. გავითვალისწინოთ, რომ მაქვს საკმაოდ მარტივია მომხმარებლის ინტერფეისი სამ ნაწილად. მარცხენა, მაქვს დიდი ცარიელი ფანჯრის მოუწოდა წყაროს კოდი. არის ის, სადაც მე ვაპირებ ვხედავ შემაჯამებელი ნებისმიერი კოდი, რომელიც ვწერ. On მარჯვენა მხარეს, მაქვს დიდი tab, გაკეთებული unsaved, და ეს სადაც ჩემი კოდი აპირებს წავიდეს. ხოლო ბოლოში, მე ჩართული Terminal ფანჯარა, შავი და თეთრი შეგახსენებთ, რომელზეც მე შემიძლია აკრიფოთ ბრძანებას ადგენს და აწარმოებს ჩემი პროგრამები - რომ არის, მიიღოს და აწარმოებს ჩემი გადაცემები. მოდით ახლა გადავიდეთ მარტივია. ნება მომეცით ახვიდეთ ფაილი, შენახვა. მე ვაპირებ წავიდეთ წინ და წასვლას jharvard. ასე რომ, მოწყობილობების, მიუხედავად იმისა, თუ რა თქვენი სახელია, ეკუთვნის ბიჭი სახელად ჯონ ჰარვარდის, რომელსაც აქვს jharvard სახლში კატალოგი, შიგნით, რომელიც ყველა თქვენი ფაილი წავა. ეს თქვენი საკუთარი ასლი თავის ანგარიშზე ამიტომ ჩვენ არ ვართ ყველა გაზიარება იგივე მყარ დისკზე. თქვენ უბრალოდ ილუზია ჯონ ჰარვარდის საკუთარი. წინასწარ, მე რეალურად დამონტაჟებული Dropbox. მოწყობილობის მოდის preprepared ერთად Dropbox ისე, რომ თუ რამე მიდის არასწორი დროს სემესტრის თუ თქვენ კონფიგურაცია თქვენი მოწყობილობების თავისი საჯარიმო Dropbox ანგარიში, ყველა თქვენი ფაილი ავტომატურად გამყარებული, ასე რომ თქვენ შეიძლება ძალიან ადვილად ფეხზე მათ. და მე ვაპირებ წასვლას ჩემი Dropbox კატალოგი, და იქ უკვე აპირებს უნდა იყოს რამდენიმე სხვა რამ არ არსებობს. მაგრამ მე ვაპირებ წავიდეთ წინ და წავიდეს ფაილი, შენახვა. მე ვაპირებ წასვლას jharvard, Dropbox, და აქ, მე ვაპირებ მისცეს ჩემი პროგრამა სუპერ მარტივი სახელი და გვარი, hello.c და შემდეგ გადარჩენა. ასე რომ, მე მაქვს იგივე ინტერფეისი არის. ერთადერთი, რაც შეიცვალა არის tab up დასაწყისში. ასე რომ, მე ძალიან სწრაფად აპირებს ხელახლა რომ პროგრამა სლაიდები მომენტში წინ. ასე რომ შევიდა ძირითადი (ბათილად) და შემდეგ printf, "Hello, სამყარო", გარკვეულწილად cryptic წარმატებული N, ახლო გაცემა, დახუროს ფრჩხილებში, მძიმით, და მაშინ Ctrl S გადარჩენა. და შეამჩნია როგორც განზე რა უბრალოდ გაჩნდა აქ ზედა მარცხენა. და ეს არ არის სასარგებლო, თუმცა სასარგებლო იქნება დროთა განმავლობაში. თქვენ უბრალოდ ვხედავ, კიდევ ერთხელ, შეჯამება კოდს, რომელიც დაწერილი. და რადგან მე დავწერე რაღაც მოუწოდა მთავარი, რის გამოც სიტყვა მთავარი popped მეტი არსებობს. მაგრამ იმ ნაწილს, ჩვენ არ არის საჭირო, რომ დღეს. ყველა უფლება, ამიტომ ამტკიცებენ, რომ ეს არის ჩემი პირველი პროგრამა, რომელიც დაწერილია პროგრამირების ენის მოუწოდა C. ჩვენ ვიცით პარასკევი რომ ის, რაც ამ რამ აპირებს ძალიან uninterestingly როდესაც მე აწარმოებს მხოლოდ არიან - სხვა სიტყვებით, ბეჭდვა, როგორც კომპიუტერი მეცნიერი ვიტყოდი - Hello World ეკრანზე. ასე რომ, ამის გაკეთება, შეამჩნევთ, რომ მაქვს დაცემას აქ ჩემს ტერმინალში ფანჯარა, და ახლა მე მაქვს მოციმციმე ზოლზე. მაგრამ ეს არის კლავიატურის მობილური ჩემი ჯონ ჰარვარდის სახლის დირექტორია. ეს კლავიატურის გზა მეშვეობით, რომელიც ნავიგაცია ჩემს მყარ დისკზე. ასე, რომ შეიძლება რეალურად არ აკრიფოთ ისევე როგორც მე გასულ კვირას მიიღოს hello, რადგან ეს თქმას არ წესი, რათა სამიზნე - რაღაც არასწორია. მე არ საკმაოდ ვიცი რა, რომ გაგზავნა საშუალებით, მაგრამ ეს იმიტომ, რომ ჩვეულებრივ, როცა ეს შავი და თეთრი ფანჯარა გაიხსნა, მე შიგნით ჯონ ჰარვარდის ნახვა სახლში დირექტორია. მაგრამ სად მე გადარჩენა რომ პროგრამა? ჩემი Dropbox საქაღალდეში. ახლა ყველა ჩვენგანი არ გაიზარდა ერთად კომპიუტერი, სადაც თქვენ მხოლოდ ორჯერ დააწკაპუნეთ on საქაღალდეში ხატი, იგი ხსნის და voila. არის ის, სადაც ფაილი სახელად hello.c იქნება. ასე რომ, ფაქტობრივად, მოდით გავაკეთოთ, რომ. ნება მომეცით წავიდეთ წინ და მინიმუმამდე gedit ისევე, როგორც თქვენ, მე Windows ან Mac OS. ნება მომეცით წასვლას მთავარი დასტაში ზედა მარცხენა. მე აქ რამოდენიმე საქაღალდეები. აქ არის ჩემი Dropbox საქაღალდეში. Checkmarks იმას ნიშნავს, რომ უკვე synced. წინ კიდევ რამდენიმე რამ აქ, მაგრამ შეამჩნია, რომ hello.c არის მართლაც უფლება არსებობს. ასე რომ, ამ Mac OS ან Windows, ჩვეულებრივ, მე ორმაგად დაწკაპეთ, რომ ეს ხსნის in რაც არ უნდა პროგრამის და მე კარგი წასვლა. მაგრამ ახლა, როგორც მინიმუმ, დღეიდან ჩვენ უნდა მიიღოს უკან გადადგმული ნაბიჯი მხოლოდ იმიტომ, რომ გადმოგცეთ ძირითადი იარაღები თქვენი ინსტრუმენტი ნაკრები ერთად, რომელიც უფრო მეტი ძლიერი რამ ადრე ხანგრძლივი. ამრიგად, ამ სწრაფი, მე უნდა გავაკეთოთ ეკვივალენტს ორმაგი დაჭერით Dropbox საქაღალდეში. და ამისათვის, მე ვაპირებ შეიტანოთ CD for შეცვლის დირექტორია, Dropbox, შევა. ახლა კი შეამჩნია ფრჩხილებში, ჩემი ე.წ. სწრაფი ახლა ამბობს, რომ მე ვარ tilde, პატარა squiggly სიმბოლო ზედა მარცხენა ყველაზე კლავიშები, / Dropbox. ეს არის მხოლოდ სტენოგრამის notation for ამბობდა ადამიანური, თქვენ ახლა შიგნით Dropbox ფოლდერში, უბრალოდ, თითქოს თქვენ ორმაგი დაწკაპავთ იგი. ასე რომ, ახლა თუ მე წავიდეთ წინ და ტიპის გააკეთოს hello, შევა, ვხედავ, ძალიან cryptic ბრძანება, მაგრამ არა შეცდომა, როგორც ჩანს, შემდეგ კი კიდევ ერთი მოციმციმე ზოლზე. და თუ გავიხსენებთ, ოდესმე ასე სწრაფად პარასკევს, ჩვენ ეს გავაკეთეთ. . / Hello. თქვენ შესახებ სანახავად არის შედეგი და ჩემი გაშვებული ეს პროგრამა, ან Mac OS და კომპიუტერის თვალსაზრისით, თუ მინდა ჩვეულებრივ გაორმაგდება დააწკაპუნეთ პროგრამა -. app პროგრამა ან. exe, ეს ხსნის ფანჯარა და გადის. ბეჭდვაში. / მიესალმები არის, ისევე, როგორც ორმაგი დაჭერით პროგრამის, რომ აწარმოებს, თუმცა გამოყენებით ჩემი კლავიატურაზე. შეიტანეთ, Hello World. და ეს არის ის. მოდით tease ამ გარდა, რომ ასე რომ არ გრძნობს, ძალიან ჰგავს ბერძნული. ასე რომ. / ნიშნავს რა? ვისაც ის ოდესმე navigated keyboard გარემოს მოსწონს ეს, რა dot გულისხმობდა? მიმდინარე დირექტორია. ასე რომ, მიმდინარე დირექტორია მხოლოდ სინონიმი საქაღალდეში. ასე განაცხადა dot ხაზი, მე ვამბობ, ვეძებთ პროგრამა მიესალმები in მიმდინარე დირექტორიაში - მიმდინარე საქაღალდეში. სხვა სიტყვებით, ჩემი Dropbox საქაღალდეში. სწორედ ამ მიზეზით, დააჭირეთ Enter შემდგომ რეალურად თანახმად პროგრამა. თუ მე ახლა ტიპის LS, შენიშნავს, რომ მე ვერ ვხედავ ყველაფერი ჩემს Dropbox საქაღალდეში. მიღება Started.pdf, რომელიც Dropbox გაძლევთ უფასოდ, ჩემი ფოტოსურათები კატალოგი, საჯარო დირექტორია, unsaved დოკუმენტი 1 რომელიც მე გააკეთა შეცდომა მომენტში წინ, foo.c, რომელიც მე ადრე დამზადებული დღეს, შემდეგ კი ორი ხაზი - hello.c და hello. Hello.c არის პროგრამა დავწერე ერთად gedit, და რა არის მიესალმები მწვანე? კომენტარი პირველმა მწვანე არის გაშვება. სხვა სიტყვებით, როდესაც მე გაიქცა ეს ბრძანება მომენტში წინ - ნება მომეცით გააფართოვოს უკან დრო - როდესაც მე გაიქცა მიიღოს hello, ეს არის ის, შუა ნაბიჯი აქ. და დასჭირდა hello.c არგუმენტად - AKA კოდის, - და ის წარმოებული ფაილი სახელად მიესალმები როგორც გამომავალი, რომელიც შეიცავს ყველა ამ zeros და პირობა. სწორედ ამ მიზეზით, საბოლოო ჯამში, მე შემიძლია რეალურად აწარმოებს ბრძანება მოსწონს. / hello. იმის გამო, რომ Intel Inside, ჩემი ოპერაციული სისტემა, Linux, ხსნის იმ zeros და პირობა, კვებავს მათ ტვინი ჩემი კომპიუტერი - CPU - და რომ CPU იცის, რა, აქ არის ნიმუში საქართველოს zeros და პირობა, რომელიც ამბობს, ბეჭდვა შემდეგ რამ ეკრანზე. რა არის შემდეგი რამ? Quote unquote, "Hello World". ყველა უფლება, ასე სწრაფად შემაჯამებელი ზოგიერთი ეს ბრძანებები ისე, რომ ჩვენ შეგვიძლია დავიწყოთ გადაჰყავდა გადასცა. ნება მომეცით გაფართოებული წინ სადაც ჩვენ შეჩერდით. და თქვენ გავიხსენოთ, რომ ჩვენ გვქონდა CD ჩვენს უკან დასრულდება მომენტში წინ. ეს არის, მე ვერ გაბედავს ამბობენ, რომ დღევანდელ მიზნებისათვის - იქნებ ამ კვირაში - მხოლოდ ბრძანებები ჩვენ შეიძლება უნდა შეიტანოთ ბრძანებათა შეგახსენებთ გარდა მიიღოს. ასე რომ, CD იდგა რა? შეცვლა დირექტორია. უბრალოდ ეკვივალენტს ორმაგი დაჭერით საქაღალდე. და როგორც გარდა, თუ თქვენ გაქვთ დაკარგული ოდესმე შიგნით თქვენი მოწყობილობების, როგორიცაა, რომ Dropbox - მინდა დავუბრუნდეთ ჩემს jharvard დირექტორია, - როდესაც ეჭვი, CD, შევა, არ სხვა სიტყვა, და ეს მხოლოდ zip არქივის თქვენი დაბრუნება სადაც თქვენ დაიწყო, რომელიც არის ლამაზი პატარა გადასვლის. ყველა უფლება, ასე რომ ახლა სხვა ბრძანებები. LS. მე აკრეფილი, რომ ერთი წუთით წინ. როგორ ფიქრობთ, LS დგას? ასე რომ, სია, არა? უკან დღე, როდესაც ადამიანები მოდიოდნენ ერთად ეს ბრძანებები, მათ ცდილობდნენ იყოს ეფექტური და საკმაოდ აკრიფოთ out L-I-C-თი შესვლა, ისინი გადაწყვიტა LS. კიდევ კარგი. ჟღერს საკმარისი მოსწონს სიაში. მოდით, უბრალოდ ტიპის LS შევა, და რომ ჩამოთვლილია ფაილებს ან ფოლდერებს, ჩემი მიმდინარე საქაღალდეში. mkdir, თქვენ ალბათ ვხვდები. სასტარტედ დირექტორია. ასე რომ თქვენ არ ზოგიერთი ფაილი მენიუ და აირჩიოს ახალი დირექტორია ამ გარემოში. უფრო მეტიც, ამას ბრძანება mkdir სივრცე და შემდეგ სახელი საქაღალდე რომ გსურთ მისი შექმნა, და ეს გაკეთდება. rm, თქვენ ალბათ ვხვდები. ამოღება ან წაშლა. ასე რომ, თუ გსურთ წაშალოთ ფაილი, თქვენ ხედავთ პრობლემა ნაკრები, თუ როგორ შეიძლება ამის გაკეთება. და rmdir, ამოიღონ დირექტორია. ასე რომ, კიდევ ერთხელ, მე, როგორც წესი, ფრენა მეშვეობით ამ დეტალებზე, ერთი, იმიტომ, რომ ისინი არ არის, რომ ბევრი fun დახარჯავს დრო, თუმცა ორი, ჩვენ მოგაწვდით in ბევრად უფრო დეტალურად ნებისმიერ რა თქმა უნდა, პრობლემა ადგენს, განსაკუთრებით სტანდარტული გამოცემები, ნებისმიერი ნაბიჯები რომ თქვენ შეიძლება უნდა შეიტანოთ ისე რომ თქვენ უფრო და უფრო comfy ერთად ამ საკითხზე. მაგრამ ახლა ნება მომეცით tease გარდა ერთი რამ. როდესაც ჩვენ აკრეფილი გააკეთოს კომენტარი პირველმა მომენტში წინ, ჩვენ ვნახეთ cryptic თანმიმდევრობით ბრძანებებს. ჩვენ ვნახეთ, კიდევ ერთხელ, მიიღოს hello. კარგი, მოდით ეს. მე ვიყავი დაახლოებით, რათა შეცდომა, მაგრამ [Inaudible] ახლა აღიარებს, მე ვიყავი დაახლოებით და ამის გაკეთება შეგნებულად. რა გავაკეთო არასწორი მხოლოდ ახლა? ჰო, ისე მე არ ვარ ამ Dropbox კატალოგი, რადგან ერთი წუთით წინ მე ნაბეჭდ CD და მხოლოდ დააჭიროთ. ეს zoomed მე უკან დავიწყე, რაც არ არის, სადაც ჩემი ფაილი არის, ამიტომ მე ნამდვილად უნდა გავაკეთოთ CD Dropbox შესვლის და ახლა შემიძლია rm კომენტარი პირველმა შესვლის, ამოიღონ რეგულარული ფაილი hello. არ ვიცი, რატომ ასე cryptic. ეს მხოლოდ იმას ნიშნავს, დარწმუნებული ხართ გსურთ წაშალოთ პირველი? შეგიძლიათ შეიტანოთ შ for დიახ, შესვლა, და ახლა გაქრა. ახლა კი, თუ მე აკრიფოთ გააკეთოს კომენტარი პირველმა კიდევ ერთხელ, ეს აპირებს ხელახლა ჩემს ობიექტის კოდი, ხელახლა იმ zeros და პირობა. მაგრამ რა არის გარიგება ეს ძალიან დიდი ხნის მართვაში? ისე, ჩვენ tease ამ გარდა ადრე ხანგრძლივი, მაგრამ - მე ვუთხარი ცოტა თეთრი ტყუილი ადრე - არ არის შემდგენელი. სასტარტედ არის პროგრამა, რომელიც ავტომატურად მოღვაწეების, თუ როგორ აწარმოებს შემდგენელი თქვენთვის. ასე რომ, ბრძანება, რომ თქვენ ნამდვილად უნდა იყოს გაშვებული, რათა გარდაქმნას hello.c შევიდა მიესალმები რეალურად გამოიყურება უფრო მოსწონს ეს. და ღმერთმა ნუ ქნას, რომ ჩვენ გვაქვს რეალურად მახსოვს, ოდესმე ტიპის, რომ მთელი რიგითობა ბრძანებები გარეთ. მიზნით გააკეთოს ცხოვრებაში არის გახსოვდეთ, რომ ხარისხის სირთულის for ჩვენ და ავტომატიზირება რა არ უნდა ძალიან tedious ნაბიჯები. მაგრამ შემიძლია სავარაუდო, რომ. ასე რომ თითო ეს პატარა მოტყუებას ფურცელი აქ, მე შეიძლება სავარაუდო რა, რომ ბრძანება აკეთებს უბრალოდ აკრეფით clang, რომელიც სახელი შემდგენელი ვიქნებით გამოყენებით ამ სემესტრში. იმ შემთხვევაში, თუ თქვენ ოდესმე გაკეთდეს iOS განვითარება iPhone ან iPad, Clang არის პროგრამა თქვენ გამოყენებული ფარგლებში xcode რომ თქვენი ნაკადი. Clang, თუმცა, არის კიდევ ერთი პროგრამა რომლის სახელიც შეგვიძლია ტიპის ბრძანება სწრაფი, და შემოღება ეს ახლა, შემიძლია წარმოგიდგინოთ ის, რაც არის ცოტა წარმომადგენელი ბრძანებები მოვა. ნება მომეცით, ამის გაკეთება ხელით. ასე რომ, ზემოთ hello, და ახლა შეამჩნია შემთხვევაში მე, უბრალოდ, როგორც საღი აზრის შესამოწმებლად - . / Hello, რას ვფიქრობ უნდა დაინახოს, თუ ამის გაკეთება? რაიმე სახის შეცდომა. ასეთი ფაილი დირექტორია. ასე რომ, ერთი, ფაქტობრივად, საკმაოდ პირდაპირი. ასე რომ, ახლა ნება მომეცით გარკვევა ეკრანზე. საკონტროლო უბრალოდ გაასუფთავებს ეკრანზე ამოიღონ ზოგიერთი distractions. ახლა კი მე ვაპირებ ხელით ტიპის clang-o მიესალმები hello.c. რა არის ეს დაახლოებით უნდა გავაკეთოთ? სწორედ იგივე რომ გააკეთა ჩვენთვის, მაგრამ მე გადაყარეთ ზოგიერთი ზედმეტია სიტყვები. Clang არის პროგრამა, რომელიც აპირებს მიიღოს. გ ფაილი, როგორც შემავალი და აწარმოოს zeros და პირობა როგორც გამომავალი. მაგრამ-o ამიერიდან, კვლავ გადართვის ან დროშას. ეს არის მხოლოდ techie ჟარგონი ამას ეს სიტყვა ამას ერთი ზოლში რომ როგორმე გავლენას ახდენს ქცევის პროგრამის თქვენ გაშვებული. ასე რომ, ჯერ არავის გვინდა მისახვედრია what-o თანაგრძნობას? გამოყვანის. უბრალოდ ვიღაცამ გადაწყვიტა-o ნიშნავს გამომავალი ფაილი სახელად მიესალმები და მიიღოს როგორც შეყვანის მიუხედავად ბოლო სიტყვა სწრაფი არის, hello.c, ასე რომ თუ მოხვდა შეიტანეთ ახლა, არაფერი ჩანს, რომ მოხდეს. და oddly საკმარისი, ამ სამყაროში პროგრამირების, თითქოს არაფერი ხდება, ეს არის ის, ალბათ, კარგია იმიტომ, რომ იქ არ არის შეცდომა გაგზავნა ეკრანზე. Hello, შეიტანეთ. ჩემი პროგრამა უკვე აწარმოებს. მაგრამ შემიძლია სულელური პატარა რამ, როგორიცაა ამ. clang-o, hihihi, hello.c, შესვლის, ახლა მე მაქვს იდენტურია პროგრამა დაასახელა hihihi. იგი იქცევა იგივე, მაგრამ სახელი განსხვავებულია. ასე რომ, ეს მხოლოდ იმის თქმა, რომ, თუ გსურთ რომ ზეგავლენა საქციელი პროგრამა, ჩვენ ვაპირებთ, უფრო და უფრო ვხედავ რამ მოუწოდა ბრძანების ხაზი არგუმენტები. ეს არის ხაზზე. თქვენ აკრეფით ბრძანებები. Ergo, ბრძანების მითითებით. სამეთაურო ხაზი არგუმენტები მხოლოდ სიტყვა ან ცოტა ცალი სინტაქსი, რომ რატომღაც გავლენას ახდენს ქცევის პროგრამები, რომ ჩვენ გაშვებული. ყველა უფლება, რომ არის, ალბათ, ყველაზე მოსაწყენი პროგრამის ჩვენ შეგვიძლია წერა და ვნახოთ. მოდით ახლა რომ რამე უფრო საინტერესო. ნება მომეცით წავიდეთ წინ და შევქმნათ ახალი ფაილი. მე ვაპირებ წავიდეთ წინ და გადარჩენა ეს ჯონ ჰარვარდის სახლის დირექტორია, როგორც, მოდით დავარქვათ custom.c, უნდა იყოს ცოტა საბაჟო პროგრამა. მე ვაპირებ გასადიდებლად ჩემს თავზე ჩანართების აქ და დაიწყოს თავიდან. ჩართეთ სტანდარტული stdio.h. უფრო, რომ მომენტში. int მთავარი (ბათილად), უფრო რომ მომენტში. printf ("hello, დავით"). ბევრად უფრო საინტერესო, არა? ასე რომ, ახლა, თუ - არა იმიტომ, რომ ჩემი სახელი, მხოლოდ იმიტომ, რომ ეს განსხვავებული - მიიღოს საბაჟო შევა. საბაჟო, hello, დავით. მაგრამ მაშინაც კი, რომ, ძალიან, არის თეთრი ტყუილი. ეს პროგრამა შეიძლება ასევე ეწოდოს david.c, რადგან ეს არ არის საბაჟო ქცევის ყველა. მართლაც, მე მინდა პროგრამა, რომელიც სთხოვს შესახებ მათი სახელი. ასე რომ, როგორ შემიძლია ამის გაკეთება? ისე, მინდა გითხრათ, გადახვევა მეტი აქ. მანამდე მე განცხადება ნულიდან, სანამ გამოყენება printf, სხვაგვარად ცნობილია როგორც ფუნქცია, ნება მომეცით პირველი ვთხოვთ შესახებ გარკვეული შეყვანა. ასე რომ, ამის გაკეთება, მე უნდა ამის გაკეთება რამდენიმე რამ. ერთი, მე უნდა ადგილას შესანახად მომხმარებლის ასახელებს შემდეგ მე ვთხოვე მას ან მისი მას. რა მშენებლობა შემიძლია უნდა გამოვიყენოთ ალბათ შესანახად ღირებულება ასე? განსხვავებულია. ასე რომ, განსხვავებით ნულიდან, სადაც თქვენ მხოლოდ მისაღებად ლამაზი თავსატეხი ცალი, აქ, ჩვენ უნდა გამოყენება, ცხადია, სიტყვა უნდა გამოხატავენ საკუთარ თავს. და ამიერიდან, ნებისმიერ დროს გსურთ სიტყვა ან ფრაზა, პროგრამირებაში, ჩვენ ვაპირებთ, მოვუწოდებთ, რომ მხოლოდ. ასე რომ, სიმებიანი არის სიტყვა ან ფრაზა. ეს რიგითობა ნულოვანი ან მეტი პერსონაჟი, უფრო ფორმალურად. და თუ გინდათ ასეთი ცვლადი არსებობს, უნდა ითქვას, მომეცი ერთი. და გზა, რომელიც თქვენ, რომელიც ამბობენ სიმებიანი s მძიმით, სადაც შეიძლება იყოს არაფერი გსურთ. ფაქტობრივად, s ცოტა underwhelming. ნება მომეცით წავიდეთ წინ და მეტი ნათლად ეძახით სახელი. მომეცი სიმებიანი მოუწოდა სახელი. მაგრამ ახლა, რა არის ადამიანის სახელი იყოს? ისე, თუ ადამიანის არ აკრიფოთ არაფერი in, ცხადია, იქ ხდება არ უნდა იყოს ღირებულების სახელი. და აღმოჩნდება, დო, თუ არ მისცეს ცვლადი ღირებულება, იგი აპირებს აქვს ნაგვის მნიშვნელობა. შესაძლოა გარკვეული შემთხვევითი zeros და პირობა, ასე რომ, თქვენ მხოლოდ აპირებს ვხედავ ნაგვის, მართლაც, ეკრანზე თუ ცდილობენ ცარიელია იგი. მაგრამ შემიძლია დაფიქსირება, რომ განაცხადა, რეალურად, მაღაზიის შიგნით სახელი შემდეგ მნიშვნელობა. ისე შესანახად ღირებულებების ცვლადები არის თუ თქვენ გაქვთ ცვლადი სახელი დატოვა, თქვენ უნდა როგორღაც დააყენა, რაც თქვენ გვინდა მაღაზიის მას უფლება, და სინტაქსი, რომ აპირებს უნდა იყოს შემდეგი სახით. ჩვენ არ უნახავს ეს ადრე, მაგრამ მიიღოს on რწმენა ერთი წუთით, რომ არსებობს არსებობს კიდევ ერთ განცხადებას მსოფლიოში რომ მე ვაპირებ ერთხელ მოვუწოდებთ ფუნქცია, და ეს ფუნქცია მოუწოდა მიიღოს სიმებიანი. გარდა ამისა, ეს ფაქტიურად, რომ. ეს რატომღაც იღებს რიგითობა გმირები ადამიანის და შემდეგ აკეთებს რაღაც ეს. და ეს იმას ჰგავს cryptic სინტაქსი. ჩვეულებრივ, თუ თქვენ იყენებთ თანაბარი ნიშნები - თქვენ ამ სამყაროში, ვთქვათ, ალგებრა და თქვენ რეალურად ამბობდა x უდრის 1. აქ ჩვენ არ ვამბობთ, რომ სახელი შეადგენს მიიღოს სიმებიანი. ჩვენ ამბობდა მაღაზიის სახელი რა მარჯვენა მხარეს რომ ტოლობის ნიშანი. ტოლობის ნიშანი წარმოადგენს დავალება ოპერატორი. ეს სინტაქსი, რომელიც ამბობს, დააყენა რა არის მარჯვენა მხარეს შიგნით რა მარცხენა. ასე რომ სიმებიანი არის ახალი ნაწილი ფუნქციონალური, რომ არა მხოლოდ არ რაღაც - სთხოვს შესახებ for სიმებიანი - მას ასევე დააბრუნებს მას, ასე ვთქვათ. ასე რომ, ვნახოთ რა ხდება მოხდეს აქ. მე ვაპირებ წავიდეთ წინ არის და დააშორებს, და მე ვაპირებ მისაღებად რამდენიმე შეცდომები, ჩემი ზოლზე. მე ვაპირებ შეიტანოთ მიიღოს საბაჟო, შევა. Wow. მთელი bunch of შეცდომები. ყველა უფლება, ასე რომ ეს არის ერთგვარი აბსოლუტური, რა თქმა უნდა, პირველ რიგში, მაგრამ გამოდის, ყველა ეს ძალიან admittedly cryptic შეცდომა შეტყობინებები გულისხმობდა გარკვეული ნიმუშების, რომ დავიწყებთ სანახავად დროთა განმავლობაში. ასე რომ, ეს ერთი მე pluck off, იმიტომ, რომ ეს პირველი. გამოყენება გამოუცხადებელი იდენტიფიკატორი სიმებიანი. ეს მხოლოდ იმას ნიშნავს, რომ gedit, ან Clang, ამ შემთხვევაში, არ იცის რას ვგულისხმობ სიმებიანი. და ეს იმიტომ, რომ C, პროგრამირების ენა, იქ რეალურად არის ცვლადი ტიპის სიმებიანი. C არ იცის, რომ strings არსებობს. მაგრამ ჩვენ, CS50 თანამშრომლები, გააკეთოს. ასე რომ, წინასწარ კლასის, ჩვენ შექმნილი ფაილი სახელად CS50.h. ხოლო შიგნით ეს ფაილი - და უფრო syntax მოვა - შიგნით ფაილი განმარტება რა მხოლოდ განსაზღვრული სიტყვიერი როგორც სიმებიანი. ასე რომ, უბრალოდ დადების ეს ერთი ხაზი კოდის ჩემს პროგრამას, მე ახლა სწავლების gedit და მიიღოს და Clang ყველა თავის მხრივ, რა სიმებიანი არის. მე არ ვიცი, როგორ არის. რამდენიმე კვირაში, ჩვენ კანი უკან რომ ფენას. მაგრამ ახლა, იცით, რომ ეს გვასწავლის შემდგენელი რა სიმებიანი რეალურად არის. ასე რომ, ახლა ნება მომეცით გარკვევა ჩემს ტერმინალში ქვემოთ აქ. ნება მომეცით თავიდან გაუშვით მიიღოს საბაჟო და მე მოგვარდება ყველა იმ პრობლემებზე. ასე რომ, ეს, ძალიან, აპირებს იყოს განმეორებითი თემა. მე მხოლოდ წერდა 9 ხაზის პროგრამის ჯერ კიდევ მქონდა 18 ხაზი შეცდომები. სწორედ ასეთი დაშინება. მაგრამ მიხვდებიან, რომ ისინი ხშირად კასკადი ასეთი რომ ერთი პატარა შეცდომა იწვევს დაბნეულობა for შემდგენელი და იგი გამოიყურება ბევრად უარესი ის არის. ასე რომ, ახლა თავშეკავებულად დამკვირვებელი გაიგებს რომ მე მისაღებად ნახატზე შესახებ, მაგრამ მე რეალურად არ რასაც ეს? მე არ რეალურად აკეთებს არაფერი არა აქვს. ასე რომ, თუ მე რეალურად აწარმოებს საბაჟო ისევ, იგი აპირებს უბრალოდ ისხდნენ. რა ხდება? ჩემი პროგრამა, როგორც ჩანს, მოხდა შესახებ რა ხაზი, იტყვით? ამიტომ რეალურად მოხდა ხაზი 7. და ჩვენ არ უნახავს ეს ადრე, მაგრამ ხაზი 7, არსებობს, კიდევ ერთხელ, ამ განაცხადი, მიიღოს სიმებიანი. გარდა ამისა, ეს რა ნათქვამია მოხსენებაში. ეს ელოდება ახლა ადამიანის მიიღოს სიმებიანი. ეს არის სრულიად unintuitive ჩემთვის, ადამიანური, იმიტომ, რომ მე არ იქნა განუცხადა რა უნდა გააკეთოს. მაგრამ ნება მიბოძეთ წავიდეთ წინ on რწმენა და ნება მომეცით პრეტენზია იყოს Rob. შეიტანეთ. ეს არ არის პროგრამა I განკუთვნილი. ასე რომ, ჩვენ გვაქვს ჩვენი პირველი დღიური. მაგრამ მოდით ვეცადოთ, რომ მიზეზი საშუალებით ამიტომ ეს საქმე. პირველ რიგში, ნება მომეცით დაფიქსირება ამ პირველი პრობლემა. მე დავამატებ ხაზი, რომ ამბობს printf, რა არის შენი სახელი? მოდით, უბრალოდ გავაკეთოთ ახლო გაცემა, ახლოს ფრჩხილებში. ახლა ნება მომეცით თავიდან გაუშვით პროგრამა. პრობლემა. მე არ დაინახა, რომ. Right. მე არ recompile იგი. ასე რომ, ენა, როგორიცაა C, იმიტომ, რომ თქვენ შეცვლის კოდის არ ნიშნავს იმას, რომ თქვენ შეიცვალა თქვენი ობიექტის კოდი გენერირება ახალი ობიექტის კოდი, ახალი zeros და პირობა. თქვენ უნდა recompile. თუ მე ახლა თავიდან გაუშვით საბაჟო, შესვლა, ah, უფრო ნათელი. ჩემი სახელი Rob. ჯერ კიდევ buggy. და მე ამტკიცებენ, რომ არსებობს რამოდენიმე შეცდომები არის. ეს უბრალოდ გამოიყურება hideous, გულწრფელად. ისევე, მინიმალური, მე უნდა ჰქონდეს სივრცეში არსებობს, ან გადაადგილება კურსორი ახალ ხაზზე. და ფაქტობრივად, ახალი ხაზი. სწორედ ასეთი გასაღები ფრაზა, რომ ჩვენ ვნახეთ, მაგრამ არ არის განსაზღვრული. ამ გზით თქვენ გაქვთ ტექსტი გადატანა გადატანა მომდევნო ხაზი, თქვენ არ გააკეთებს. ეს გაუგებარია კომპიუტერს. ეს ჰგავს ორი დამოუკიდებელი ხაზები კოდის, არც რომლის სრულიად სწორი. თქვენ ნაცვლად უნდა იყოს უფრო ცხადი და ამბობენ, მომეცი ახალი ხაზი, რომელსაც ჩვენ წარმოვადგენ, გ ერთად წარმატებული ო. ასე რომ რამდენიმე ასეთი სიმბოლო. წარმატებული n დავაფიქსირებთ, რომ ესთეტიკური. ნება მომეცით recompile ჩემი პროგრამა. ნება მომეცით თავიდან გაუშვით ჩემი პროგრამა. ეს უკეთესია. ეს ჯერ კიდევ საკმაოდ პრიმიტიული, მაგრამ ასევე ჯერ კიდევ buggy. ასე რომ, არსებობს ერთი - მაშინაც კი, თუ თქვენ არასდროს პროგრამირდება ადრე, თქვენ ალბათ მიიღოს ვხვდები ზე, ამიტომ ეს პროგრამა ჯერ კიდევ სრულყოფილი. რა უნდა გავაკეთოთ, რომ მე არ კეთდება ჯერ არ გაქვთ? ასე რომ, მე უნდა რეალურად გააკეთებს რაღაც ერთად სახელი. ისევე, როგორც ნულიდან, შეიძლება რეალურად მივანიჭოთ ცვლადს, როგორიცაა n ან დავუპირისპირდეთ ისე, როგორც ბოლო კვირას - მნიშვნელობა. მაგრამ თუ არაფერი ერთად იგი, არაფერი მოხდება. ყველა უფლება, მოდით დაფიქსირება. ნება მომეცით აკრიფოთ ჩემს ცვლადი არსებობს, და ნება მომეცით დაცემას აქ. ნება მომეცით recompile, ნება მომეცით ხელახლა პერსპექტივაში, Rob. ახლა მე მხოლოდ იდიოტი, არა? ასე რომ, ეს არ არის ნამდვილად მისაღებად ჩემთვის რაიმე. მაგრამ ეს შესანიშნავად ბუნებრივი ინსტიქტი, მინდა ამტკიცებენ, არა? თუ ცვლადი ჰქვია სახელი, და მე მინდა, რომ იქ, რატომ არ მე აკრიფეთ იქ? ისე, რა თქმა უნდა, ჩვენ გვაქვს ზღვარის ახლა შორის, რა არის სიმებიანი? გავითვალისწინოთ რომ გაცემა unquote აქ, მიესალმები სახელი? ეს რეალურად თავისთავად სიმებიანი. ძნელია კოდირებული. ეს არ არის ადამიანის. ეს ჩემგან, ორიგინალური პროგრამისტი, მაგრამ მაინც სიმებიანი. ასე რომ, თუ ამ სიტყვის წერა N-A-M-E შიგნით საქართველოს სიმებიანი, თუ რა ხდება მიიღეთ ნაბეჭდი? ასევე, N-A-M-E. ჩვენ ნაცვლად სჭირდება ვუთხრა printf, არ ბეჭდვა გარეთ ფაქტიურად ასახელებს. ამობეჭდვა ღირებულება სახელწოდება. და ამისათვის, ჩვენ შემდეგ. და ეს მხოლოდ ადამიანის კონვენციას. ჩვენ ნაცვლად ამბობენ,% s, და რომ დგას სიმებიანი. და შემდეგ კი ბოლოს ჩემი ახლო შეთავაზებებს, მე ვაპირებ დააყენოს მძიმე და გაივლის მეორე არგუმენტი შევიდა ამ განცხადებას. მე ვაპირებ შეიტანოთ სახელს. ასე რომ, ახლა შეამჩნია, რომ ჩვენ გვაქვს ოდნავ new სინტაქსი. ჩვენ ჯერ კიდევ ორი ​​ფრჩხილებში და ამიერიდან მინდა ვთქვა, რომ პერსონალი შორის ფრჩხილებში წარმოადგენს არგუმენტები შევიდა ფუნქცია - საშუალებებით, რომლებიც რატომღაც აპირებს რომ ზეგავლენა მის ქცევას. ასე რომ, იმ ლოგიკით, რამდენი არგუმენტები ამჯამად printf ჩანს აღების, ამ მომენტში? ასე რომ, ეს, როგორც ჩანს, მიღების ორი, და ეს მართლაც იგულისხმება by მძიმე აქ. ასე რომ, ეს ერთი არგუმენტი შორის კვოტების. მიუხედავად იმისა, რომ მას აქვს მძიმე ის, ყველაფერი არის ამ შეთავაზებებს, რაც იმას ნიშნავს, ეს არის ერთ ერთი ხანგრძლივი სიმებიანი. მძიმე, ცვლადის სახელი. ასე რომ, ახლა ნება მომეცით დააშორებს. ნება მომეცით ხელახლა გაუშვით. Rob. Damn it, რა გავაკეთო არასწორად? ყველა უფლება, ასე რომ თქვენ უნდა recompile. ასე რომ, კიდევ ერთხელ, მარტივი შეცდომები, რათა დილით ისევ და ისევ. ასე რომ, ახლა თავიდან გაუშვით საბაჟო, ძარცვა, შესვლის და voila. ჩვენ ახლა საბაჟო პროგრამა. ასე რომ, ახლა აქვს პროგრამა, რომელიც გამოყენებით რამდენიმე მახასიათებლები , რომლებიც უნდა აღინიშნოს. ერთი, მე გამოყენებით CS50.h, წინააღმდეგ შემთხვევაში ცნობილია როგორც CS50 ბიბლიოთეკა. ხოლო შიგნით CS50 ბიბლიოთეკაში არის ფუნქციები, რომ სხვა ადამიანების წერდა - კერძოდ თანამშრომელი - რომ გამოიყენოთ, და მიიღოს სიმებიანი არის ერთი მათგანი. შიგნით ხაზი 2 stdio.h, და რატომ არის ეს იქ? მიიღეთ ვხვდები. რა არსებობს შიგნით სტანდარტული IO მშობელს? Printf. ასე რომ, printf, თქვენ ვერ ვხედავ ყველგან სხვაგან ეკრანზე. ეს უნდა მოდის კომპიუტერული რატომღაც. სად ის მოდის? ეს შიგნით - ის განცხადებით, ასე ვთქვათ, შიგნით ფაილი სახელად stdio.h. ახლა, ამ პერსონალის, ჩვენ დავბრუნდებით საბოლოოდ, რადგან ეს ცოტა გადატანის საშუალება იქნება. ეს ეხება ჩვენი დაბრუნების ტიპის. ეს ეხება არგუმენტი. მაგრამ დღეს, ჩვენ ორიენტირებული მხოლოდ აქ, ამ ხაზები. ასე რომ, სიმებიანი სახელი, მხოლოდ Recap, რა ამ გააკეთებს ჩემთვის? ასე რომ, ეს გამოაცხადა ცვლადი ტიპის სიმებიანი. ამიტომ ნიშნავს, რომ სიტყვებით, არა ნომრები. ისევე, როგორც განზე, თუ მე მინდა რომ ეს ნომერი, მე ვიტყოდი, რაღაც int. თუ მინდოდა მცურავი წერტილი ღირებულება, რაღაც ერთად ათობითი წერტილი, მე ვიტყოდი, float. მაგრამ დღეს, მე უბრალოდ თქვა სიმებიანი. და მე, ამ ცვლადის სახელი სახელი, მაგრამ მე ვერ არ უწოდა არაფერი. ფაქტობრივად, თავდაპირველად, მე ამას ს ეს აქ არის კიდევ ერთი განაცხადი. რამდენი არგუმენტები არის ეს განაცხადი აღების? ასე რომ, ეს უბრალოდ აღების ერთი, და რომ უბრალოდ ესთეტიკური დეტალს ჩვენებისას რაღაც ეკრანზე ჩემთვის. რა არის ეს ხაზი 8 აკეთებს ამ layman პირობები? ის მიღების მნიშვნელობა შესახებ - კერძოდ, სიმებიანი - და რას აკეთებს იგი? ეს არსებითად გადაცემის გადასცემს მას ბიჭი რომელიც მარცხენა მხარეს ტოლობის ნიშანი, ასე რომ ამ შემთხვევაში, სახელი ცვლადი შეიძლება რეალურად შესანახად იგი. და მაშინ printf კიდევ ერთი ინსტანციაში ფუნქცია. და ვამბობთ, რომ მოვუწოდო ფუნქცია. იმისათვის, რომ გამოიყენოთ ფუნქცია მოვუწოდებთ ფუნქცია. ეს რამ, როგორც ჩანს, იღებს ორ არგუმენტს. ეს ერთი, მძიმე, ეს ერთი. ეს ერთი თავად არის მხოლოდ სიმებიანი რომელიც შეიცავს placeholder. % S საშუალებით დააყენა სხვა სიმებიანი აქ. ასე რომ აყენებს სახელის მინიჭებას მძიმე, რომ ჩასმის რომ ჩემთვის. ასე, რომ შეიძლება გააკეთოს სხვა რამ მაინც. ნება მომეცით წავიდეთ წინ არის და ამის გაკეთება ცოტა სულელური პროგრამა, მაგრამ ნება მომეცით წაშლა, და ნება მომეცით შექმნა ციკლი. მიუხედავად იმისა, რომ ასეა. სიმბოლო ჭეშმარიტი აშკარად ყოველთვის იქნება ჭეშმარიტი. ასე რომ, თუ რა სახის მარყუჟის ვარ inducing წერილობით ხაზი ასე? ასე უსასრულო ციკლი, არა? უბრალოდ, მაშინ როდესაც მართალია. იქ არ არის გზა შემიძლია შეცვლის სიტყვა ჭეშმარიტი უნდა იყოს არაფერი, ასე რომ ეს არის უბრალოდ აპირებს სამუდამოდ. ასე რომ, თუ თქვენ ოდესმე შეეძლოთ პროგრამა თქვენს Mac ან PC, რომ როგორც ჩანს არ ჩაკეტილი, ან აკეთებს რაღაც და რაღაც, და უბრალოდ არ შეუძლია მიიღოს რამ დატოვა, სანამ არ გადატვირთეთ კომპიუტერი ან დახევის up სამუშაო მენეჯერი ან ანალოგიური აქ არის ასეთი მაგალითი. შემიძლია ვთქვა, რომ "მე ვარ buggy პროგრამა". დახურვა გაცემა, დახუროს ფრჩხილებში, მძიმით. ასე რომ, კიდევ ერთხელ, შეამჩნია ნიმუშები. მიუხედავად იმისა, რომ ზოგიერთი ჩვენი სინტაქსისიც ახალი, სიტყვით ხოლო, სიტყვით ნამდვილი, გაფრთხილების მაქვს იგივე სახის curly აფრთხილებს. მაქვს მძიმით და ფრჩხილებში. ასე რომ, ახლა მოდით წავიდეთ წინ და შეადგინოს ამ. მიიღოს საბაჟო, საბაჟო. ამრიგად, ამ ეტაპზე, ჩვენ არ უნდა გადატვირთეთ მოწყობილობის, ყველა უფლება? ასე რომ, ადვილი გაკვეთილი აქ არის ორი თითი, კონტროლის C, ჩვენ დატოვა, რომ პროგრამა. მაგრამ თქვენ ხედავთ, სწორედ ამიტომ ეს საგანი იმეორებდა თავად ისევ და ისევ. შემიძლია რაღაც პატარა უფრო რთული, როგორც teaser. მე ვაპირებ წავიდეთ წინ და ითქვას შემდეგი. იყიდება int, რაც მთელი რიცხვი, i მხოლოდ generic სახელი ვაძლევთ ყველაზე ცვლადები პროგრამირებაში, როდესაც თქვენ მხოლოდ დამთვლელი, შეადგენს 0. ნება მომეცით წავიდეთ წინ და აცხადებენ, ხოლო i არის, ვთქვათ, არანაკლებ 100, i პლუს პლუს. ჩვენ ყველაფერს თავში ამ სინტაქსის, მაგრამ ეს მხოლოდ იმას ნიშნავს, იყოს ისევ და ისევ. და რას მინდა აქ? Printf, "მე შეუძლია იმედი, რომ მე". ეს არის buggy პროგრამა. რა მე რეალურად აპირებენ აქ? პროცენტი არ s, მაგრამ თქვენ არ ვხვდები ამ. % D არ არის ათობითი რიცხვი. მძიმე i. ნება მომეცით გააფართოვოს უკან. ნება მიბოძეთ ახლა recompile ერთად მიიღოს. ნება მიბოძეთ ახლა გამეორება ერთად საბაჟო. შემიძლია ითვლიან რეალურად რა სწრაფად, როდესაც ვწერ პროგრამა მოსწონს ეს. ახლა რომ რამე ცოტა შემთხვევით. როგორ შესახებ მოდით ეს მე მეტია ან ტოლია 0. რა არის ეს ვაპირებთ გამოიწვიოს? ასე რომ, ლოგიკურად, ეს ასე არ არის ბრძენი, რადგან ახლა თუ მე გამეორება ამისა, გადათვლას, შემიძლია ახლა ითვლიან რეალურად, მართლაც მაღალია. სამწუხაროდ, დაახლოებით რაც შემიძლია რაოდენობა არის 4 მილიარდი, ეს ხდება მიიღოს ხოლო. რატომ არ დავტოვებთ, როგორც ჩვენი cliffhanger, პირობა დადო, რომ ოთხშაბათს, ჩვენ დავინახავთ, თუ ამ პროგრამის კეთდება. ორი, ჩვენ გააცნობს, თუ როგორ თავს დაწეროთ ფუნქცია ისე, რომ ძალიან სწრაფად, მიერ ოთხშაბათს, ჩვენ, როგორც ჩვენ გარდამავალი ნულიდან შევიდა C, დაიწყოს წერა ოდესმე უფრო რთული პროგრამა, რომელიც ბევრი რამ, ბევრად უფრო მეტი. ჩვენ ვნახავთ მაშინ. [ტაში] დინამიკები 1: მომდევნო CS50, Puzzle დღე წარმატებული იყო.