1 00:00:00,000 --> 00:00:11,375 2 00:00:11,375 --> 00:00:14,430 >> David MALAN: Ito ay CS50, at ito ay ang simula ng isang linggo. 3 00:00:14,430 --> 00:00:17,930 At kung ano ang naisip naming gawin ay hilahin pabalik ang kurtina ng isang aparato na ginagamit ng maraming 4 00:00:17,930 --> 00:00:20,970 ng marahil mo na lumakad na nakalipas ngayon para sa taon, ngunit marahil ay hindi kailanman lubos 5 00:00:20,970 --> 00:00:22,280 Kilala kung ano ito ay. 6 00:00:22,280 --> 00:00:26,000 Kaya device na ito ay marahil na tumingin pamilyar sa karamihan sa iyo sa pamamagitan ng ngayon. 7 00:00:26,000 --> 00:00:32,972 >> [Video playback] 8 00:00:32,972 --> 00:00:36,150 >> -Isang pagtatagumpay ng matematika at mekanikal kakayahan ito ay mahusay na bagong 9 00:00:36,150 --> 00:00:39,120 awtomatikong sa calculator Harvard University. 10 00:00:39,120 --> 00:00:43,220 Buhol-buhol na mga problema sa matematika ilagay sa pamamagitan ng machine sa form na naka-code sa 11 00:00:43,220 --> 00:00:47,840 tape ay tumpak na malulutas sa isang minuto fraction ng oras na kinakailangan para sa 12 00:00:47,840 --> 00:00:49,090 pantao pagkalkula. 13 00:00:49,090 --> 00:01:00,090 14 00:01:00,090 --> 00:01:04,080 >> Dinisenyo upang mapabilis ang lahat ng mga paraan ng matematika at pang-agham na pananaliksik, 15 00:01:04,080 --> 00:01:07,860 ang higanteng mekanikal utak kalooban gumana para sa Estados Unidos 16 00:01:07,860 --> 00:01:09,180 Navy hanggang digmaan end. 17 00:01:09,180 --> 00:01:18,180 18 00:01:18,180 --> 00:01:18,600 >> [END-playback ng video] 19 00:01:18,600 --> 00:01:21,980 >> David MALAN: Kaya na kung ano ang nakikita mo sa ang Science Center, na kung saan 20 00:01:21,980 --> 00:01:23,540 na machine na ngayon ang makikita. 21 00:01:23,540 --> 00:01:25,910 Ikaw lang talaga makita ang bahagi nito. 22 00:01:25,910 --> 00:01:28,800 Tanging ang isang bahagi ay kasalukuyang sa display, at iyon ay isang aparato na tinatawag na 23 00:01:28,800 --> 00:01:31,970 Markahan ang ako, at ito ay mahalagang isang talagang malaking calculator. 24 00:01:31,970 --> 00:01:36,250 Ito ay nagtagumpay sa pamamagitan ng Mark II, at ito ay mula sa Mark II na namin talaga 25 00:01:36,250 --> 00:01:39,210 makakuha ng isang bit ng leksikon. 26 00:01:39,210 --> 00:01:43,780 >> Ito ang unang naitalang pagkakataon ng isang bagay na ikaw ay tungkol sa upang maging lahat 27 00:01:43,780 --> 00:01:45,860 masyadong pamilyar sa ibabaw ng kurso ng semestre - 28 00:01:45,860 --> 00:01:48,460 lalo, isang bug. 29 00:01:48,460 --> 00:01:52,030 Kaya ito naka-out sa isa point ang Marcos II aparato ay hindi gumagana nang 30 00:01:52,030 --> 00:01:55,930 maayos, at sa mas malapit inspeksyon, nagkaroon nga ng isang bug - isang gamugamo - 31 00:01:55,930 --> 00:01:56,910 na gamugamo - 32 00:01:56,910 --> 00:01:57,610 sa loob. 33 00:01:57,610 --> 00:02:03,130 At mula pa nang, kami ay tinutukoy upang mga pagkakamali sa mga programa tulad ng mga bug. 34 00:02:03,130 --> 00:02:05,330 Kaya higit pa sa na sa darating. 35 00:02:05,330 --> 00:02:08,919 >> Nagsasalita ng video pati na rin, kung hindi pa, alam na CS50 ay 36 00:02:08,919 --> 00:02:09,669 malinaw naman kumuha. 37 00:02:09,669 --> 00:02:13,330 Ang mga aralin ay karaniwang pumunta up kanan pagkatapos klase sa uri ng isang pre-release 38 00:02:13,330 --> 00:02:17,240 hindi nai-edit na format, at pagkatapos ng isang araw o dalawa mamaya, kami maglagay ng isang mas mataas na resolution 39 00:02:17,240 --> 00:02:18,490 at mas mataas na kalidad na bersyon. 40 00:02:18,490 --> 00:02:21,800 Maaari mong isipin ang Vanessa, sino ay nagkaroon ng kapalaran ng pag-play sa Google Glass, 41 00:02:21,800 --> 00:02:23,540 kung saan ako remembered sa singilin oras na ito. 42 00:02:23,540 --> 00:02:26,450 Kaya kung nais mong makabuo pagkatapos ng klase at maglaro, dapat gumagana ang mga ito ngayon. 43 00:02:26,450 --> 00:02:30,816 At kung gusto mong makita kung ano Vanessa nakita ang iba pang mga araw, ano ang makikita mo 44 00:02:30,816 --> 00:02:35,260 dito - hayaan mo akong taasan ang lakas ng tunog dito sa aking laptop. 45 00:02:35,260 --> 00:02:35,690 >> [Video playback] 46 00:02:35,690 --> 00:02:37,620 >> -Kaya hayaan mo akong queue ito ay up. 47 00:02:37,620 --> 00:02:38,070 Ayos lang. 48 00:02:38,070 --> 00:02:40,930 Kaya hawakan ito. 49 00:02:40,930 --> 00:02:41,720 Ayos lang. 50 00:02:41,720 --> 00:02:43,470 OK, Glass. 51 00:02:43,470 --> 00:02:44,720 Mag-record ng video. 52 00:02:44,720 --> 00:02:47,240 53 00:02:47,240 --> 00:02:48,640 >> Ayos lang. 54 00:02:48,640 --> 00:02:50,446 Vanessa? 55 00:02:50,446 --> 00:02:50,870 >> [END-playback ng video] 56 00:02:50,870 --> 00:02:53,485 >> David MALAN: Ang lahat ng karapatan, sa gayon ang dahilan na hindi ito gumana para sa karamihan ng sa iyo 57 00:02:53,485 --> 00:02:56,540 ang katapusan ng klase ay dahil ako nagpatuloy i-record ang isang oras ng na 58 00:02:56,540 --> 00:02:59,505 footage na tumuturo sa aking sarili matapos Ko bang ilagay ang baso pababa. 59 00:02:59,505 --> 00:03:04,010 Kaya ngayon, makikita ko bang iwan ang mga ito off, ngunit salamat mong Vanessa para sa pagiging tulad ng isang 60 00:03:04,010 --> 00:03:05,420 magandang sport. 61 00:03:05,420 --> 00:03:08,330 >> Samantala, isang pares ng mga anunsyo bago kami sumulong ngayon. 62 00:03:08,330 --> 00:03:11,120 Kaya isa, CS50 ay may tradisyon ng paggawa kung ano ang aming makakaya upang subukang gumawa ng isang napaka 63 00:03:11,120 --> 00:03:12,630 malaking klase pakiramdam mas maliit. 64 00:03:12,630 --> 00:03:16,640 At patungo sa layuning iyon, karamihan sa tuwing Biyernes, magtipon namin sa isang restaurant sa 65 00:03:16,640 --> 00:03:20,160 ang parisukat, Fire at Ice, na may 30 o 40 ng iyong mga kaklase, sarili ko, ang ilan sa 66 00:03:20,160 --> 00:03:22,520 ang pagtuturo kawani, at kami lamang magkaroon ng isang napaka kaswal tanghalian. 67 00:03:22,520 --> 00:03:26,280 Madalas naming imbitahan ang mga kaibigan mula sa industriya, alumni ng klase, alumni ng 68 00:03:26,280 --> 00:03:30,340 kolehiyo, talagang lamang na makipag-chat sa bawat isa iba pang up, makipag-usap tungkol sa buhay pagkatapos 69 00:03:30,340 --> 00:03:32,260 kolehiyo, buhay sa kolehiyo, at ang gusto. 70 00:03:32,260 --> 00:03:35,570 Kaya kung nais mong makibahagi sa ito unang tulad tanghalian ito sa Biyernes 71 00:03:35,570 --> 00:03:38,640 1:15, pumunta sa na URL sa ilang mga punto. 72 00:03:38,640 --> 00:03:40,830 >> Space ay limitado, kaya ang gagawin namin unang dumating unang maglingkod. 73 00:03:40,830 --> 00:03:43,880 Ngunit kailangan naming gawin ito muli sa isang paulit-ulit na batayan, kaya hindi na mag-alala kung wala ka 74 00:03:43,880 --> 00:03:45,800 gumawa ito sa ang unang batch. 75 00:03:45,800 --> 00:03:48,960 >> Ngayon, sa mga tuntunin ng mga mapagkukunan na ibinigay curricularly sa pamamagitan ng mga kurso, 76 00:03:48,960 --> 00:03:51,500 mayroong isang buong liko, at kung hindi mo pa nakuha up ang website ng kurso ni 77 00:03:51,500 --> 00:03:54,310 na, sa partikular, sa ilalim ng mga aralin, makikita mo na ang lahat ng bagay 78 00:03:54,310 --> 00:03:57,070 namin ginawa noong nakaraang linggo ay doon, parehong sa video at ilang mga pag-uuri 79 00:03:57,070 --> 00:03:58,435 ng mga electronic na form. 80 00:03:58,435 --> 00:04:01,210 Subalit sa kabila ng mga video, makikita mo ang na mayroong ngayon ang buong teksto 81 00:04:01,210 --> 00:04:03,290 transcript, halimbawa, ng bawat panayam. 82 00:04:03,290 --> 00:04:08,260 >> Kaya kung kami talaga bumalik sa screen na ito dito sa Vanessa, at mag-navigate 83 00:04:08,260 --> 00:04:12,010 sa ilalim na sulok ng screen, makikita mo na talaga, hindi para sa 84 00:04:12,010 --> 00:04:15,060 Biyernes ng panayam, ngunit kung pumunta kami pabalik sa Miyerkules, dahil ang tampok na ito ay tumatagal ng 85 00:04:15,060 --> 00:04:17,870 ilang araw, makikita mong makita na maaari mong talaga hilahin pataas, para sa mas mahusay o para sa 86 00:04:17,870 --> 00:04:22,260 mas masahol pa, ang bawat salita na ako o isang volunteer sa entablado sinabi. 87 00:04:22,260 --> 00:04:23,270 At higit pa sa na. 88 00:04:23,270 --> 00:04:25,700 Maaari mong aktwal na hanapin ito, maaari mong mag-click sa anumang ng mga pangungusap, tumalon 89 00:04:25,700 --> 00:04:29,250 sa puntong iyon sa video, lahat patungo sa at pagtatapos ng ginawa ang lahat ng materyal na ang 90 00:04:29,250 --> 00:04:30,620 mas magagamit sa paglalayag. 91 00:04:30,620 --> 00:04:34,550 >> Ngunit kung mas gusto mong hindi sundin ito sa ganoong detalye, makikita mo ang, para 92 00:04:34,550 --> 00:04:39,710 Halimbawa, ang maliit na menu dito para sa 1.5x bilis, 2x bilis, o i F ko na 93 00:04:39,710 --> 00:04:42,100 magsalita masyadong mabilis para sa iyo, 0.75x bilis. 94 00:04:42,100 --> 00:04:45,190 Kaya mapagtanto ang lahat ng iyon ay Available doon para sa iyo. 95 00:04:45,190 --> 00:04:49,120 >> Ngunit lampas na, para sa aralin, Napagtanto na rin naming gumawa ng mga mapagkukunang ito 96 00:04:49,120 --> 00:04:50,530 Available din. 97 00:04:50,530 --> 00:04:55,240 Mga slide, halimbawa code, ang anumang bagay na ako gawin sa stage o nang maaga ng klase, 98 00:04:55,240 --> 00:04:58,160 Makikita post kami doon sa gayon ay maaari mong i-play kasama sa bahay o sa Sanders. 99 00:04:58,160 --> 00:05:01,280 Ngunit kung ano ang aming din naisip naming gawin ito taon para sa unang pagkakataon ding 100 00:05:01,280 --> 00:05:04,240 magbigay sa iyo ng walkthroughs ng mga halimbawa. 101 00:05:04,240 --> 00:05:08,120 Nagiging, bilang ko na sumasalamin sa halaga ng CS50 ng aralin, ko na nagsimula na 102 00:05:08,120 --> 00:05:11,450 sa tanong lamang kung paano kapaki-pakinabang ito ay para sa mga ka guys upang umupo doon, para sa akin upang tumayo 103 00:05:11,450 --> 00:05:15,020 dito, at para sa akin na makipag-usap sa iyo, lalo na bilang ang materyal, ang 104 00:05:15,020 --> 00:05:17,020 halimbawa, kumuha ng mas kumplikadong. 105 00:05:17,020 --> 00:05:20,790 Dahil walang paltos, makalipas ang ilang bilang ng mga minuto, isang tao kalooban zone out, at 106 00:05:20,790 --> 00:05:24,310 pagkatapos mong makaligtaan ang ilang mga pangunahing kaalaman ng ilan Halimbawa, at pagkatapos ay hindi ka talaga 107 00:05:24,310 --> 00:05:27,720 nawala para sa natitirang bahagi ng klase, na kung saan ay hindi ang pinakamabuting paggamit ng 108 00:05:27,720 --> 00:05:31,330 ang iyong oras, o, talaga, atin sama-sama bilang isang klase. 109 00:05:31,330 --> 00:05:33,920 >> At ano kaya naisip naming subukang gawin, lalo na para sa ilan sa mga mas 110 00:05:33,920 --> 00:05:37,700 kumplikadong mga halimbawa na maaaring hindi ko gawin hustisya upang sa klase, na hindi namin kapangyarihan 111 00:05:37,700 --> 00:05:41,560 magkaroon ng panahon para sa klase, o maaari mong lamang zone out habang, ay makikita kaming bumuo ng 112 00:05:41,560 --> 00:05:45,500 isang serye ng mga walkthroughs ng mga mga halimbawa upang kung pumunta ka sa, para sa 113 00:05:45,500 --> 00:05:51,410 Halimbawa, huling Biyernes ng video ng pahina dito sa ilalim ng mga halimbawa, makikita mo na 114 00:05:51,410 --> 00:05:54,050 para sa Biyernes, mayroong ngayon na ito mag-link sa walkthroughs. 115 00:05:54,050 --> 00:05:55,780 At ang format ng mga ay magbabago sa paglipas ng panahon. 116 00:05:55,780 --> 00:05:58,080 Para sa ngayon, kami ay gumagamit ng isang simpleng Playlist ng YouTube. 117 00:05:58,080 --> 00:06:00,980 >> Ngunit ano ang ginawa ko sa aming koponan ng produksyon pagkatapos ay maglakad sa pamamagitan ng bawat 118 00:06:00,980 --> 00:06:04,480 at ang bawat isa sa mga halimbawa muli, sana ay pagturo out sa mas malaking 119 00:06:04,480 --> 00:06:07,550 kalinawan kung ano mismo ang takeaways maaaring maging o dapat na mula sa bawat isa. 120 00:06:07,550 --> 00:06:10,560 Kaya makikita mo, halimbawa, mula sa huling linggo, ang lahat ng mga halimbawa sa scratch 121 00:06:10,560 --> 00:06:12,950 nagpunta kami sa pamamagitan tapos ka na linearly na sa fashion. 122 00:06:12,950 --> 00:06:15,840 Kaya huwag mag-atubiling upang hikayatin o hindi makisali sa mga materyal na ito. 123 00:06:15,840 --> 00:06:19,140 Talagang isang tema na ito ng partikular na kurso ay na mayroong marahil higit pa 124 00:06:19,140 --> 00:06:21,870 sa ang paraan ng mga mapagkukunan kaysa sa iyo maaaring posibleng makuha sa ibabaw 125 00:06:21,870 --> 00:06:23,260 kurso ng isang semestre. 126 00:06:23,260 --> 00:06:23,980 >> Ngunit iyon sinasadya. 127 00:06:23,980 --> 00:06:26,990 Ito ay nilalayong maging gayon ikaw bilang indibidwal na mag-aaral maaari self-piliin ang 128 00:06:26,990 --> 00:06:28,070 batay sa iyong pag-aaral ng estilo. 129 00:06:28,070 --> 00:06:29,790 Kaya kung aralin gumana para sa iyo, mahusay. 130 00:06:29,790 --> 00:06:31,090 Kung seksyon gumana para sa iyo, mahusay. 131 00:06:31,090 --> 00:06:32,930 Kung walkthroughs gumana para sa iyo ng mas mahusay, mahusay. 132 00:06:32,930 --> 00:06:36,980 Ito talaga ay nasa sa iyo upang piliin kung ano ang mga mapagkukunan ng ang pinakamahusay na gumagana para sa iyo. 133 00:06:36,980 --> 00:06:40,380 >> Panghuli, salamat sa isang nagtapos sa isang paaralan ng Siyempre, kami ay nagbibigay din ng isang canonical 134 00:06:40,380 --> 00:06:41,890 magtakda ng mga tala sa manunulat. 135 00:06:41,890 --> 00:06:46,270 Kaya sa halip na mayroon kang ulo guys pababa sa aralin scribbling down na 136 00:06:46,270 --> 00:06:49,880 mga bagay na dumating up sa klase, namin, ang staff, bibigyan ka ng kung ano ang aming 137 00:06:49,880 --> 00:06:53,410 pakiramdam ay isang canonical hanay ng mga tala sa magbakante ka na ng kaguluhan ng isip, upang 138 00:06:53,410 --> 00:06:57,150 kung ikaw ay dito at nakikipag-ugnayan, ikaw ay tunay na nakatuon sa kung ano ang nangyayari sa, 139 00:06:57,150 --> 00:07:00,110 kasama ng iyong mga kaklase ang ginagawa hanggang sa entablado, kung ano ang up sa screen, 140 00:07:00,110 --> 00:07:03,570 at hindi lamang sa pagsusulat down na walang bawas ang mga salita kung ano ang nangyari sa mga na-sinabi. 141 00:07:03,570 --> 00:07:06,730 Kaya mapagtanto ang lahat ng mga mapagkukunan Available sa iyo. 142 00:07:06,730 --> 00:07:09,210 >> Sectioning, sa mga kasagutan sa isang FAQ, Magsisimula ito Miyerkules. 143 00:07:09,210 --> 00:07:12,050 Kami mahalagang maghintay hanggang matapos karamihan ibang mga klase ay tapos na sa gayon maaari naming 144 00:07:12,050 --> 00:07:14,420 i-minimize ang bilang ng mga pagbabago na kailangan naming gawin. 145 00:07:14,420 --> 00:07:20,010 Pero paparating na ito katapusan ng linggo, na nagsisimula Linggo, magiging isa isang halimbawa ng oras 146 00:07:20,010 --> 00:07:21,360 ang tinatawag naming sobrang seksyon. 147 00:07:21,360 --> 00:07:23,990 Ang mga ito ay kumuha para doon sa mga hindi maaari dumalo, at mahalagang, ang 148 00:07:23,990 --> 00:07:28,880 ulo kurso ay ituturo sa amin sa pamamagitan ng ilang mga ng C na bahagi ng kurso, 149 00:07:28,880 --> 00:07:32,330 patungo sa isang dulo ng hanay problema isa, na ay magiging aming unang C batay 150 00:07:32,330 --> 00:07:33,140 problema set. 151 00:07:33,140 --> 00:07:36,240 At ang mga ito ay lamang maging opsyonal na mga seksyon sa pag-asa ng kung ano ang kalooban 152 00:07:36,240 --> 00:07:40,010 maging umuulit na mga seksyon na humantong sa pamamagitan ng 50 plus ang kurso ni 153 00:07:40,010 --> 00:07:41,600 pagtuturo Fellows linggu-linggo. 154 00:07:41,600 --> 00:07:45,130 Sa Linggo o Lunes o Martes, namin May 90 minutong seksyon sa isang napaka- 155 00:07:45,130 --> 00:07:48,020 tradisyonal na kahulugan, na kung saan ay magiging mga pagkakataon para sa mga kamay at higit pa 156 00:07:48,020 --> 00:07:50,800 kilalang-kilala pagsusuri ng materyal ng kurso. 157 00:07:50,800 --> 00:07:53,820 >> Nang walang karagdagang linggal, ipaalam sa akin upang ipakilala ulo ng kurso ni, sino 158 00:07:53,820 --> 00:07:57,380 sa likod ng mga eksena sa akin, paggawa ng lahat ng bagay mangyari. 159 00:07:57,380 --> 00:08:02,670 Kung ang mga dito ngayon ay maaaring sumali sa akin, Rob at Lauren at Joseph at Lucas, lahat 160 00:08:02,670 --> 00:08:05,770 ng kanino ay naging sa Siyempre para sa ilang oras. 161 00:08:05,770 --> 00:08:08,450 RJ ang pangatlong tulad miyembro ng aming koponan. 162 00:08:08,450 --> 00:08:11,720 Hindi siya maaaring maging dito ngayon, ngunit siya nagtanong sa akin upang ipakita ang isang larawan ng kanya. 163 00:08:11,720 --> 00:08:14,600 Hindi ako sigurado gusto niya ito isa, ngunit doon siya ay. 164 00:08:14,600 --> 00:08:18,350 >> At ipaalam sa akin lamang payagan ang mga koponan upang sabihin kumusta at ipakilala ang kanilang mga sarili upang 165 00:08:18,350 --> 00:08:22,260 makakuha ng mong malaman ang mga ito pati na rin ang iyong sariling pagtuturo kapwa term na ito. 166 00:08:22,260 --> 00:08:23,490 >> Lauren CARVALHO: Hi. 167 00:08:23,490 --> 00:08:24,740 Ang pangalan ko ay Lauren Carvalho. 168 00:08:24,740 --> 00:08:26,900 Isa akong residente turuan nang sarilinan sa Leverett House. 169 00:08:26,900 --> 00:08:31,120 Din ako sobrang nabigla na maging isang ulo TV para sa CS50 sa taong ito. 170 00:08:31,120 --> 00:08:35,830 >> CS50 ay isang napaka mapaghamong klase pati na rin bilang isang napakalaking klase, kaya kung ikaw 171 00:08:35,830 --> 00:08:38,780 may anumang mga alalahanin, kung sa palagay mo parang ka bumabagsak sa likod, huwag mag-atubiling 172 00:08:38,780 --> 00:08:43,840 makipag-ugnay sa alinman sa amin sa heads@cs50.het, o sa akin, kung ikaw ay 173 00:08:43,840 --> 00:08:46,330 i-play sa aking mga golden aso para sa pamamaril puppy. 174 00:08:46,330 --> 00:08:48,060 Narito ang Lucas. 175 00:08:48,060 --> 00:08:48,560 >> Lucas Freitas: Hey, guys. 176 00:08:48,560 --> 00:08:49,330 Ang pangalan ko ay Lucas Freitas. 177 00:08:49,330 --> 00:08:51,880 Ako ay isang junior [hindi marinig] 178 00:08:51,880 --> 00:08:53,630 computer science at aghamwika. 179 00:08:53,630 --> 00:08:58,030 Ako talaga mula sa Brazil, at ako din Napagtanto silangan Asian studies. 180 00:08:58,030 --> 00:09:00,740 Kaya kung mayroon kang anumang mga katanungan tungkol sa computer science o mga wika o 181 00:09:00,740 --> 00:09:01,870 anumang bagay, lamang ipaalam sa akin. 182 00:09:01,870 --> 00:09:05,630 O CS50, lalo na. 183 00:09:05,630 --> 00:09:05,880 >> Joseph ONG: Hi. 184 00:09:05,880 --> 00:09:06,265 Ako Joseph. 185 00:09:06,265 --> 00:09:11,360 Ako ay isang senior pag-aaral sa computer na agham sa Elliott House. 186 00:09:11,360 --> 00:09:13,500 Kaya, sabihin makita. 187 00:09:13,500 --> 00:09:16,530 Makikita mo sa akin sa paligid ng pagdala isa sa mga malaking camera. 188 00:09:16,530 --> 00:09:21,110 Ako ang resident photographer staff 50 para sa pati na rin, at mga mag-aaral ay madalas na 189 00:09:21,110 --> 00:09:25,140 kung minsan hindi sinasadya sa akin para isang Asian turista. 190 00:09:25,140 --> 00:09:29,220 >> Kaya kung makikita mo sa akin na may camera, hindi tumatakbo ang layo. 191 00:09:29,220 --> 00:09:32,960 Ngumiti lang at huwag kang mahiya. 192 00:09:32,960 --> 00:09:34,870 At Umaasa ako na masiyahan ka 50. 193 00:09:34,870 --> 00:09:38,690 Tatangkilikin ko ito talaga kapag ako kinuha ito, at iyon ang dahilan kung bakit ako TFing para sa 194 00:09:38,690 --> 00:09:41,164 mga tatlong taon. 195 00:09:41,164 --> 00:09:41,570 >> Rob BOWDEN: Hi. 196 00:09:41,570 --> 00:09:42,550 Ako Rob. 197 00:09:42,550 --> 00:09:46,240 Ito ang aking ika-apat na semestre sa CS50. 198 00:09:46,240 --> 00:09:47,430 Ko lang ang nagtapos Mayo. 199 00:09:47,430 --> 00:09:49,650 Ako ay sa Kirkland. 200 00:09:49,650 --> 00:09:53,670 Ako nasasabik para sa semestre, at Umaasa ako na ikaw ay masyadong. 201 00:09:53,670 --> 00:09:56,650 >> David MALAN: Salamat sa taong ito ni ulo, at sa RJ pati na rin. 202 00:09:56,650 --> 00:09:59,910 203 00:09:59,910 --> 00:10:02,310 >> Kaya ang ilang huling mga tala sa mga mapagkukunan. 204 00:10:02,310 --> 00:10:04,090 One, p itakda 0 ay up. 205 00:10:04,090 --> 00:10:06,620 Isa na ito ay umiiral lamang sa standard edition, na kung saan ay sinadya para sa mga 206 00:10:06,620 --> 00:10:07,610 kabuuan ng klase. 207 00:10:07,610 --> 00:10:10,940 Na nagsisimula sa p hanay 1, magkakaroon Hacker edisyon ng karamihan ng mga hanay ng problema, 208 00:10:10,940 --> 00:10:14,660 kung saan, muli, sasaklawin ang materyal may isang bit higit pa sa isang hamon, habang 209 00:10:14,660 --> 00:10:17,400 pa rin ang paghawak sa ilang ng parehong paksa. 210 00:10:17,400 --> 00:10:21,400 Gawin tumingin sa website ng kurso ni para na pagtutukoy para p hanay 0. 211 00:10:21,400 --> 00:10:25,140 >> Oras ng opisina, masyadong, ay magsisimulang ito linggo, ngayong gabi, bukas, Miyerkules, 212 00:10:25,140 --> 00:10:27,670 at Huwebes sa iba't-ibang dining halls sa campus. 213 00:10:27,670 --> 00:10:32,140 Tingnan ang cs50.net/ohs para sa opisina oras para sa mga kurso, at mapagtanto na ito 214 00:10:32,140 --> 00:10:34,430 Magiging napaka-kaswal na mga pagkakataon, oo nga, sa pagsisimula ng 215 00:10:34,430 --> 00:10:37,190 semestre, na dumating sa pamamagitan ng gamit ang iyong laptop na sa panahon ng bakasyon utak. 216 00:10:37,190 --> 00:10:40,500 Magdala ng ilang mga kaibigan at makipag-chat up ang TFs course at Cas na may anumang 217 00:10:40,500 --> 00:10:41,750 mga katanungan na maaaring mayroon ka. 218 00:10:41,750 --> 00:10:45,320 >> At Hindi ko bigyang-diin ang sapat, kahit na para sa scratch at problema hanay 0, mayroong 219 00:10:45,320 --> 00:10:47,110 talaga ay walang pipi tanong. 220 00:10:47,110 --> 00:10:51,200 Walang estudyante masyadong hindi komportable upang magtanong. 221 00:10:51,200 --> 00:10:53,940 Mangyaring huwag mag-atubiling upang samantalahin ng ang mapagkukunang ito. 222 00:10:53,940 --> 00:10:56,430 Ito ay magiging doon recurringly sa buong semestre, 223 00:10:56,430 --> 00:10:57,840 bilang ay CS50 Talakayin. 224 00:10:57,840 --> 00:11:00,900 Ito ay online na talakayan ang kurso ni forum sa address na iyon doon. 225 00:11:00,900 --> 00:11:04,490 >> Ano gagamitin din namin gawin sa panahon ng aralin ay ring subaybayan ito, salamat sa 226 00:11:04,490 --> 00:11:05,580 pagtuturo koponan ng kurso. 227 00:11:05,580 --> 00:11:08,390 At kaya kung mayroon kang isang katanungan sa panahon ng magbigay ng panayam, dahil sinabi ko ng isang bagay 228 00:11:08,390 --> 00:11:11,690 mahina o hindi sa lahat, sa pamamagitan ng lahat ng paraan, magtanong na sa real time kung mayroon kang ang iyong 229 00:11:11,690 --> 00:11:15,700 laptop o telepono sa website, at gagawin namin ang pinakamahusay na sa malapit sa real time upang 230 00:11:15,700 --> 00:11:17,410 tumugon sa mga iyon. 231 00:11:17,410 --> 00:11:21,500 >> Mayroon bang anumang mga katanungan tungkol sa CS 50? 232 00:11:21,500 --> 00:11:23,930 Pagkatapos ng isang huling tala ng mina. 233 00:11:23,930 --> 00:11:25,530 Na isyu ng SAT UNSAT. 234 00:11:25,530 --> 00:11:28,550 Habang ikaw ay i-finalize ang iyong mga card pag-aaral, kung hindi pa, nauunawaan natin na ang 235 00:11:28,550 --> 00:11:32,360 overarching pananaw ng SAT UNSAT, magagamit para sa lahat ng mga mag-aaral, talaga 236 00:11:32,360 --> 00:11:36,350 upang makatulong na tumagal ng gilid off ng isang kurso tulad nito, kaya na magsalita, upang kung ikaw 237 00:11:36,350 --> 00:11:40,510 mahanap ang iyong sarili sa late night, 02:00, 03:00, talaga banging iyong ulo up laban sa 238 00:11:40,510 --> 00:11:43,960 ang wall kung saan alam mong ikaw ay 99% ng ang paraan doon upang makumpleto, ngunit sa iyo 239 00:11:43,960 --> 00:11:47,510 may kaya maraming iba pang mga bagay na maaaring gawin, Sa tingin ko ng isang mas mahusay na paggamit, madalas, ng 240 00:11:47,510 --> 00:11:51,260 mga mag-aaral 'ng oras ay sa katunayan lumipat sa mga iba pang mga bagay sa gayon maaari mong 241 00:11:51,260 --> 00:11:52,780 optimize ang iyong oras lahat sa paligid. 242 00:11:52,780 --> 00:11:56,950 At Sab UNSAT ay isa mekanismo sa pamamagitan ng kung saan maaari mong gawin ginhawa sa katotohanan 243 00:11:56,950 --> 00:12:00,530 na 99% ng ang paraan doon ay pa rin medyo darn magandang. 244 00:12:00,530 --> 00:12:03,790 >> Katulad nito, masyadong, kung nag-dumating sa kurso na walang paunang background o 245 00:12:03,790 --> 00:12:07,960 hindi halos bilang magkano bilang background mo Sa tingin iyong mga kaklase maaaring mayroon, totoo 246 00:12:07,960 --> 00:12:13,210 o mali, mapagtanto na ito ay isang pagkakataon upang makuha ang iyong mga kamay marumi 247 00:12:13,210 --> 00:12:16,590 may mga kurso, ilagay ang iyong mga paa sa tubig, kaya na magsalita, halos tulad ko ang aking sarili 248 00:12:16,590 --> 00:12:18,500 ginawa taon na ang nakaraan na may pass / mabibigo. 249 00:12:18,500 --> 00:12:21,850 Tulad ng aking sinabi noong nakaraang linggo, nagkaroon ng kursong ito, tulad ng iba, hindi magagamit 250 00:12:21,850 --> 00:12:25,090 pumasa / mabibigo sa oras, marahil ko gagawin Hindi pa kailanman stepped paa sa 251 00:12:25,090 --> 00:12:28,310 ang klase, kahit na ginawa ko, limang linggo mamaya, baguhin ang aking isip, na kung saan mo 252 00:12:28,310 --> 00:12:32,400 Maaaring pati na rin, at lumipat sa o sulat mula sa gradong katayuan. 253 00:12:32,400 --> 00:12:32,990 >> Ayos lang. 254 00:12:32,990 --> 00:12:37,380 Kaya kami ay tumingin sa mga bagay tulad na ito sa Biyernes, at kami ay masyadong mabilis pagpunta 255 00:12:37,380 --> 00:12:39,890 upang lumipat sa isang bagay na mukhang mas misteriyoso ngayon. 256 00:12:39,890 --> 00:12:42,300 Ngunit ito ay gayunman ang parehong pangunahing ideya. 257 00:12:42,300 --> 00:12:45,540 Ano ang pangkalahatang termino na namin ginagamit upang ilarawan ang isang malaking suliranin piraso 258 00:12:45,540 --> 00:12:47,690 na ang mukhang ito? 259 00:12:47,690 --> 00:12:48,510 >> Kaya, ang isang pahayag. 260 00:12:48,510 --> 00:12:50,020 At maaari kang tumawag ito anumang bilang ng mga bagay. 261 00:12:50,020 --> 00:12:51,870 Ngunit kailangan lang namin tumawag ito ng pahayag, at isang pahayag 262 00:12:51,870 --> 00:12:53,200 Sinasabi lamang ang programa - 263 00:12:53,200 --> 00:12:55,290 o sa kaso ng mga scratch, ang engkanto - 264 00:12:55,290 --> 00:12:56,520 upang gawin ang isang bagay. 265 00:12:56,520 --> 00:12:58,430 Kamustahin sa kasong ito. 266 00:12:58,430 --> 00:13:01,450 >> Parang ganito kami sa halip na tinatawag na kung ano? 267 00:13:01,450 --> 00:13:03,560 Oo, kaya isang Boolean expression. 268 00:13:03,560 --> 00:13:07,380 Ang isang Boolean expression lamang ang isang bagay iyon ay totoo o hindi, at kaya scratch 269 00:13:07,380 --> 00:13:10,530 tumatawag na ito sa ang hugis na ito, ngunit din may isang tandang pananong upang ihatid ang 270 00:13:10,530 --> 00:13:14,510 ideya na ang sagot sa tanong na ito Alinman sa tama o mali, oo o hindi 271 00:13:14,510 --> 00:13:15,910 isa, 1 o 0. 272 00:13:15,910 --> 00:13:19,290 >> At ginagamit namin ang mga Boolean expression sa loob ng constructs tulad ng mga ito, na 273 00:13:19,290 --> 00:13:21,010 namin na tinatawag na kung ano? 274 00:13:21,010 --> 00:13:22,460 Kaya, kondisyon o sangay. 275 00:13:22,460 --> 00:13:25,600 At ang kundisyon nakikita dito sa May scratch ng kaunti placeholder para sa isang 276 00:13:25,600 --> 00:13:28,260 puzzle na piraso ng na hugis, ang layunin na kung saan ay sa gayon ay maaari mong 277 00:13:28,260 --> 00:13:32,670 i-drag ito at i-drop ito sa tuktok at pagkatapos ay mag-utos sa program na ito kung Boolean 278 00:13:32,670 --> 00:13:36,410 expression ay totoo, gawin ito hanay ng mga mga tagubilin, sa hanay ng mga pahayag, 279 00:13:36,410 --> 00:13:39,320 iba gawin ito iba pang mga hanay ng mga tagubilin. 280 00:13:39,320 --> 00:13:41,270 >> At isipin ang na maaari mong nest ang mga bagay na ito. 281 00:13:41,270 --> 00:13:44,170 Kahit na mayroong hindi magkano ang kuwarto biswal sa puzzle na piraso, scratch 282 00:13:44,170 --> 00:13:47,820 ay lalaki at pag-urong upang magkasya anumang puzzle piraso mong i-drag at i-drop sa 283 00:13:47,820 --> 00:13:51,410 may kaya maaari mong talagang nest na ito at May tatlong paraan tinidor sa kalsada. 284 00:13:51,410 --> 00:13:53,870 Kung, kung ibang tao, iba pa. 285 00:13:53,870 --> 00:13:58,100 At maaari ka ring pumunta lampas na sa pamamagitan ng nesting karagdagang at karagdagang bilang kinakailangan. 286 00:13:58,100 --> 00:14:02,520 >> Kaya bilang wakas, nakita natin constructs tulad ng ito, kung hindi, na kilala bilang isang loop. 287 00:14:02,520 --> 00:14:05,690 At ito ay lamang ng isang bagay na gumagana isang bagay muli at muli at muli. 288 00:14:05,690 --> 00:14:09,250 Sa kasong ito, ito ang mangyayari sa maging isang may wakas dami ng beses, ngunit din namin 289 00:14:09,250 --> 00:14:12,890 Nakita ang isang halimbawa kung saan ang bilang ng mga beses na nagmula sa isang variable, kaya ito 290 00:14:12,890 --> 00:14:13,690 maaaring baguhin. 291 00:14:13,690 --> 00:14:16,910 At din namin nakita ng isa pang block nang sama-sama tinatawag na magpakailanman block na 292 00:14:16,910 --> 00:14:19,590 nagpahintulot sa amin upang loop walang katapusan ang haba. 293 00:14:19,590 --> 00:14:23,300 >> Kaya isa pang bumuo na scratch 2.0 ay may - at doon sa iyo ng karagdagang 294 00:14:23,300 --> 00:14:26,330 komportable sa naunang background ay pa rin pamilyar sa ito 295 00:14:26,330 --> 00:14:27,080 bumuo - 296 00:14:27,080 --> 00:14:29,910 mga bagay na aming tinatawag na kung ano? 297 00:14:29,910 --> 00:14:32,540 Kaya namin na tinatawag na mga pag-andar, kung hindi man na kilala bilang mga pamamaraan. 298 00:14:32,540 --> 00:14:35,030 May kaunting pag semantiko pagkakaiba, ngunit magkakaroon kami tatawag sa kanila lamang function. 299 00:14:35,030 --> 00:14:39,950 >> At isang function, sa kaso ng mga scratch, ay isang pasadyang piraso puzzle na 300 00:14:39,950 --> 00:14:43,670 Maaari kang lumikha ng iyong sarili sa gayon ay mayroon kang isang bagong piraso puzzle na, sa ganitong 301 00:14:43,670 --> 00:14:47,190 kaso, ay tinatawag na ubo, na Lumilitaw sa lahat ng iba pang mga 302 00:14:47,190 --> 00:14:48,730 Available ang puzzle piraso sa scratch. 303 00:14:48,730 --> 00:14:52,010 Kahit na ang MIT ay hindi ilikha ito puzzle piraso, ng ginawa mo. 304 00:14:52,010 --> 00:14:57,600 >> Kaya isang function na nagpapahintulot sa iyo na lumikha ng mga bagong pag-uugali, bigyan ito ng isang function na pangalan, at 305 00:14:57,600 --> 00:14:59,200 pagkatapos ay tumawag ito, kaya na magsalita. 306 00:14:59,200 --> 00:15:04,690 Talagang gamitin ito sa mga programa muli at muli at muli nang hindi na kinakailangang maghintay 307 00:15:04,690 --> 00:15:08,600 para sa isang tao tulad ng MIT pababa ng kalsada sa ilikha bagong pag-andar mula sa simula. 308 00:15:08,600 --> 00:15:12,460 Maaari kang bumuo ng iyong sarili ang mga puzzle piraso sa iyong sarili, at pagkatapos ay muling gamitin ang mga ito 309 00:15:12,460 --> 00:15:13,600 sa iyong sariling mga programa. 310 00:15:13,600 --> 00:15:17,520 At makikita natin ang umuulit na halimbawa ng na ngayon at pasulong. 311 00:15:17,520 --> 00:15:20,960 >> Kaya ngayon, kami transition ngayon sa isang bagay na mas arcane. 312 00:15:20,960 --> 00:15:24,350 Ngunit sa pagtatapos ng araw, isang bagay mas malakas at nagpapahayag at higit pa 313 00:15:24,350 --> 00:15:28,110 kinatawan ng path na kami ay magiging sa lahat ng semestre sa buong isang numero 314 00:15:28,110 --> 00:15:28,800 ng mga wika - 315 00:15:28,800 --> 00:15:30,800 na ng code o source code. 316 00:15:30,800 --> 00:15:34,720 At ang source code, ito lumiliko out, ay hindi kung ano ang isang computer 317 00:15:34,720 --> 00:15:37,400 Karaniwang aktwal na tumatakbo. 318 00:15:37,400 --> 00:15:39,860 Source code ganito ang hitsura. 319 00:15:39,860 --> 00:15:43,010 >> Kaya ito ay, muli, marahil ang pinakasimpleng programa maaari naming magsulat sa isang 320 00:15:43,010 --> 00:15:46,670 wika na tinatawag na C. Magsisimula kami sa mang-ulol-hatiin ito bago mahaba, at kung 321 00:15:46,670 --> 00:15:49,260 ito talaga ang hitsura ng Griyego sa iyo sa ngayon, nagtitiwala sa akin. 322 00:15:49,260 --> 00:15:54,040 Sa loob lamang ng isang linggo o dalawang oras ng, ito ay magiging lahat ng masyadong pamilyar at talagang 323 00:15:54,040 --> 00:15:57,780 medyo kinatawan ng nagiging kumplikadong mga halimbawa na kung saan bibigyan ka 324 00:15:57,780 --> 00:15:59,870 ring makakuha ng mas kumportable. 325 00:15:59,870 --> 00:16:03,100 >> Ngunit hindi lamang sa iyo ay maaaring tumakbo ito uri ng code karaniwan. 326 00:16:03,100 --> 00:16:06,750 Mayroon kang upang i-on ito sa isang bagay na ang computer mismo nauunawaan. 327 00:16:06,750 --> 00:16:09,840 At kaya para sa na, kailangan namin ng isang bagay kami ay pagpunta sa tumawag sa isang tagatala. 328 00:16:09,840 --> 00:16:13,910 Tagatala ay isang programa na tumatagal source code, na tulad mo lang nakita, bilang 329 00:16:13,910 --> 00:16:17,680 input, at ito ay gumagawa zeroes at mga bilang output, kung hindi man 330 00:16:17,680 --> 00:16:19,210 Kilala bilang object code. 331 00:16:19,210 --> 00:16:23,190 At ito ay mga zeroes mga bago at na maaaring magmukhang medyo ganito na 332 00:16:23,190 --> 00:16:26,310 sa huli ay naunawaan sa pamamagitan ng iyong Mac o iyong PC. 333 00:16:26,310 --> 00:16:30,050 >> Kung kailanman na iyong narinig sa marketing ng expression Intel Inside, na lamang 334 00:16:30,050 --> 00:16:32,800 ay nangangahulugan na ang isang kumpanya na tinatawag na Intel ay manufactured ang 335 00:16:32,800 --> 00:16:34,130 talino ng iyong computer - 336 00:16:34,130 --> 00:16:37,270 kung hindi man ay kilala bilang ang CPU, gitnang processing unit - 337 00:16:37,270 --> 00:16:39,640 at ito lamang ang mga bagay na Naiintindihan ng mga pattern 338 00:16:39,640 --> 00:16:40,880 ng zeroes at bago. 339 00:16:40,880 --> 00:16:46,330 At ito sa pamamagitan ng pag-convert ng source code sa object code sa pamamagitan ng prosesong ito dito 340 00:16:46,330 --> 00:16:49,130 na aming gagawin sa isang pares ng mga utos sa loob lamang ng kaunti, ikaw ay 341 00:16:49,130 --> 00:16:53,070 paglikha ng mga pattern ng zeroes mga bago at na ang mga empleyado sa Intel mayroon 342 00:16:53,070 --> 00:16:56,000 Nagpasya kumakatawan sa ilang mga pahayag. 343 00:16:56,000 --> 00:16:58,810 >> Ngayon, hindi ko pa alam kung saan kung saan ay sa pamamagitan lamang ng glancing sa 344 00:16:58,810 --> 00:16:59,890 mga zeroes at bago. 345 00:16:59,890 --> 00:17:01,420 Karamihan sa mga tao mga araw na ito ay hindi. 346 00:17:01,420 --> 00:17:04,900 Ngunit sa isang lugar sa may isang pattern ng zeroes mga bago at na kumakatawan sa 347 00:17:04,900 --> 00:17:06,349 pahayag print. 348 00:17:06,349 --> 00:17:10,460 Sa isang lugar sa, maaaring may iba't ibang magtakda ng zeroes mga bago at na 349 00:17:10,460 --> 00:17:16,940 Kumakatawan sa mga kuru-kuro ng magpakailanman o ulitin 10 beses o kahit ngiyaw, kung ito ay 350 00:17:16,940 --> 00:17:20,000 talagang isang programa na maaari magsama ng ilang mga tunog. 351 00:17:20,000 --> 00:17:24,390 >> Kaya sa maikling, mga kawani na tao ay nagpasya lamang, magkano tulad ng ginawa namin para sa ASCII - 352 00:17:24,390 --> 00:17:27,480 para sa mga titik ng mga alpabeto noong nakaraang linggo - mga kawani na tao nagpasya na kahit na 353 00:17:27,480 --> 00:17:32,200 mas kumplikadong pattern ng zeroes mga bago at Kinakatawan mas kumplikadong pag-uugali 354 00:17:32,200 --> 00:17:35,650 tulad ng pag-print o sinasabi o meowing. 355 00:17:35,650 --> 00:17:38,640 At kaya para sa ngayon, at higit sa lahat pasulong sa semestre, isasaalang-alang namin para sa 356 00:17:38,640 --> 00:17:41,820 Binigyan na may isang taong may korte out kung paano gawin na pagmamapa. 357 00:17:41,820 --> 00:17:45,560 Ngunit kami, pare-pareho sa ideyang ito ng layering sa tuktok ng gawa ng tao 358 00:17:45,560 --> 00:17:49,340 taong dumating bago sa amin, ay magdadala para sa Binigyan ang katotohanan na ito ay nangyayari sa 359 00:17:49,340 --> 00:17:50,300 sa ilalim ng hood. 360 00:17:50,300 --> 00:17:53,840 Ngunit kami ay mas interesado sa gusali ng mga bagay na higit na 361 00:17:53,840 --> 00:17:55,880 kawili-wili sa tuktok ng lahat ng ito. 362 00:17:55,880 --> 00:17:58,900 >> At gayon nga, ang unang programa namin nagsulat sa scratch ito ay sobrang simple 363 00:17:58,900 --> 00:18:00,600 isa, Hello World. 364 00:18:00,600 --> 00:18:05,100 At maaari mong isipin na ito bilang pagiging pangunahing programa na sumasaklaw scratch ni 365 00:18:05,100 --> 00:18:07,280 pag-uugali bilang ng huling Biyernes. 366 00:18:07,280 --> 00:18:11,510 >> Ngayon, kami ay pagpunta sa simulan upang isalin Scratch piraso sa palaisipan 367 00:18:11,510 --> 00:18:16,040 source code sa wikang ito na tinatawag na C kaya na kung ano ang mukhang ito sa 368 00:18:16,040 --> 00:18:20,230 Biyernes, simula sa araw na pasulong, ay ngayon pagpunta sa ganito ang hitsura. 369 00:18:20,230 --> 00:18:21,860 Tinatanggap na mas misteriyoso. 370 00:18:21,860 --> 00:18:25,010 Medyo Ito ay distracting at uri ng pag-iisip numbing upang makita ang lahat ng mga quote 371 00:18:25,010 --> 00:18:27,760 at ang semicolons at ang panaklong at iba pa. 372 00:18:27,760 --> 00:18:32,350 >> Ngunit kung sinimulan mo na huwag pansinin ang anumang bagay sa iyo hindi maunawaan, at talagang tumingin 373 00:18:32,350 --> 00:18:35,960 sa kakanyahan ng puting teksto sa screen, tiyak na nakikita mo, tulad ng gagawin ko, 374 00:18:35,960 --> 00:18:40,360 "Kumusta, mundo." Na mga linya up sa lilang statement up tuktok, at ito ay nagiging 375 00:18:40,360 --> 00:18:44,790 out na ang pangunahing keyword ay pagpunta sa pumila conceptually kapag may green 376 00:18:44,790 --> 00:18:46,350 bandila na-click. 377 00:18:46,350 --> 00:18:49,820 >> Kaya sa ibang salita, samantalang sa simula, namin ipatupad ang programa Kamusta Mundo 378 00:18:49,820 --> 00:18:53,360 may mga dalawang piraso puzzle, sa C, kami ay pagpunta sa ipatupad ito sa mga 379 00:18:53,360 --> 00:18:55,510 apat medyo misteriyoso mga linya. 380 00:18:55,510 --> 00:18:58,130 Ngunit bilang namin sumisid ng mas malalim sa ito, bibigyan ka makita na ang bawat isa sa mga 381 00:18:58,130 --> 00:19:02,730 puting mga character sa screen talaga May ilang mga makabuluhang kahulugan, 382 00:19:02,730 --> 00:19:05,880 at karamihan sa aming mga programa ay pumunta sa Inaasahan structurally medyo pareho. 383 00:19:05,880 --> 00:19:08,980 Kaya ang isang pahayag, upang maging malinaw, kung ano mukhang "halimbawa kumusta mundo" sa 384 00:19:08,980 --> 00:19:12,020 Biyernes ay pagpunta upang simulan ang hinahanap i ito sa Lunes. 385 00:19:12,020 --> 00:19:15,250 printf ("kumusta, mundo"). 386 00:19:15,250 --> 00:19:17,700 At mayroong ilang mga kakatwang mga backslash n, mayroong mga panaklong, mayroong 387 00:19:17,700 --> 00:19:18,490 semicolons. 388 00:19:18,490 --> 00:19:21,950 >> Ngunit sa pagtatapos ng araw, ang susi takeaway ngayon ay na ang lahat ng aming ginagawa 389 00:19:21,950 --> 00:19:25,710 ay nagta-translate ng mga bagay mula sa larawan bumubuo sa teksto ng form. 390 00:19:25,710 --> 00:19:28,820 Kaya isang loop na ang mukhang ito noong nakaraang linggo ay pagpunta sa ngayon hitsura 391 00:19:28,820 --> 00:19:30,140 isang bagay na katulad nito. 392 00:19:30,140 --> 00:19:33,020 >> At hayaan mo akong itatwa, tulad ng sa Wala, mayroong iba't ibang mga paraan upang 393 00:19:33,020 --> 00:19:34,110 makamit ang parehong layunin. 394 00:19:34,110 --> 00:19:38,860 Parehong sa C. Hindi ako nagpapakita sa iyo ang tanging paraan upang gawin ang mga bagay, ngunit isang paraan upang 395 00:19:38,860 --> 00:19:43,230 isalin ito magpakailanman i-block sa isang loop sa C. 396 00:19:43,230 --> 00:19:44,980 >> Ito ang isa dito, ulitin 10 beses. 397 00:19:44,980 --> 00:19:47,580 Ito ang isa talagang uri ng bends ang tututol ang unang pagkakataon na makita mo ito. 398 00:19:47,580 --> 00:19:49,860 Ngunit upang ipatupad na simula ngayon, kami ay pagpunta sa gumamit ng isang 399 00:19:49,860 --> 00:19:51,990 para sa loop, kaya na magsalita. 400 00:19:51,990 --> 00:19:56,150 At malinaw na mayroong ilang mga syntax na medyo kumplikado doon may ako at 401 00:19:56,150 --> 00:19:59,740 pantay at 0, ngunit sa sandaling namin sumisid sa na ngayon pasulong, lamang ka ng pagpunta 402 00:19:59,740 --> 00:20:04,260 upang makita na na lahat nang simple ang paggawa ng ilang basic aritmetika upang makakuha ng sa amin mula sa 0 403 00:20:04,260 --> 00:20:07,720 sa hanggang sa 9 o 10 sa kasong ito. 404 00:20:07,720 --> 00:20:11,570 >> Panghuli, may mga variable, makikita mo maalala muli na variable ay isang piraso ng imbakan. 405 00:20:11,570 --> 00:20:14,290 Well, kung ano ang nagkaroon kami sa kaliwa doon huling linggo ay pagpunta upang tumingin ng kaunti 406 00:20:14,290 --> 00:20:15,920 isang bagay tulad na ito sa linggong ito. 407 00:20:15,920 --> 00:20:17,870 Ngunit muli, higit pa sa na sa darating. 408 00:20:17,870 --> 00:20:20,700 >> Nagkaroon kami ng Boolean expression, na noong nakaraang linggo, mukhang ito. 409 00:20:20,700 --> 00:20:23,370 Sa linggong ito pasulong, sila ay pagpunta sa simulan upang tumingin ng kaunti tulad na. 410 00:20:23,370 --> 00:20:24,890 >> At isa na ito ay talagang medyo reassuring. 411 00:20:24,890 --> 00:20:27,680 Ito ay talagang halos na simple bilang ang berdeng mga bloke. 412 00:20:27,680 --> 00:20:31,115 Ngunit dito mayroon kaming, muli, ang ilang mga bagong syntax may mga ampersand, ngunit maaari mong 413 00:20:31,115 --> 00:20:35,390 marahil hulaan samantalang sa scratch, mo sabihin A-N-D, tila sa C, hindi namin 414 00:20:35,390 --> 00:20:37,070 pagpunta sa sinasabi ampersand ampersand. 415 00:20:37,070 --> 00:20:39,650 Ngunit lahat ng ito ay magiging natural na bago ang haba. 416 00:20:39,650 --> 00:20:40,680 >> Kundisyon. 417 00:20:40,680 --> 00:20:42,610 Noong nakaraang linggo, ito ay tumingin tulad ng ito sa kaliwa. 418 00:20:42,610 --> 00:20:44,800 Linggo na ito, sa kanan, ito ay pagpunta sa hitsura na. 419 00:20:44,800 --> 00:20:48,560 Ngunit muli, ang key takeaway dito ay na bilang ka ng mga bagay tulad na sa 420 00:20:48,560 --> 00:20:51,950 sa kanan, at lalo na kung mas mababa komportable, ito ay isang uri ng higit sa iyong mga 421 00:20:51,950 --> 00:20:54,950 ulo, kumuha ka ng isang maliit na mapuspos Ako talaga ay walang mga ideya kung paano ko magagawa 422 00:20:54,950 --> 00:20:58,420 posibleng makabuo ng na mula sa wala - 423 00:20:58,420 --> 00:20:59,500 magbigay ng isang patudyong salita hindi inilaan - 424 00:20:59,500 --> 00:21:05,300 lamang mapagtanto na ikaw talaga ang parehong ideya na marahil nadama kaya marami pang iba 425 00:21:05,300 --> 00:21:06,760 natural sa nakaraang linggo. 426 00:21:06,760 --> 00:21:10,960 At kahit na hindi mo pa dived sa problema hanay 0, sa palagay ko makikita mo 427 00:21:10,960 --> 00:21:13,790 na ang puzzle piraso ay medyo madaling maunawaan, o hindi bababa sa 428 00:21:13,790 --> 00:21:16,050 kaya maging sa paglipas ng panahon. 429 00:21:16,050 --> 00:21:16,990 >> Kaya natin sumisid in 430 00:21:16,990 --> 00:21:20,760 Sabihin makakuha ng aming mga kamay marumi dito sa ang unang simpleng programa. 431 00:21:20,760 --> 00:21:22,410 At simple ay, siyempre, kamag-anak. 432 00:21:22,410 --> 00:21:25,190 Upang gawin ito, pupuntahan ko babaguhin ang mga screen sa device ko na tinatawag na 433 00:21:25,190 --> 00:21:26,150 CS50 appliance. 434 00:21:26,150 --> 00:21:29,700 Ang CS50 appliance ay isang piraso ng software na tumatakbo sa loob ng isang 435 00:21:29,700 --> 00:21:33,920 window sa aking Mac, at maaari mo ring patakbuhin ito sa isang window sa loob ng iyong PC, na 436 00:21:33,920 --> 00:21:38,720 ay nagbibigay-daan sa akin upang magkaroon ng parehong eksaktong computer na kapaligiran bilang bawat tf, bilang 437 00:21:38,720 --> 00:21:40,940 bawat CA, pati na ang bawat mag-aaral sa klase. 438 00:21:40,940 --> 00:21:44,590 Dahil ang CS50 appliance ay literal isa pang operating system 439 00:21:44,590 --> 00:21:45,410 tinatawag Linux - 440 00:21:45,410 --> 00:21:47,160 partikular Fedora Linux - 441 00:21:47,160 --> 00:21:51,320 at kami, mga kawani, na-configure ang pag-install proseso para sa 442 00:21:51,320 --> 00:21:55,200 operating system sa paraan na ang isa, mayroong isang maliit CS50 logo sa 443 00:21:55,200 --> 00:21:59,240 gitna, dalawang, mayroong isang pasadyang menu sa sa ibaba, at tatlo, pedagogically, 444 00:21:59,240 --> 00:22:02,570 namin pinasimple ang user interface bilang magkano hangga't maaari sa gayon ay kapag ikaw 445 00:22:02,570 --> 00:22:05,540 unang sipain ito bagay up sa iyong sariling Mac o PC, mayroon ka ng parehong 446 00:22:05,540 --> 00:22:08,280 kapaligiran bilang ang iba, at ikaw mayroon ng lahat ng mga tool na kailangan mo 447 00:22:08,280 --> 00:22:11,390 para sa mga kurso nang hindi na kinakailangang malaman out paano i-install sa bawat isa at 448 00:22:11,390 --> 00:22:13,280 bawat tool na paisa-isa. 449 00:22:13,280 --> 00:22:15,840 >> Kaya ito hitsura medyo tulad ng Mac OS o Windows. 450 00:22:15,840 --> 00:22:18,760 Sa ibabang kaliwang sulok, mo mahalagang magkaroon ng Start menu ng 451 00:22:18,760 --> 00:22:20,280 uri, o isang menu ng Apple. 452 00:22:20,280 --> 00:22:23,700 At pagkatapos ay mayroon kang kung ano ang pinaghihinalaan namin kalooban maging iyong tatlong pinaka-karaniwang mga icon. 453 00:22:23,700 --> 00:22:24,460 Ang isa ay Chrome. 454 00:22:24,460 --> 00:22:26,460 Mayroong isang browser sa loob ng appliance. 455 00:22:26,460 --> 00:22:29,970 >> Dalawang ay isang programa na tinatawag na gedit, na Nakita namin Panandalian noong nakaraang linggo, kung saan ay 456 00:22:29,970 --> 00:22:31,310 lamang ng isang graphical editor. 457 00:22:31,310 --> 00:22:35,350 At tatlong ay isang Terminal programa, na ay isang itim at puting window mula sa 458 00:22:35,350 --> 00:22:39,860 nakalipas na panahon na nagbibigay-daan sa amin upang makapag-type nang higit pa arcane ngunit mas malakas na utos sa 459 00:22:39,860 --> 00:22:40,660 ang aming keyboard. 460 00:22:40,660 --> 00:22:44,220 Kaya pupuntahan ko sige at mag-click sa gedit, at makatitiyak na nagpapatuloy ang problema 461 00:22:44,220 --> 00:22:48,520 itakda 1, na inilabas sa Biyernes, kalooban ituturo sa iyo ang lahat ng mga parehong mga hakbang. 462 00:22:48,520 --> 00:22:51,730 >> Pansinin na mayroon akong isang medyo simple user interface na may tatlong bahagi. 463 00:22:51,730 --> 00:22:54,990 Sa kaliwa, mayroon akong isang malaking walang laman window na tinatawag na source code. 464 00:22:54,990 --> 00:22:58,930 Iyon ay kung saan ako pupunta upang makita ang isang buod ng anumang code na isulat ko. 465 00:22:58,930 --> 00:23:01,990 Sa kanang bahagi, mayroon akong isang malaking tab, kasalukuyang hindi naka-save, at iyon 466 00:23:01,990 --> 00:23:03,510 kung saan ang aking code pupuntahan pumunta. 467 00:23:03,510 --> 00:23:06,780 At sa ibaba, ako ay isang naka-embed Terminal na window, isang itim at puti 468 00:23:06,780 --> 00:23:12,060 prompt kung saan ang maaari kong i-type command sa sumulat ng libro at patakbuhin ang aking mga program - na 469 00:23:12,060 --> 00:23:14,110 ay, upang gumawa at magpatakbo ng aking mga programa. 470 00:23:14,110 --> 00:23:15,170 >> Kaya natin simulan simple. 471 00:23:15,170 --> 00:23:17,700 Hayaan akong pumunta up sa File, I-save. 472 00:23:17,700 --> 00:23:20,530 Pupunta ako sa sige at pumunta sa jharvard. 473 00:23:20,530 --> 00:23:24,320 Kaya ang appliance, hindi isinasaalang-alang ng kung ano ang ang iyong pangalan ay, ay kabilang sa isang tao na may pangalang 474 00:23:24,320 --> 00:23:28,250 John Harvard, kung sino ang may isang jharvard bahay direktoryo sa loob ng kung saan ang lahat ng iyong 475 00:23:28,250 --> 00:23:29,100 mga file ay pumunta. 476 00:23:29,100 --> 00:23:31,640 Ito ay ang iyong sariling kopya ng kanyang account, kaya hindi namin ang lahat ng pagbabahagi 477 00:23:31,640 --> 00:23:33,530 ang parehong hard drive. 478 00:23:33,530 --> 00:23:35,580 Ikaw lang ay ang ilusyon ni Juan Harvard sariling. 479 00:23:35,580 --> 00:23:38,350 >> Sa maaga, ko talaga Dropbox install. 480 00:23:38,350 --> 00:23:42,600 Ang appliance ay may preprepared Dropbox upang kung anumang bagay napupunta mali 481 00:23:42,600 --> 00:23:45,950 sa panahon ng semestre, kung ikaw ay naka-configure ang iyong appliance na may libreng 482 00:23:45,950 --> 00:23:48,950 Dropbox account, ang lahat ng iyong mga file kalooban ay awtomatikong naka-back up mo kaya 483 00:23:48,950 --> 00:23:50,430 Maaari napaka madaling mabawi ang mga ito. 484 00:23:50,430 --> 00:23:53,980 At ako pagpunta sa pumunta sa aking Dropbox direktoryo, at mayroong naka pagpunta 485 00:23:53,980 --> 00:23:55,530 upang maging ng ilang iba pang mga bagay doon. 486 00:23:55,530 --> 00:24:02,090 >> Pero pupuntahan ko sige at pumunta sa File, I-save. 487 00:24:02,090 --> 00:24:05,930 Pupunta ako sa pumunta sa jharvard, Dropbox, at hanggang dito, pupuntahan ko 488 00:24:05,930 --> 00:24:10,590 ibigay ang aking programa ng sobrang simple pangalan, hello.c, at pagkatapos ay i-save. 489 00:24:10,590 --> 00:24:11,810 Kaya Mayroon akong ang parehong interface ngayon. 490 00:24:11,810 --> 00:24:14,190 Ang tanging bagay na nagbago ay ang tab up tuktok. 491 00:24:14,190 --> 00:24:17,170 Kaya ako masyadong mabilis pagpunta sa muling likhain na programa mula sa 492 00:24:17,170 --> 00:24:19,060 mga slide ng ilang sandali ang nakalipas. 493 00:24:19,060 --> 00:24:25,690 >> Kaya sa pangunahing (walang bisa), at pagkatapos ay printf, "Kumusta, mundo," isang medyo misteriyoso 494 00:24:25,690 --> 00:24:29,920 backslash n, malapit quote, isara panaklong, tuldok-kuwit, at 495 00:24:29,920 --> 00:24:32,030 pagkatapos Ctrl S upang i-save. 496 00:24:32,030 --> 00:24:34,860 At notice bilang isang bukod ano lang lumitaw dito sa itaas na kaliwang. 497 00:24:34,860 --> 00:24:37,490 At ito ay hindi kapaki-pakinabang ngayon, ngunit ay magiging kapaki-pakinabang sa paglipas ng panahon. 498 00:24:37,490 --> 00:24:40,160 Ikaw lamang ang makikita, muli, ang isang buod ng ang code na iyong isinulat. 499 00:24:40,160 --> 00:24:43,320 At dahil ako ay sumulat ng isang bagay na tinatawag na main, na ang dahilan kung bakit ang salitang pangunahing pop 500 00:24:43,320 --> 00:24:44,030 up doon. 501 00:24:44,030 --> 00:24:46,610 Ngunit para sa pinaka-bahagi, namin hindi kailangan na ngayon. 502 00:24:46,610 --> 00:24:51,130 >> Ang lahat ng mga karapatan, kaya i-claim ko na ito ang aking unang programa na nakasulat sa isang programming 503 00:24:51,130 --> 00:24:54,620 wika na tinatawag na C. Alam namin mula sa Biyernes na kung ano ang bagay na ito ay pagpunta sa gawin 504 00:24:54,620 --> 00:24:58,450 napaka uninterestingly kapag ako tumakbo lamang ito ay ipakita - 505 00:24:58,450 --> 00:25:01,270 sa ibang salita, i-print, bilang isang computer siyentipiko sasabihin - 506 00:25:01,270 --> 00:25:03,310 kumusta mundo sa screen. 507 00:25:03,310 --> 00:25:06,800 Kaya upang gawin ito, mapapansin mo na mayroon akong upang pumunta down na dito sa aking terminal 508 00:25:06,800 --> 00:25:09,250 window, at ngayon ay mayroon ako isang nagbi-blink na prompt. 509 00:25:09,250 --> 00:25:15,480 Ngunit ito ay isa ng keyboard na bersyon ng ang aking John Harvard home directory. 510 00:25:15,480 --> 00:25:19,610 Ito ay isang keyboard sa pamamagitan ng paraan na i-navigate ang aking hard drive. 511 00:25:19,610 --> 00:25:25,380 >> Kaya hindi talaga ako makapag-type tulad ng ginawa ko huling linggo gawing kumusta, dahil ito ay 512 00:25:25,380 --> 00:25:27,230 pagpunta sa sabihin walang mga panuntunan upang gumawa ng target - 513 00:25:27,230 --> 00:25:27,950 isang bagay ang mali. 514 00:25:27,950 --> 00:25:31,690 Hindi ko pa masyadong alam kung ano na ang mensahe ibig sabihin, ngunit iyon ay dahil sa pamamagitan ng default, 515 00:25:31,690 --> 00:25:35,350 kapag ito itim at puting window ay binuksan, ako sa loob ng John Harvard ni 516 00:25:35,350 --> 00:25:36,160 home directory. 517 00:25:36,160 --> 00:25:39,180 Ngunit kung saan ang nakuha ko na i-save ang program? 518 00:25:39,180 --> 00:25:40,440 Sa aking Dropbox folder. 519 00:25:40,440 --> 00:25:43,110 >> Ngayon, ang lahat ng sa amin na lumago up sa mga computer kung saan mo lamang i-double click 520 00:25:43,110 --> 00:25:45,610 icon sa isang folder, ang ito bubukas up, at voila. 521 00:25:45,610 --> 00:25:48,280 Iyon ay kung saan ang mga file na tinatawag na hello.c ay magiging. 522 00:25:48,280 --> 00:25:49,470 Kaya sa katunayan, sabihin gawin iyon. 523 00:25:49,470 --> 00:25:51,610 >> Hayaan akong sige at i-minimize ang gedit tulad ng ginagawa mo sa 524 00:25:51,610 --> 00:25:52,990 Windows o Mac OS. 525 00:25:52,990 --> 00:25:56,160 Hayaan akong pumunta sa Home folder sa kaliwang tuktok. 526 00:25:56,160 --> 00:25:57,620 Kukunin ko makita dito ng grupo ng mga folder. 527 00:25:57,620 --> 00:25:58,870 Ito ang aking Dropbox folder. 528 00:25:58,870 --> 00:26:00,770 Ang checkmarks Nangangahulugan itong ma-sync. 529 00:26:00,770 --> 00:26:04,040 At mayroong ilang mga bagay in dito, ngunit napansin na hello.c ay 530 00:26:04,040 --> 00:26:04,960 sa katunayan doon. 531 00:26:04,960 --> 00:26:08,050 >> At kaya sa Mac OS o Windows, normal, Gusto ko i-double click na, ito ay bubukas up sa 532 00:26:08,050 --> 00:26:10,220 kahit anong program, at ako ay handa na upang patakbuhin. 533 00:26:10,220 --> 00:26:13,370 Ngunit ngayon, hindi bababa sa simula ngayon, namin kailangang gumawa ng isang hakbang paurong lamang sa 534 00:26:13,370 --> 00:26:16,960 magbibigay sa iyo ng ilang mga pangunahing mga kasangkapan para sa iyong tool kit na kung saan upang gawin higit pa 535 00:26:16,960 --> 00:26:18,980 malakas na mga bagay bago ang haba. 536 00:26:18,980 --> 00:26:22,280 >> Kaya sa ang pagsenyas na ito, kailangan kong gawin ang katumbas ng pag-double click ang 537 00:26:22,280 --> 00:26:23,560 Dropbox folder. 538 00:26:23,560 --> 00:26:29,900 At upang gawin iyon, pupuntahan ko na mag-type para sa CD baguhin direktoryo, Dropbox, ipasok. 539 00:26:29,900 --> 00:26:36,100 At ngayon mapansin ang mga panaklong sa aking tinatawag nang gayon prompt ngayon sinasabi na ako sa 540 00:26:36,100 --> 00:26:38,470 tilda, ang maliit na squiggly simbolo sa kaliwang tuktok ng 541 00:26:38,470 --> 00:26:40,860 pinaka-keyboard, / Dropbox. 542 00:26:40,860 --> 00:26:45,200 Ito lamang ang shorthand notation para sa sinasabi ng mga tao, ikaw ay ngayon sa loob ng 543 00:26:45,200 --> 00:26:48,650 ang Dropbox folder, tulad ng kahit na double mo ay nag-click sa ito. 544 00:26:48,650 --> 00:26:54,610 >> Kaya ngayon kung pumunta ako nang maaga at i-type gumawa kumusta, ipasok, makikita ko ang isang napaka misteriyoso 545 00:26:54,610 --> 00:26:57,450 utos, ngunit hindi isang error na mensahe, parang, at pagkatapos ay 546 00:26:57,450 --> 00:26:59,020 isa pang nagbi-blink na prompt. 547 00:26:59,020 --> 00:27:04,470 At kung isipin ang mo, kailanman ay kaya mabilis sa Biyernes, ginawa namin ito. . / Kumusta. 548 00:27:04,470 --> 00:27:10,000 >> Ano ikaw ay tungkol sa upang makita ang resulta ng aking tumatakbo ang program na ito, o, sa Mac 549 00:27:10,000 --> 00:27:14,310 OS at PC mga tuntunin, kung gusto ko normal double mag-click sa isang programa -. isang app 550 00:27:14,310 --> 00:27:17,620 programa o sa isang. exe, ito ay bubukas isang window at napatakbo. 551 00:27:17,620 --> 00:27:21,920 Ang pag-type. / Kumusta ay katulad lamang ng double ng pag-click sa isang programa upang patakbuhin ito, ngunit 552 00:27:21,920 --> 00:27:23,280 ginagamit ang aking keyboard. 553 00:27:23,280 --> 00:27:25,410 >> Ipasok, kumusta mundo. 554 00:27:25,410 --> 00:27:26,150 At na ito. 555 00:27:26,150 --> 00:27:29,150 Kaya sabihin mang-ulol na ito bukod sa gayon ito Hindi sa tingin masyadong maraming tulad ng Griyego. 556 00:27:29,150 --> 00:27:31,370 >> Kaya. / Ibig sabihin kung ano? 557 00:27:31,370 --> 00:27:34,120 Kahit sino sino ang kailanman navigate isang keyboard kapaligiran na tulad nito, kung ano ang tuldok 558 00:27:34,120 --> 00:27:36,690 nagre-refer sa? 559 00:27:36,690 --> 00:27:37,800 Ang kasalukuyang direktoryo. 560 00:27:37,800 --> 00:27:41,320 >> Kaya ang kasalukuyang direktoryo ay lamang isang kasingkahulugan para sa isang folder. 561 00:27:41,320 --> 00:27:46,230 Kaya sa pamamagitan ng sinasabi ng mga tuldok na slash, ako ay sinasabi, tumingin para sa isang programa na tinatawag na kumusta sa 562 00:27:46,230 --> 00:27:47,250 kasalukuyang directory - 563 00:27:47,250 --> 00:27:48,540 sa kasalukuyang folder. 564 00:27:48,540 --> 00:27:50,480 Sa ibang salita, ang aking Dropbox folder. 565 00:27:50,480 --> 00:27:54,220 At iyon ang dahilan kung bakit pagpindot ng Enter pagkatapos noon aktwal na tumatakbo ang program na. 566 00:27:54,220 --> 00:27:58,790 >> Kung ako ngayon uri LS, mapapansin na ang nakikita ko ang lahat ng bagay sa aking Dropbox folder. 567 00:27:58,790 --> 00:28:02,000 Pagkuha ng Started.pdf, na Dropbox Nagbibigay sa iyo ng libre, ang aking mga larawan 568 00:28:02,000 --> 00:28:05,450 direktoryo, isang pampublikong direktoryo, hindi na-save Dokumento 1 na ako na ginawa ng isang pagkakamali 569 00:28:05,450 --> 00:28:09,730 ilang sandali ang nakalipas, foo.c, na aking ginawa nang mas maaga ngayon, at pagkatapos ay dalawang linya - 570 00:28:09,730 --> 00:28:12,090 hello.c at kumusta. 571 00:28:12,090 --> 00:28:17,280 >> Hello.c ay ang programa ko ay nagsulat na may gedit, at ano ang halo sa berde? 572 00:28:17,280 --> 00:28:20,920 573 00:28:20,920 --> 00:28:22,940 Ang halo sa berde ay ang executable. 574 00:28:22,940 --> 00:28:27,020 Sa ibang salita, kapag nagpatakbo ako sa command na ito ng ilang sandali ang nakalipas - hayaan mo akong pagulungin 575 00:28:27,020 --> 00:28:28,040 pabalik sa panahon - 576 00:28:28,040 --> 00:28:32,400 kapag nagpatakbo ako gumawa kumusta, na sa gitna hakbang dito. 577 00:28:32,400 --> 00:28:34,410 At ito kinuha hello.c bilang input - 578 00:28:34,410 --> 00:28:39,910 Aka source code - at ito ay gumawa ng isang file na tinatawag na halo ng output, na 579 00:28:39,910 --> 00:28:42,510 naglalaman ng lahat ng mga zero at mga bago. 580 00:28:42,510 --> 00:28:47,640 At iyon ang dahilan kung bakit, sa dulo, maaari ko talaga magpatakbo ng isang command na tulad ng. / kumusta. 581 00:28:47,640 --> 00:28:53,310 Dahil sa Intel Inside, ang aking mga operating system, Linux, bubukas up ng mga zero 582 00:28:53,310 --> 00:28:55,820 at mga bago, mga feed ang mga ito sa talino ng aking computer - 583 00:28:55,820 --> 00:28:56,580 ang CPU - 584 00:28:56,580 --> 00:29:00,460 at na CPU alam, oh, narito ang isang pattern ng mga zero at mga bago na nagsasabing 585 00:29:00,460 --> 00:29:02,800 i-print ang mga sumusunod na bagay sa screen. 586 00:29:02,800 --> 00:29:04,450 >> Ano ang mga sumusunod na bagay? 587 00:29:04,450 --> 00:29:07,650 Quote magpanipi, "kumusta mundo." 588 00:29:07,650 --> 00:29:12,100 >> Ang lahat ng mga karapatan, sa gayon ang isang mabilis na buod ng ilan sa ang mga utos upang maaari naming simulan 589 00:29:12,100 --> 00:29:13,350 pagkuha ng mga ito para sa ipinagkaloob. 590 00:29:13,350 --> 00:29:15,550 Hayaan akong lumaktaw kung saan namin kaliwa off. 591 00:29:15,550 --> 00:29:22,230 At makikita mo na isipin ang nagkaroon kami CD sa aming likod tapusin ang isang sandali ang nakalipas. 592 00:29:22,230 --> 00:29:24,880 Ang mga ito ay, maglakas-loob ko sabihin, para sa layunin ngayon - 593 00:29:24,880 --> 00:29:29,010 siguro sa linggong ito - ang tanging utos namin baka kailangan na mag-type sa command na 594 00:29:29,010 --> 00:29:30,580 bukod sa prompt gumawa. 595 00:29:30,580 --> 00:29:34,510 >> Kaya CD nakatayo para sa kung ano? 596 00:29:34,510 --> 00:29:35,180 Baguhin ang direktoryo. 597 00:29:35,180 --> 00:29:38,010 Ito ay lamang ang katumbas ng double click sa isang folder. 598 00:29:38,010 --> 00:29:41,320 At bilang isang bukod, kung ikaw ay makakuha nawala kailanman sa loob ng iyong 599 00:29:41,320 --> 00:29:43,430 appliance, tulad na Dropbox - 600 00:29:43,430 --> 00:29:45,420 Gusto ko upang makabalik sa aking jharvard directory - 601 00:29:45,420 --> 00:29:50,490 kapag may pagdududa, CD, ipasok, na walang iba pang mga mga salita, at ito lamang ZIP code ka pabalik 602 00:29:50,490 --> 00:29:53,110 upang kung saan ka magsimula, na ay isang magaling kaunti shortcut. 603 00:29:53,110 --> 00:29:54,840 >> Ang lahat ng mga karapatan, kaya ngayon iba pang mga utos. 604 00:29:54,840 --> 00:29:55,660 LS. 605 00:29:55,660 --> 00:29:56,840 Ako nai-type na ng ilang sandali ang nakalipas. 606 00:29:56,840 --> 00:29:59,500 Ano sa tingin ninyo LS ibig sabihin ay? 607 00:29:59,500 --> 00:30:00,470 >> Kaya, listahan, tama? 608 00:30:00,470 --> 00:30:03,300 I-back sa araw, kapag ang mga tao ay darating up gamit ang mga command, sila 609 00:30:03,300 --> 00:30:07,180 na sinusubukan mong maging mahusay, at sa halip i-type ang L-I-S-T magpasok, sila 610 00:30:07,180 --> 00:30:08,470 Nagpasya LS. 611 00:30:08,470 --> 00:30:09,080 Iyon ay pinong. 612 00:30:09,080 --> 00:30:10,420 Ito tunog tulad ng sapat na listahan. 613 00:30:10,420 --> 00:30:13,870 Sabihin lamang uri LS ipasok, at na naglilista ng mga file o folder sa aking 614 00:30:13,870 --> 00:30:15,000 kasalukuyang folder. 615 00:30:15,000 --> 00:30:17,530 >> mkdir, maaari mong marahil hulaan. 616 00:30:17,530 --> 00:30:18,440 Gumawa ng direktoryo. 617 00:30:18,440 --> 00:30:22,010 Kaya hindi mo pumunta sa menu ng ilang mga file at piliin ang Bagong Folder sa environment na ito. 618 00:30:22,010 --> 00:30:27,410 Sa halip, i-type mo ang command na espasyo mkdir at pagkatapos ay ang pangalan ng folder 619 00:30:27,410 --> 00:30:29,850 na nais mong likhain, at ito ay tapos na. 620 00:30:29,850 --> 00:30:32,380 >> rm, maaari mong marahil hulaan. 621 00:30:32,380 --> 00:30:33,480 Alisin o tanggalin. 622 00:30:33,480 --> 00:30:36,740 Kaya kung nais mong tanggalin ang isang file, bibigyan ka makita sa hanay problema kung paano mo 623 00:30:36,740 --> 00:30:37,240 Maaari gawin ito. 624 00:30:37,240 --> 00:30:39,510 At rmdir, alisin ang direktoryo. 625 00:30:39,510 --> 00:30:42,320 >> Kaya, muli, kakailanganin ko ay may posibilidad upang lumipad sa ilang ng mga detalye, isa, dahil 626 00:30:42,320 --> 00:30:46,010 ang mga ito ay hindi lahat na magkano masaya na gumastos sa oras, ngunit ang dalawa, ibibigay namin sa iyo sa 627 00:30:46,010 --> 00:30:48,720 magkano ang mas detalyado sa alinman sa mga problema kurso ni Nagtatakda, lalo na 628 00:30:48,720 --> 00:30:52,370 ang standard edition, sa alinmang mga hakbang na maaaring kailangan mong i-type kaya 629 00:30:52,370 --> 00:30:54,830 na nakakakuha ka ng higit pa at higit pa umaliw sa mga bagay na ito. 630 00:30:54,830 --> 00:30:57,430 >> Ngunit ngayon hayaan mang-ulol sa akin apart isa pang bagay. 631 00:30:57,430 --> 00:31:02,580 Kapag kami gumawa ng nai-type kumusta ng ilang sandali ang nakalipas, Nakita namin ang isang misteriyoso pagkakasunud-sunod ng mga utos. 632 00:31:02,580 --> 00:31:04,805 Nakita namin, muli, gumawa ng halo. 633 00:31:04,805 --> 00:31:07,640 634 00:31:07,640 --> 00:31:08,520 OK, sabihin gawin ito. 635 00:31:08,520 --> 00:31:11,840 Ako ay tungkol sa upang makagawa ng isang pagkakamali, ngunit [Hindi marinig] ngayon umamin ako ay tungkol sa 636 00:31:11,840 --> 00:31:14,400 at gawin itong kusa. 637 00:31:14,400 --> 00:31:15,810 >> Ano ang gagawin ko mali lang ngayon? 638 00:31:15,810 --> 00:31:18,680 639 00:31:18,680 --> 00:31:21,060 Oo, kaya hindi ako sa Dropbox direktoryo, dahil ang isang sandali ang nakalipas ko 640 00:31:21,060 --> 00:31:22,720 CD-type na lang at pindutin ang enter. 641 00:31:22,720 --> 00:31:25,480 Naka-zoom na ako pabalik sa kung saan ako nagsimula, na kung saan ay hindi na kung saan ang aking mga file 642 00:31:25,480 --> 00:31:31,720 ay, kaya ko talagang kailangan na gawin ang CD Dropbox ipasok, at ngayon ang maaari kong gawin rm kumusta 643 00:31:31,720 --> 00:31:34,060 ipasok, alisin regular na file kumusta. 644 00:31:34,060 --> 00:31:35,200 Hindi ko alam kung bakit ito kaya misteriyoso. 645 00:31:35,200 --> 00:31:37,600 Iyon lang ang paraan sigurado ka ba Gusto mo bang tanggalin kumusta? 646 00:31:37,600 --> 00:31:41,510 Maaari mong i-type y para sa yes, ipasok, at ngayon ito ay nawala. 647 00:31:41,510 --> 00:31:46,010 >> At ngayon, kung ako type gawing kumusta muli, ito ay pagpunta sa muling likhain ang aking mga bagay na code, 648 00:31:46,010 --> 00:31:47,460 muling likhain ang mga zero at mga bago. 649 00:31:47,460 --> 00:31:51,070 Ngunit ano ang deal sa may ito napakatagal na command? 650 00:31:51,070 --> 00:31:53,960 Well, kami mang-ulol-hatiin ito bago mahaba, ngunit gumawa - 651 00:31:53,960 --> 00:31:55,500 Sinabi ko ng kaunti ng isang maliit na kasinungalingan bago - 652 00:31:55,500 --> 00:31:56,880 ay hindi isang tagatala. 653 00:31:56,880 --> 00:32:00,350 Gawing ay isang programa na awtomatikong figure out kung paano patakbuhin ang isang 654 00:32:00,350 --> 00:32:02,060 tagatala para sa iyo. 655 00:32:02,060 --> 00:32:07,490 >> Kaya ang command na ikaw talaga ay dapat na tumatakbo upang i-convert ang hello.c 656 00:32:07,490 --> 00:32:11,240 kumusta sa aktwal na hitsura ang kaunti pa tulad nito. 657 00:32:11,240 --> 00:32:15,900 At huwag sana mayroon kaming upang aktwal na tandaan na kailanman type na buo 658 00:32:15,900 --> 00:32:17,280 pagkakasunud-sunod ng mga command out. 659 00:32:17,280 --> 00:32:21,360 Ang layunin ng gumawa sa buhay ay upang tandaan na ang antas ng pagiging mahirap para sa 660 00:32:21,360 --> 00:32:24,470 amin at automate kung ano gagawin kung hindi man maging masyadong pagod sa hakbang na ito. 661 00:32:24,470 --> 00:32:26,040 >> Ngunit maaari kong tinatayang na. 662 00:32:26,040 --> 00:32:29,960 Kaya per ito kaunti sheet impostor dito, ako maaari tinatayang kung ano ang command na iyon ay 663 00:32:29,960 --> 00:32:33,960 paggawa sa pamamagitan ng simpleng pag-type kalatungin, na kung saan ay ang pangalan ng tagatala kami ay magiging 664 00:32:33,960 --> 00:32:35,170 gamit ang semestre. 665 00:32:35,170 --> 00:32:38,500 Kung alinman sa mga mo pa kailanman tapos iOS pag-unlad para sa iPhone o iPad, 666 00:32:38,500 --> 00:32:42,930 Kalatungin ay ang programa na iyong ginagamit sa loob xcode upang gawin ang iyong mga apps. 667 00:32:42,930 --> 00:32:46,360 Kalatungin, bagaman, ay lamang ng isa pang programa na ang pangalan maaari naming i-type sa command na 668 00:32:46,360 --> 00:32:49,210 prompt, at sa pamamagitan ng pagpapasok ito ngayon, Maaari ba kitang ipakilala ang isang bagay na ang isang 669 00:32:49,210 --> 00:32:52,410 maliit na kinatawan ng mga utos na dumating. 670 00:32:52,410 --> 00:32:53,910 Kaya ipaalam sa akin gawin ito nang mano-mano. 671 00:32:53,910 --> 00:32:59,240 >> Kaya rm kumusta, at ngayon ay mapapansin kung sakaling Ako, tulad ng isang katinuan suriin - 672 00:32:59,240 --> 00:33:03,180 . / Kumusta, ano ang gagawin mo sa tingin ko Dapat makita kung gagawin ko ito? 673 00:33:03,180 --> 00:33:04,060 Ang ilang mga uri ng error. 674 00:33:04,060 --> 00:33:05,110 Walang naturang file na direktoryo. 675 00:33:05,110 --> 00:33:06,740 Kaya na ang isa ay talagang kaakit-akit direkta. 676 00:33:06,740 --> 00:33:08,110 >> Kaya ngayon hayaan mo akong i-clear ang screen. 677 00:33:08,110 --> 00:33:11,370 Control S nililimas lamang ang screen upang alisin ang ilang mga distractions. 678 00:33:11,370 --> 00:33:17,160 At ngayon pupuntahan ko nang manu-mano uri kalatungin-halo o hello.c. 679 00:33:17,160 --> 00:33:18,890 Kaya kung ano ito ay tungkol sa upang gawin? 680 00:33:18,890 --> 00:33:23,820 Mismong ang parehong bagay na gumawa ng ginawa para sa amin, ngunit ko itapon ang ilan sa 681 00:33:23,820 --> 00:33:25,430 hindi kailangan ang mga salita. 682 00:33:25,430 --> 00:33:28,570 >> Kalatungin ay ang program na pupuntahan kumuha ng file na. c bilang input at gumagawa 683 00:33:28,570 --> 00:33:30,110 mga zero at mga bilang output. 684 00:33:30,110 --> 00:33:35,120 Ngunit-o simula ngayon Tatawagan isang lumipat o ng isang flag. 685 00:33:35,120 --> 00:33:39,080 Ito ay lamang techie magulong pag-uusap para sa sinasabi ito ay isang salita-type ka sa isang prompt 686 00:33:39,080 --> 00:33:42,590 na kahit paano nakakaimpluwensya ang pag-uugali ng programa nagpapatakbo ka. 687 00:33:42,590 --> 00:33:47,180 Kaya ang sinuman nais upang hulaan kung ano-o nagbibigay? 688 00:33:47,180 --> 00:33:47,840 >> Output. 689 00:33:47,840 --> 00:33:52,670 Ito ay isang tao lamang napagpasyahan-o ibig sabihin output ng isang file na tinatawag na halo at gawin bilang 690 00:33:52,670 --> 00:33:56,440 input ano ang huling salita sa ay prompt, hello.c, upang kung ako pindutin ang 691 00:33:56,440 --> 00:33:58,930 Ipasok ngayon, walang tila mangyari. 692 00:33:58,930 --> 00:34:02,010 At nang kakatwa sapat, dito sa mundo ng programming, kung wala ang mangyayari, 693 00:34:02,010 --> 00:34:03,980 na marahil isang magandang bagay dahil mayroong walang error 694 00:34:03,980 --> 00:34:05,350 mensahe sa screen. 695 00:34:05,350 --> 00:34:07,190 Hello, ang Enter. 696 00:34:07,190 --> 00:34:08,670 Aking mga programa na ngayon tumakbo. 697 00:34:08,670 --> 00:34:14,517 >> Ngunit maaari kong gawin nakababagod kaunti mga bagay tulad ng ito. kalatungin-o, hihihi, hello.c, 698 00:34:14,517 --> 00:34:18,590 ipasok, at ngayon ay mayroon akong isang kaparehong programa na may pangalang hihihi. 699 00:34:18,590 --> 00:34:20,739 Ito behaves ang pareho, ngunit ang pangalan ay naiiba. 700 00:34:20,739 --> 00:34:23,360 >> Kaya ito ay lamang sabihin na kung gusto mo upang maka-impluwensya ang pag-uugali ng isang 701 00:34:23,360 --> 00:34:25,909 programa, kami ay pagpunta sa nagiging makita ang mga bagay na tinatawag na 702 00:34:25,909 --> 00:34:27,739 linya ng command argumento. 703 00:34:27,739 --> 00:34:28,639 Ito ay isang linya. 704 00:34:28,639 --> 00:34:29,580 Tina-type mo command. 705 00:34:29,580 --> 00:34:30,969 Samakatuwid, linya ng command. 706 00:34:30,969 --> 00:34:35,690 At linya ng command argumento lamang ang mga salita o maliit na piraso ng syntax na 707 00:34:35,690 --> 00:34:40,840 sa paano pa man maka-impluwensya ang pag-uugali ng mga programa na kami ay tumatakbo. 708 00:34:40,840 --> 00:34:44,639 >> Ang lahat ng mga karapatan, iyon ay marahil ang pinaka- pagbubutas programa maaari naming magsulat at makita. 709 00:34:44,639 --> 00:34:46,670 Natin ngayon gawin ang isang bagay mas kawili-wiling. 710 00:34:46,670 --> 00:34:49,420 Hayaan akong sige lang at lumikha ng isang bagong file. 711 00:34:49,420 --> 00:34:53,139 Pupunta ako sa sige at i-save ito sa Home directory John Harvard bilang, 712 00:34:53,139 --> 00:34:58,670 sabihin call ito custom.c, upang maging medyo pasadyang programa. 713 00:34:58,670 --> 00:35:01,920 Pupunta ako upang mag-zoom in sa aking tuktok ng ang mga tab dito at simulan muli. 714 00:35:01,920 --> 00:35:03,730 >> Isama ang standard stdio.h. 715 00:35:03,730 --> 00:35:04,990 Higit pa sa na sa ilang sandali. 716 00:35:04,990 --> 00:35:08,240 int pangunahing (walang bisa), nang higit pa sa na sa ilang sandali. 717 00:35:08,240 --> 00:35:09,490 printf ("kumusta, David"). 718 00:35:09,490 --> 00:35:12,810 719 00:35:12,810 --> 00:35:14,560 Karamihan sa higit pang mga kagiliw-giliw, tama? 720 00:35:14,560 --> 00:35:20,690 >> Kaya ngayon kung - hindi dahil sa aking pangalan, dahil lang sa iba ito - 721 00:35:20,690 --> 00:35:24,950 gumawa ng custom na ipasok. 722 00:35:24,950 --> 00:35:26,780 Custom, kumusta, si David. 723 00:35:26,780 --> 00:35:28,020 Pero kahit na, masyadong, ay isang maliit na kasinungalingan. 724 00:35:28,020 --> 00:35:30,850 Ang program na ito ay maaaring pati na rin ay tinatawag na david.c, dahil hindi ito custom 725 00:35:30,850 --> 00:35:31,880 pag-uugali sa lahat. 726 00:35:31,880 --> 00:35:35,080 Talagang, gusto ko ng isang programa na nagtatanong ang mga gumagamit para sa kanilang mga pangalan. 727 00:35:35,080 --> 00:35:36,320 >> Kaya paano ko gawin iyon? 728 00:35:36,320 --> 00:35:38,520 Well, hayaan mo akong mag-scroll pataas sa paglipas dito. 729 00:35:38,520 --> 00:35:42,960 At bago gamitin ko ang isang pahayag sa Wala, bago gamitin ko printf, 730 00:35:42,960 --> 00:35:47,600 kung hindi man ay kilala bilang isang function, sabihin sa akin unang tanungin ang user para sa ilang mga input. 731 00:35:47,600 --> 00:35:49,690 >> Kaya upang magawa ito, kailangan ko upang gawin ang isang pares ng mga bagay. 732 00:35:49,690 --> 00:35:53,360 One, Kailangan ko ng isang lugar upang mag-imbak ng gumagamit pangalanan matapos ko na tinanong sa kanya o 733 00:35:53,360 --> 00:35:54,510 siya para dito. 734 00:35:54,510 --> 00:36:00,120 Ano bumuo ang kailangan kong gamitin marahil mag-imbak ng halaga tulad na? 735 00:36:00,120 --> 00:36:00,910 Ang isang variable. 736 00:36:00,910 --> 00:36:05,130 >> Kaya hindi katulad scratch, kung saan mo lamang makakuha ng isang magaling puzzle piraso, narito, kami ay may sa 737 00:36:05,130 --> 00:36:07,620 gamitin, malinaw naman, mga salita sa ipahayag ang ating sarili. 738 00:36:07,620 --> 00:36:11,510 At simula ngayon, anumang oras na gusto mo ng salita o isang parirala, sa programming, 739 00:36:11,510 --> 00:36:13,090 kami ay pagpunta sa tumawag na isang string. 740 00:36:13,090 --> 00:36:14,990 Kaya isang string ay isang salita o parirala sa isang. 741 00:36:14,990 --> 00:36:18,170 Ito ay isang pagkakasunod-sunod ng zero o higit pang mga character, mas pormal. 742 00:36:18,170 --> 00:36:22,520 >> At kung gusto mo tulad ng isang variable sa umiiral, ang iyong sasabihin ninyo akong bigyan ng isa. 743 00:36:22,520 --> 00:36:27,490 At ang paraan sa pamamagitan ng kung saan gagawin mo na ay upang sabihin string s tuldok-kuwit, kung saan maaari maging s 744 00:36:27,490 --> 00:36:28,740 anumang nais mo. 745 00:36:28,740 --> 00:36:30,510 Sa katunayan, s ay medyo underwhelming. 746 00:36:30,510 --> 00:36:33,250 Hayaan akong sige at higit pa malinaw na call ito pangalan. 747 00:36:33,250 --> 00:36:36,570 Bigyan mo ako ng isang string na tinatawag na pangalan. 748 00:36:36,570 --> 00:36:40,180 >> Ngunit ngayon, ano ang tao pangalan sa pamamagitan ng default? 749 00:36:40,180 --> 00:36:42,930 Well, kung ang tao ay hindi type ng kahit ano sa, malinaw naman, may pupuntahan 750 00:36:42,930 --> 00:36:44,310 upang maging walang halaga sa pangalan. 751 00:36:44,310 --> 00:36:48,120 At ito lumiliko out sa C, kung hindi mo bigyan sa isang variable ng isang halaga, ito ay pagpunta sa 752 00:36:48,120 --> 00:36:49,180 magkaroon ng isang halaga ng basura. 753 00:36:49,180 --> 00:36:51,650 Maaaring magkaroon ng ilang mga random na mga zero at mga bago, kaya lamang ka ng pagpunta upang makita ang 754 00:36:51,650 --> 00:36:54,570 basura, tunay, sa screen kung subukan mong ipakita ito. 755 00:36:54,570 --> 00:36:59,800 >> Ngunit maaari ko aayusin na sa pamamagitan ng sinasabi, talaga, tindahan sa loob ng pangalan ang 756 00:36:59,800 --> 00:37:01,400 sumusunod na halaga. 757 00:37:01,400 --> 00:37:09,240 Ang paraan iimbak mo ang mga halaga sa mga variable ay kung mayroon kang isang pangalan ng variable sa 758 00:37:09,240 --> 00:37:13,370 pakaliwa, kailangan mong ilagay kahit papaano kung ano ang iyong nais na mag-imbak sa ito sa kanan, at 759 00:37:13,370 --> 00:37:17,650 ang syntax para sa na ang nangyayari na maging tulad ng mga sumusunod. 760 00:37:17,650 --> 00:37:22,120 >> Hindi namin nakita ito bago, ngunit tumagal sa pananampalataya para sa isang sandali na may 761 00:37:22,120 --> 00:37:26,270 Umiiral na ang isa pang statement sa mundo na pupuntahan ko ulit tumawag function, 762 00:37:26,270 --> 00:37:28,310 at pag-andar na ito ay tinatawag na makakuha ng string. 763 00:37:28,310 --> 00:37:29,670 At ito ang literal na. 764 00:37:29,670 --> 00:37:34,680 Ito kahit papaano ay nakakakuha ng pagkakasunud-sunod ng mga character mula sa mga tao at pagkatapos ay 765 00:37:34,680 --> 00:37:36,380 ang isang bagay na may ito. 766 00:37:36,380 --> 00:37:38,410 >> At ito ang hitsura ng misteriyoso syntax. 767 00:37:38,410 --> 00:37:40,880 Karaniwan, kung gumagamit ka ng katumbas palatandaan - ikaw ay nasa mundo ng, sabihin nating, 768 00:37:40,880 --> 00:37:43,740 algebra, at ikaw talaga sinasabi x ay katumbas ng 1. 769 00:37:43,740 --> 00:37:46,570 Narito hindi namin sinasabi na iyon pangalan ay katumbas makakuha ng string. 770 00:37:46,570 --> 00:37:51,270 Namin sinasabi na tindahan sa pangalan kung ano ang sa kanang bahagi 771 00:37:51,270 --> 00:37:52,400 na ng equals sign. 772 00:37:52,400 --> 00:37:55,030 Ang equals sign kumakatawan ang pagtatalaga operator. 773 00:37:55,030 --> 00:37:58,240 Ito ay ang syntax na nagsasabing ilagay kung ano ang nasa kanang bahagi sa loob ng kung ano ang 774 00:37:58,240 --> 00:37:59,090 sa kaliwa. 775 00:37:59,090 --> 00:38:03,040 Kaya makapag-string ay isang bagong piraso ng pag-andar na hindi lamang ang ibig 776 00:38:03,040 --> 00:38:03,670 isang bagay - 777 00:38:03,670 --> 00:38:05,000 nagtatanong sa gumagamit para sa isang string - 778 00:38:05,000 --> 00:38:08,500 ito rin ay nagbabalik ito, kaya na magsalita. 779 00:38:08,500 --> 00:38:10,690 >> Kaya sabihin makita kung ano ang nangyayari na mangyayari dito. 780 00:38:10,690 --> 00:38:14,300 Pupunta ako sa sige ngayon at mag-zoom out, at ako pagpunta upang makakuha ng isang pares ng mga 781 00:38:14,300 --> 00:38:15,780 mga pagkakamali sa aking mga prompt. 782 00:38:15,780 --> 00:38:18,750 Pupunta ako mag-type gumawa ng custom, ipasok. 783 00:38:18,750 --> 00:38:19,230 Wow. 784 00:38:19,230 --> 00:38:20,500 Ang isang buong grupo ng mga pagkakamali. 785 00:38:20,500 --> 00:38:23,120 >> Ang lahat ng mga karapatan, kaya ito ay uri ng napakalaki, walang duda sa una, pero 786 00:38:23,120 --> 00:38:27,220 ito lumiliko out ang lahat ng mga napaka- tinatanggap na misteriyoso mensahe ng error ay 787 00:38:27,220 --> 00:38:30,700 nagre-refer na sa ilang mga pattern na magsisimula kami upang makita ang paglipas ng panahon. 788 00:38:30,700 --> 00:38:32,600 Kaya isa ito Kukunin ko off ang lakas ng loob, dahil ito ay unang. 789 00:38:32,600 --> 00:38:35,700 Gumamit ng hindi nagbigay-alam identifier string. 790 00:38:35,700 --> 00:38:39,400 >> Iyon ay nangangahulugan lamang na gedit, o kalatungin, sa kasong ito, ay hindi alam 791 00:38:39,400 --> 00:38:40,780 kung ano ang ibig sabihin ko sa pamamagitan ng string. 792 00:38:40,780 --> 00:38:43,880 At iyon ay dahil sa C, ang programming wika, doon talaga 793 00:38:43,880 --> 00:38:47,750 Walang variable ng uri ng string. 794 00:38:47,750 --> 00:38:49,810 C ay hindi alam na mga string umiiral. 795 00:38:49,810 --> 00:38:52,260 >> Ngunit kami, CS50 staff, gawin. 796 00:38:52,260 --> 00:38:57,080 At kaya nang maaga ng klase, kami lumikha ng isang file na tinatawag na CS50.h. 797 00:38:57,080 --> 00:39:00,060 At sa loob ng file na ito - at higit pa sa syntax na dumating - 798 00:39:00,060 --> 00:39:03,730 sa loob ng file na ito ay isang pagbibigay-kahulugan ng kung ano ang ko lang ang tinukoy 799 00:39:03,730 --> 00:39:05,340 walang bawas ang mga salita bilang isang string. 800 00:39:05,340 --> 00:39:09,100 Kaya sa pamamagitan lamang ng concluding ito isang linya ng code sa aking mga programa, Ako ngayon 801 00:39:09,100 --> 00:39:14,620 pagtuturo gedit at gumawa at kalatungin lahat sa kung ano ang i-string ay isang. 802 00:39:14,620 --> 00:39:15,475 >> Hindi ko alam kung paano pa. 803 00:39:15,475 --> 00:39:17,110 Sa ilang linggo, bibigyan namin ng alisan ng balat pabalik na layer. 804 00:39:17,110 --> 00:39:20,340 Ngunit para sa ngayon, alam na ito ay nagtuturo ang tagatala kung ano ang isang 805 00:39:20,340 --> 00:39:22,020 string talaga. 806 00:39:22,020 --> 00:39:24,230 >> Kaya ngayon hayaan mo akong i-clear ang aking down na terminal dito. 807 00:39:24,230 --> 00:39:28,530 Hayaan akong muling patakbuhin gumawa ng custom, at ako Nalutas ang lahat ng mga problemang ito. 808 00:39:28,530 --> 00:39:30,210 Kaya ito, masyadong, ay pagpunta sa maging isang umuulit na tema. 809 00:39:30,210 --> 00:39:34,190 Lamang ako ay nagsulat ng isang linya 9 programa, at pa ako nagkaroon 18 mga linya ng mga error. 810 00:39:34,190 --> 00:39:35,650 Iyon uri ng intimidating. 811 00:39:35,650 --> 00:39:39,260 Ngunit mapagtanto na sila madalas kaskad tulad na isang maliit pagkakamali pinalitaw 812 00:39:39,260 --> 00:39:43,070 ang pagkalito para sa tagatala, at tinitingnan nito magkano ang mas masahol kaysa ito ay. 813 00:39:43,070 --> 00:39:47,460 >> Kaya ngayon ang isang matalas tagamasid ay alam na nakakakuha ako ng isang string mula sa 814 00:39:47,460 --> 00:39:51,460 gumagamit, ngunit hindi ako talaga ginagawa kung ano dito? 815 00:39:51,460 --> 00:39:53,570 Hindi ko talaga ginagawa anumang bagay na may ito. 816 00:39:53,570 --> 00:40:01,240 Kaya kung ako talaga tumakbo ang mga custom na muli, ito ang nangyayari sa makatarungan umupo doon. 817 00:40:01,240 --> 00:40:03,380 Ano kaya ang nangyari? 818 00:40:03,380 --> 00:40:07,990 Aking mga programa Mukhang natigil sa ano linya, gusto mo sabihin? 819 00:40:07,990 --> 00:40:09,860 >> Kaya talaga ito ay natigil sa linya 7. 820 00:40:09,860 --> 00:40:13,600 At hindi nasaksihan namin ito dati, ngunit sa linya 7, mayroong, muli, ito 821 00:40:13,600 --> 00:40:14,650 pahayag, kumuha ng string. 822 00:40:14,650 --> 00:40:15,930 At ginagawa nito kung ano ang sinasabi nito. 823 00:40:15,930 --> 00:40:18,480 Ito ay naghihintay na ngayon para sa mga tao gawin ang mga string. 824 00:40:18,480 --> 00:40:22,230 Ito ay ganap unintuitive sa akin, ng tao ang, dahil hindi ko pa na-Sinabi 825 00:40:22,230 --> 00:40:23,040 kung ano ang gagawin. 826 00:40:23,040 --> 00:40:27,320 >> Ngunit ipaalam sa akin sige sa pananampalataya at hayaan mo akong magpanggap na maging Rob. 827 00:40:27,320 --> 00:40:28,500 Enter. 828 00:40:28,500 --> 00:40:30,930 Iyan ay hindi ang programa ko nilalayon. 829 00:40:30,930 --> 00:40:32,350 Kaya mayroon kaming ang aming unang blog. 830 00:40:32,350 --> 00:40:34,390 >> Ngunit sabihin subukan upang dahilan sa pamamagitan ng kung bakit ito ang kaso. 831 00:40:34,390 --> 00:40:36,940 Una, hayaan mo akong ayusin ang unang problema. 832 00:40:36,940 --> 00:40:44,690 Hayaan akong magdagdag ng isang linya dito na nagsasabing printf, ano ang pangalan mo? 833 00:40:44,690 --> 00:40:47,700 Sabihin lang gawin malapit quote, isara panaklong. 834 00:40:47,700 --> 00:40:51,350 >> Ngayon hayaan mo akong muling patakbuhin ang program. 835 00:40:51,350 --> 00:40:51,760 Problema. 836 00:40:51,760 --> 00:40:54,690 Hindi ako nakakakita na. 837 00:40:54,690 --> 00:40:54,930 >> I-right. 838 00:40:54,930 --> 00:40:55,990 Hindi ako mag-recompile ito. 839 00:40:55,990 --> 00:40:59,800 Kaya sa isang wika tulad ng C, dahil sa iyo baguhin ang source code ay hindi nangangahulugan na 840 00:40:59,800 --> 00:41:03,170 na nabago mo ang iyong mga object code upang makabuo ng bagong mga bagay na code, 841 00:41:03,170 --> 00:41:04,330 bagong mga zero at mga bago. 842 00:41:04,330 --> 00:41:05,590 Kailangan mong mag-recompile. 843 00:41:05,590 --> 00:41:10,300 Kung ako ngayon muling patakbuhin custom, ipasok, ah, ng kaunti pa malinaw. 844 00:41:10,300 --> 00:41:11,890 Ang pangalan ko ay Rob. 845 00:41:11,890 --> 00:41:12,760 Maraming surot pa rin. 846 00:41:12,760 --> 00:41:14,170 >> At gusto ko magtaltalan mayroong ng ilang mga bug ngayon. 847 00:41:14,170 --> 00:41:15,450 Ito lang mukhang kahindik-hindik, lantaran. 848 00:41:15,450 --> 00:41:18,980 Nagustuhan, Nagnais ng pinakamababang, dapat na mayroon ako isang space doon, o ilipat ang 849 00:41:18,980 --> 00:41:20,330 cursor sa bagong linya. 850 00:41:20,330 --> 00:41:21,370 >> At talagang, ang mga bagong linya. 851 00:41:21,370 --> 00:41:24,660 Iyon uri ng isang susi parirala na dito nasaksihan namin subalit hindi tinukoy. 852 00:41:24,660 --> 00:41:28,560 Ang paraan na kung saan makakakuha ka ng teksto upang ilipat papunta sa susunod na linya, 853 00:41:28,560 --> 00:41:29,480 hindi mo magawa ito. 854 00:41:29,480 --> 00:41:31,070 Ito ay nakakalito sa mga computer. 855 00:41:31,070 --> 00:41:33,830 Ito Mukhang dalawang magkahiwalay na mga linya ng code, wala sa kung saan 856 00:41:33,830 --> 00:41:35,010 ay ganap na ganap tama. 857 00:41:35,010 --> 00:41:39,380 Sa halip ay mayroon na maging mas malinaw at sabihin, magbigay sa akin ng isang bagong linya, na aming 858 00:41:39,380 --> 00:41:41,810 kumatawan sa c may backslash n. 859 00:41:41,810 --> 00:41:43,230 >> Kaya mayroong ilang mga character tulad. 860 00:41:43,230 --> 00:41:45,080 Backslash n ay maayos na Aesthetic. 861 00:41:45,080 --> 00:41:49,640 862 00:41:49,640 --> 00:41:50,870 Hayaan akong mag-recompile ang aking programa. 863 00:41:50,870 --> 00:41:52,300 Hayaan akong muling patakbuhin ang aking mga programa. 864 00:41:52,300 --> 00:41:53,520 >> Ito mukhang mas mahusay. 865 00:41:53,520 --> 00:41:56,960 Ito ay pa rin medyo primitive, ngunit ito ay din pa rin maraming surot. 866 00:41:56,960 --> 00:41:58,090 Kaya mayroong isa - 867 00:41:58,090 --> 00:42:01,680 kahit na hindi mo pa-program bago, maaari mong marahil kumuha ng isang hula 868 00:42:01,680 --> 00:42:04,960 sa kung bakit ang programa ito ay pa rin flawed. 869 00:42:04,960 --> 00:42:08,540 Ano ang kailangan kong gawin iyon Hindi ko pa tapos pa? 870 00:42:08,540 --> 00:42:10,450 >> Kaya ko bang talagang gawin isang bagay na may pangalan. 871 00:42:10,450 --> 00:42:14,190 Tulad ng sa simula, maaari mo talaga magtalaga ng isang variable na tulad n o 872 00:42:14,190 --> 00:42:16,150 kontrahin tulad ng ginawa namin huling linggo - isang halaga. 873 00:42:16,150 --> 00:42:18,930 Ngunit kung hindi ka gumawa ng anumang bagay na may ito, walang pupuntahan mangyari. 874 00:42:18,930 --> 00:42:20,210 >> Ang lahat ng mga karapatan, kaya hayaan ayusin. 875 00:42:20,210 --> 00:42:23,670 Hayaan akong ilagay ang aking mga variable doon, at hayaan mo akong bumaba dito. 876 00:42:23,670 --> 00:42:29,120 Hayaan akong mag-recompile, hayaan mo akong re-run, Rob. 877 00:42:29,120 --> 00:42:30,540 Ngayon Ako ay lamang ng isang tulala, tama? 878 00:42:30,540 --> 00:42:33,280 >> Kaya ito ay hindi talaga ang nakakakuha sa akin ng anumang karagdagang. 879 00:42:33,280 --> 00:42:35,850 Ngunit na noon ay isang perpektong natural likas na hilig, nais kong magpakilala, tama? 880 00:42:35,850 --> 00:42:39,340 Kung ang variable ay tinatawag na pangalan, at ako nais ito upang pumunta doon, bakit hindi ko na lang 881 00:42:39,340 --> 00:42:40,200 type ito doon? 882 00:42:40,200 --> 00:42:42,210 >> Well, siyempre, mayroon kaming upang makilala sa ngayon 883 00:42:42,210 --> 00:42:44,070 sa pagitan ng kung ano ay isang string? 884 00:42:44,070 --> 00:42:47,060 Pansinin na quote magpanipi dito, kumusta pangalan? 885 00:42:47,060 --> 00:42:48,960 Ito talaga mismo ay isang string. 886 00:42:48,960 --> 00:42:49,820 Matapang Ito ay ma-code. 887 00:42:49,820 --> 00:42:50,690 Ito ay hindi mula sa tao. 888 00:42:50,690 --> 00:42:54,020 Ito ay mula sa akin, ang orihinal na programmer, ngunit pa rin ito ng isang string. 889 00:42:54,020 --> 00:42:58,300 >> Kaya't kung ikaw Literal na magsulat N-A-M-E loob ng isang string, kung ano ang nangyayari sa 890 00:42:58,300 --> 00:42:59,120 makakuha ng mga naka-print? 891 00:42:59,120 --> 00:43:03,660 Well, N-A-M-E. Namin sa halip kailangan upang sabihin sa printf, huwag i-print 892 00:43:03,660 --> 00:43:04,870 out literal pangalanan. 893 00:43:04,870 --> 00:43:06,680 I-print out ang halaga ng pangalan. 894 00:43:06,680 --> 00:43:08,410 >> At upang gawin iyon, ginagawa namin ang mga sumusunod na. 895 00:43:08,410 --> 00:43:09,800 At ito lamang ang isang tao convention. 896 00:43:09,800 --> 00:43:14,990 Namin sa halip sabihin s%, at na Nakatayo para sa string. 897 00:43:14,990 --> 00:43:19,810 At pagkatapos ay sa dulo ng aking mga malapit na quote, Pupunta ako upang ilagay ang isang kuwit at 898 00:43:19,810 --> 00:43:23,790 pumasa sa pangalawang argumento sa pahayag na ito. 899 00:43:23,790 --> 00:43:25,970 Pupunta ako mag-type pangalan doon. 900 00:43:25,970 --> 00:43:27,960 >> Kaya ngayon mapansin kami ay may isang bahagyang bagong syntax. 901 00:43:27,960 --> 00:43:32,320 Mayroon pa kaming dalawang panaklong, at simula ngayon hayaan sabihin sa akin na ang mga bagay-bagay 902 00:43:32,320 --> 00:43:36,830 sa pagitan ng mga panaklong ay kumakatawan argumento sa isang function - 903 00:43:36,830 --> 00:43:39,730 input na ay pagpunta sa paanuman makaimpluwensya sa pag-uugali nito. 904 00:43:39,730 --> 00:43:43,010 Kaya sa pamamagitan ng na ang logic, kung gaano karaming mga argumento printf ay mukhang 905 00:43:43,010 --> 00:43:45,450 pagkuha sa panahon na ito? 906 00:43:45,450 --> 00:43:48,370 >> Kaya ito ay anyong iinumin dalawa, at na sa katunayan ipinahiwatig 907 00:43:48,370 --> 00:43:49,570 sa pamamagitan ng mga kuwit dito. 908 00:43:49,570 --> 00:43:51,640 Kaya ito ay isang argument sa pagitan ng mga panipi. 909 00:43:51,640 --> 00:43:54,540 Kahit na ito ay may isang kuwit sa loob nito, ang lahat ng bagay ay nasa mga quote, na nangangahulugang 910 00:43:54,540 --> 00:43:56,230 isa ito sa mahabang string. 911 00:43:56,230 --> 00:43:58,280 Comma, pangalan ng variable. 912 00:43:58,280 --> 00:44:00,680 >> Kaya ngayon hayaan mo akong mag-zoom out. 913 00:44:00,680 --> 00:44:02,240 Hayaan akong muling patakbuhin ito. 914 00:44:02,240 --> 00:44:03,490 Rob. 915 00:44:03,490 --> 00:44:06,520 Diyablo, ano ang ginawa kong mali? 916 00:44:06,520 --> 00:44:07,920 >> Ang lahat ng mga karapatan, kaya kailangan mong mag-recompile. 917 00:44:07,920 --> 00:44:11,030 Kaya muli, madaling pagkakamali upang gawing maaga muli at muli. 918 00:44:11,030 --> 00:44:15,280 Kaya ngayon patakbuhin muli custom, Rob, ipasok, at voila. 919 00:44:15,280 --> 00:44:17,110 Kami ngayon ay mayroon ng isang pasadyang programa. 920 00:44:17,110 --> 00:44:21,660 >> Kaya ako ngayon ay may programa na paggamit ng ilang mga katangian 921 00:44:21,660 --> 00:44:22,520 na nagkakahalaga noting. 922 00:44:22,520 --> 00:44:27,850 One, gumagamit ako ng CS50.h, kung hindi man na kilala bilang ang CS50 library. 923 00:44:27,850 --> 00:44:33,050 At sa loob ng CS50 library ay mga function na ang ibang mga tao ay nagsulat - 924 00:44:33,050 --> 00:44:33,980 lalo na sa mga tauhan - 925 00:44:33,980 --> 00:44:36,620 para magamit mo, at makakuha ng string ay isa sa mga ito. 926 00:44:36,620 --> 00:44:41,310 >> Sa Loob ng line 2 ay stdio.h, at kung bakit ito ay doon? 927 00:44:41,310 --> 00:44:42,070 Kumuha ng isang hula. 928 00:44:42,070 --> 00:44:46,200 Ano umiiral sa loob ng standard IO magulang? 929 00:44:46,200 --> 00:44:46,940 Printf. 930 00:44:46,940 --> 00:44:49,600 Kaya printf, hindi mo makita ito kahit saan iba pa sa screen. 931 00:44:49,600 --> 00:44:51,870 Kailangan itong dumating sa computer na kahit papaano. 932 00:44:51,870 --> 00:44:54,870 Saan kinukuha ito nanggaling? 933 00:44:54,870 --> 00:44:57,660 Ito ay sa loob ng - ito ay ipinahayag, kaya na magsalita, sa loob ng 934 00:44:57,660 --> 00:44:59,890 isang file na tinatawag na stdio.h. 935 00:44:59,890 --> 00:45:02,670 >> Ngayon, para sa mga bagay na ito, kami ay bumalik sa kalaunan, dahil ito ay isang bit 936 00:45:02,670 --> 00:45:03,930 distracting para sa ngayon. 937 00:45:03,930 --> 00:45:05,490 Ito ay tumutukoy sa aming return type. 938 00:45:05,490 --> 00:45:07,660 Ito ay tumutukoy sa isang argumento. 939 00:45:07,660 --> 00:45:10,230 Ngunit para sa ngayon, kami ay nakatuon dito lamang sa mga linyang ito. 940 00:45:10,230 --> 00:45:13,280 >> Kaya string pangalan, lamang sa paglalagom, kung ano mismo ang gawin ito para sa akin? 941 00:45:13,280 --> 00:45:16,940 942 00:45:16,940 --> 00:45:19,560 Kaya ito ipinahayag sa isang variable uri ng string. 943 00:45:19,560 --> 00:45:22,630 Kaya ito ay ginawa upang maging para sa mga salita, hindi para sa mga numero. 944 00:45:22,630 --> 00:45:25,530 Tulad ng isang bukod, kung ginawa ko gusto itong maging isang numero, nais kong sabihin 945 00:45:25,530 --> 00:45:26,560 isang bagay tulad ng int. 946 00:45:26,560 --> 00:45:29,740 Kung Nais kong maging isang lumulutang na tuldok halaga, isang bagay na may isang decimal point, 947 00:45:29,740 --> 00:45:30,600 Gusto ko sabihin Float. 948 00:45:30,600 --> 00:45:32,640 Ngunit para sa ngayon, lamang ko na sinabi string. 949 00:45:32,640 --> 00:45:35,940 >> At Ibinigay ko variable na ito isang pangalan ng pangalan, ngunit maaari ko 950 00:45:35,940 --> 00:45:37,240 na tinatawag na ito ng kahit ano. 951 00:45:37,240 --> 00:45:39,340 Sa katunayan, orihinal, ako na tinatawag na ito S. 952 00:45:39,340 --> 00:45:41,050 >> Ito dito ay lamang ng isa pang statement. 953 00:45:41,050 --> 00:45:44,170 Gaano karaming mga argumento ay ito pahayag pagkuha? 954 00:45:44,170 --> 00:45:47,890 Kaya lamang ito tumatagal ng isa, at na ay isang simpleng Aesthetic detalye ng 955 00:45:47,890 --> 00:45:49,610 pagpapakita ng isang bagay sa ang screen sa akin. 956 00:45:49,610 --> 00:45:54,750 Ano ang line 8 paggawa sa mga tuntunin ng karaniwang tao? 957 00:45:54,750 --> 00:45:57,320 >> Nagiging isang halaga mula sa user - lalo, isang string - 958 00:45:57,320 --> 00:45:58,770 at kung ano ang ginagawa nito dito? 959 00:45:58,770 --> 00:46:02,450 Lubos Ito ay handing ito sa ibabaw ng mga lalaki sa kaliwang bahagi ng 960 00:46:02,450 --> 00:46:07,100 equals sign kaya na sa kasong ito, ang pangalan ng variable na maaari talagang iimbak ito. 961 00:46:07,100 --> 00:46:10,020 >> At pagkatapos ay printf ay isa pang Halimbawa ng isang function. 962 00:46:10,020 --> 00:46:11,870 At sinasabi naming tumawag sa isang function. 963 00:46:11,870 --> 00:46:13,870 Upang gamitin ang isang function ay tumawag sa isang function. 964 00:46:13,870 --> 00:46:15,640 Ito bagay sa malas tumatagal ng dalawang argumento. 965 00:46:15,640 --> 00:46:18,100 Ang isa, kuwit, ang isang ito. 966 00:46:18,100 --> 00:46:20,910 >> Ito ang isa mismo ay lamang ng isang string na naglalaman ng isang placeholder. 967 00:46:20,910 --> 00:46:23,860 Nangangahulugan ang% s maglagay ng isa pang string dito. 968 00:46:23,860 --> 00:46:27,360 At ito sa pamamagitan ng paglalagay ng pangalan matapos ang kuwit, na pagpasok 969 00:46:27,360 --> 00:46:29,420 na bagay para sa akin. 970 00:46:29,420 --> 00:46:31,300 >> Kaya ang maaari kong gawin iba pang mga bagay pa rin. 971 00:46:31,300 --> 00:46:36,820 Hayaan akong sige ngayon at gawin ang isang bit ng isang ulok programa, ngunit hayaan mo akong tanggalin ito, 972 00:46:36,820 --> 00:46:38,880 at hayaan mo akong lumikha ng isang loop. 973 00:46:38,880 --> 00:46:41,390 Habang totoo. 974 00:46:41,390 --> 00:46:45,210 Ang tunay na simbolo ay malinaw naman palaging pagpunta sa maging totoo. 975 00:46:45,210 --> 00:46:49,830 Kaya kung anong uri ng loop ako pampalaglag sa pamamagitan ng pagsusulat ng isang linya tulad nito? 976 00:46:49,830 --> 00:46:51,070 >> Kaya isang walang-katapusang loop, tama? 977 00:46:51,070 --> 00:46:52,090 Lamang habang totoo. 978 00:46:52,090 --> 00:46:56,210 Walang paraan ko maaaring baguhin ang mga salita tunay na maging anumang bagay, kaya ito ay 979 00:46:56,210 --> 00:46:57,310 lamang ng pagpunta sa magpatakbo magpakailanman. 980 00:46:57,310 --> 00:46:59,960 Kaya kung nag-sakaling talaga ay nagkaroon ng isang programa sa iyong Mac o PC na mukhang 981 00:46:59,960 --> 00:47:02,480 na na-lock up, o ito ay ginagawa isang bagay at isang bagay, at ikaw lamang 982 00:47:02,480 --> 00:47:05,500 ay hindi maaaring makuha ang mga bagay na umalis maliban kung reboot ang iyong computer o hilahin pataas ang 983 00:47:05,500 --> 00:47:08,360 Task Manager o mga katulad, narito ang naturang isang halimbawa. 984 00:47:08,360 --> 00:47:14,340 >> Maaari ko bang sabihin, "Ako ay isang maraming surot programa." Isara ang quote, isara 985 00:47:14,340 --> 00:47:15,780 panaklong, tuldok-kuwit. 986 00:47:15,780 --> 00:47:17,010 Kaya muli, mapapansin ang pattern. 987 00:47:17,010 --> 00:47:21,440 Kahit na ang ilan sa aming mga syntax ay bago, ang keyword na habang, ang keyword totoo, 988 00:47:21,440 --> 00:47:23,590 notice ko magkaroon ng parehong uri ng kulot tirante. 989 00:47:23,590 --> 00:47:25,890 Mayroon akong isang tuldok-kuwit at panaklong. 990 00:47:25,890 --> 00:47:28,000 >> Kaya ngayon sabihin sige at sumulat ng libro na ito. 991 00:47:28,000 --> 00:47:29,630 Gumawa ng pasadyang, mga pasadyang. 992 00:47:29,630 --> 00:47:32,690 993 00:47:32,690 --> 00:47:36,660 Kaya sa puntong ito, hindi mo kailangang i-restart ang iyong appliance, ang lahat ng karapatan? 994 00:47:36,660 --> 00:47:39,925 Kaya ang madaling aralin dito ay may dalawang daliri, Control C, 995 00:47:39,925 --> 00:47:41,230 magpapadala kami huminto na programa. 996 00:47:41,230 --> 00:47:45,430 Ngunit maaari mong makita ang eksaktong kung bakit ito bagay ay paulit-ulit na mismo muli at muli. 997 00:47:45,430 --> 00:47:48,080 >> Ang maaari kong gawin ng isang bagay ng kaunti mas kumplikadong bilang isang teaser. 998 00:47:48,080 --> 00:47:49,600 Pupunta ako sa sige at sabihin ang mga sumusunod na. 999 00:47:49,600 --> 00:47:55,210 Para sa int, na kung saan ay isang integer, i lamang ang isang generic na pangalan bigyan namin sa pinaka- 1000 00:47:55,210 --> 00:47:59,500 variable sa programming kapag ikaw ay lamang pagbibilang, ay katumbas ng 0. 1001 00:47:59,500 --> 00:48:08,640 Hayaan akong sige at sabihin habang i ay, sabihin nating, mas mababa sa 100, i plus plus. 1002 00:48:08,640 --> 00:48:10,240 Susubukan naming i-back na ang syntax na ito, ngunit ito lamang ay nangangahulugan na 1003 00:48:10,240 --> 00:48:12,270 dinagdagan i muli at muli. 1004 00:48:12,270 --> 00:48:14,200 >> At kung ano ang gusto kong gawin dito? 1005 00:48:14,200 --> 00:48:21,130 Printf, "ang maaari kong bilangin upang i." Ito ay isang maraming surot programa. 1006 00:48:21,130 --> 00:48:22,450 Ano ang sinabi ko talaga binabalak dito? 1007 00:48:22,450 --> 00:48:25,220 1008 00:48:25,220 --> 00:48:30,940 >> Porsyento hindi s, ngunit hindi mo gusto hulaan ito. % D ay isang integer decimal. 1009 00:48:30,940 --> 00:48:32,720 I Comma. 1010 00:48:32,720 --> 00:48:34,340 Hayaan akong ibalik. 1011 00:48:34,340 --> 00:48:37,170 >> Hayaan akong ngayong mag-recompile may gumawa. 1012 00:48:37,170 --> 00:48:39,280 Hayaan akong ngayon muling palabas ng pelikula gamit ang mga pasadyang. 1013 00:48:39,280 --> 00:48:42,410 Maaari ba akong magbilang talaga sumpain mabilis kapag Sumulat ako ng isang programa tulad nito. 1014 00:48:42,410 --> 00:48:45,480 >> Ngayon sabihin gawin ang isang bagay ng isang maliit na hindi sinasadya. 1015 00:48:45,480 --> 00:48:51,220 Paano tungkol sa sabihin gawin ito habang i ay mas malaki kaysa sa o patas sa 0. 1016 00:48:51,220 --> 00:48:53,630 Ano kaya ito ng pagpunta sa magbuod? 1017 00:48:53,630 --> 00:49:01,030 Kaya lohikal, ito ay hindi kaya matalino, dahil ngayon kung ako muling palabas ng pelikula na ito, isalaysay, 1018 00:49:01,030 --> 00:49:05,050 Maaari ko ngayon bilangin talaga, talagang mataas. 1019 00:49:05,050 --> 00:49:08,850 Sa kasamaang palad, tungkol sa bilang mataas na bilang maaari ko count ay 4000000000, sa gayon ito ay pagpunta 1020 00:49:08,850 --> 00:49:10,140 sa matagalan. 1021 00:49:10,140 --> 00:49:13,440 >> Kaya bakit hindi natin iwan ito bilang ating cliffhanger, may pag-asa na sa 1022 00:49:13,440 --> 00:49:15,650 Miyerkules, gagamitin namin makita kung programa tapos na ito. 1023 00:49:15,650 --> 00:49:19,260 Dalawang, kami kitang ipakilala kung paano mo ang iyong sarili isulat ang iyong sariling mga pag-andar nang sa gayon ay napaka 1024 00:49:19,260 --> 00:49:22,930 mabilis, sa pamamagitan ng Miyerkules, bibigyan namin, bilang namin paglipat mula sa simula sa C, simulan 1025 00:49:22,930 --> 00:49:25,880 Sumusulat kailanman nagiging complex mga programa na gawin magkano, 1026 00:49:25,880 --> 00:49:27,070 magkano ang higit sa ito. 1027 00:49:27,070 --> 00:49:28,766 Kami ay makita mo pagkatapos. 1028 00:49:28,766 --> 00:49:31,580 >> [Palakpakan] 1029 00:49:31,580 --> 00:49:34,690 >> Tagapagsalita 1: Sa susunod na CS50, Puzzle Day ay isang tagumpay. 1030 00:49:34,690 --> 00:49:39,690