1 00:00:07,830 --> 00:00:12,200 [Powered by Google Translate] DAVID Malan: Kjo është CS50, dhe ky është fillimi i javës 1. 2 00:00:12,200 --> 00:00:15,520 Ajo që ne menduam se do të bëjmë sot është të marrë një vështrim mbrapa në 3 00:00:15,520 --> 00:00:18,290 diçka shumë prej jush ndoshta kanë ecur për disa kaluarën 4 00:00:18,290 --> 00:00:20,570 Ora tani dhe mund të duket pak e njohur. 5 00:00:20,570 --> 00:00:23,720 Kjo gjë këtu, kjo sigurisht është në - 6 00:00:23,720 --> 00:00:24,155 Audienca: Shkenca. 7 00:00:24,155 --> 00:00:26,030 DAVID Malan: Shkenca qendër. 8 00:00:26,030 --> 00:00:28,940 Pra, kjo është në fakt një nga kompjuterat e hershme 9 00:00:28,940 --> 00:00:30,220 mbështetur nga vitet 1940. 10 00:00:30,220 --> 00:00:33,790 Kjo ishte një nga kompjuterat e parë elektromekanike 11 00:00:33,790 --> 00:00:35,730 se ishte në gjendje të veçanërisht gjatë, 12 00:00:35,730 --> 00:00:38,450 vetë-qëndrueshme computations, dhe ajo që ne shohim në të vërtetë 13 00:00:38,450 --> 00:00:41,580 Qendra shkenca është vetëm një pjesë e vogël e kësaj gjëje. 14 00:00:41,580 --> 00:00:44,170 Ajo që ne menduam se do të bëni pastaj është marrë një vështrim prapa në një video 15 00:00:44,170 --> 00:00:46,670 që është bërë disa kohë më parë, duke futur këtë 16 00:00:46,670 --> 00:00:47,520 gjë në botë. 17 00:00:47,520 --> 00:00:50,200 Dhe ju do të shihni nga muzika dhe zëri i atyre që me të vërtetë 18 00:00:50,200 --> 00:00:52,070 ishin shumë herë më të lumtur. 19 00:00:54,885 --> 00:00:59,700 >> [Rishikim video] 20 00:00:59,700 --> 00:01:02,490 -Një triumf i aftësive matematikore dhe mekanike është kjo 21 00:01:02,490 --> 00:01:06,340 Llogaritësi i madh i ri automatik në Universitetin e Harvardit. 22 00:01:06,340 --> 00:01:08,620 Problemet ndërlikuar në matematikë, e vënë nëpërmjet 23 00:01:08,620 --> 00:01:12,420 makinë në formë të koduar në kasetë, janë zgjidhur saktë në një 24 00:01:12,420 --> 00:01:15,200 pjesë minutën e kohës e nevojshme për të njeriut 25 00:01:15,200 --> 00:01:16,450 Llogaritja. 26 00:01:27,050 --> 00:01:30,600 Projektuar për të shpejtuar të gjitha format e matematikore dhe shkencore 27 00:01:30,600 --> 00:01:34,610 hulumtim, truri gjigant mekanike do të punojë për United 28 00:01:34,610 --> 00:01:36,570 Shtetet e marinës deri në fund të luftës. 29 00:01:50,280 --> 00:01:52,980 >> DAVID Malan: Pra, çfarë ju mund të mos dini është se ajo ishte në 30 00:01:52,980 --> 00:01:56,310 kjo pajisje njëjta që një mandat ne të gjithë tani të marrë goxha shumë 31 00:01:56,310 --> 00:01:59,300 për të dhënë është shpikur, atë të një bug. 32 00:01:59,300 --> 00:02:01,140 Pra, një nga inxhinierët që punojnë në këtë kompjuter 33 00:02:01,140 --> 00:02:05,280 gjeti fjalë për fjalë një molë të vogël në makinë që rezultoi 34 00:02:05,280 --> 00:02:07,580 në disa llogaritjeve të pasakta. 35 00:02:07,580 --> 00:02:10,410 Dhe si historia shkon se mola u regjistruar në këtë log 36 00:02:10,410 --> 00:02:14,180 Revista këtu, kthehet nga 9 shtator në 1940-diçka, 37 00:02:14,180 --> 00:02:16,550 dhe kështu ka lindur për botën termin "bug". 38 00:02:16,550 --> 00:02:19,880 Kështu tash e tutje ne e konsiderojmë të mete të ketë ndonjë lloj të gabimeve në 39 00:02:19,880 --> 00:02:23,290 programe, nëse njeriu ose, në këtë rast, insekte. 40 00:02:23,290 --> 00:02:25,030 >> Pra, një njoftimet pak, si ne të vazhdojë. 41 00:02:25,030 --> 00:02:29,160 Pra CS50 ka një traditë për të ofruar dreka e në terezi 42 00:02:29,160 --> 00:02:31,600 më premteve gjatë semestrit, ku kemi marrë 30 për 43 00:02:31,600 --> 00:02:34,650 40 studentë të zjarrit dhe Ice në sheshin e rastit 44 00:02:34,650 --> 00:02:36,390 thashetheme, flasin për shkenca kompjuterike, 45 00:02:36,390 --> 00:02:37,420 flasim për të ardhmen. 46 00:02:37,420 --> 00:02:40,000 Ne ftojmë alumni dhe miqtë nga industria për të biseduar deri 47 00:02:40,000 --> 00:02:40,690 studentët si. 48 00:02:40,690 --> 00:02:44,020 Vërtetë drejt një fund për të bërë çfarë është një klasë mjaft e madhe 49 00:02:44,020 --> 00:02:46,740 gjithë më intime, të paktën një herë në, ndërsa për 50 00:02:46,740 --> 00:02:47,710 subsets e studentëve. 51 00:02:47,710 --> 00:02:50,940 Pra, nëse ju do të donte të bashkohen me ne të premten, 01:15 PM, shkoni në 52 00:02:50,940 --> 00:02:53,340 CS50.net/lunch për RSVP. 53 00:02:53,340 --> 00:02:55,840 Dhe ne do të bëjmë këtë recurringly, jo aq për t'u shqetësuar nëse ju nuk jeni 54 00:02:55,840 --> 00:02:57,930 në mesin e 30 apo më shumë të parë këtë javë. 55 00:02:57,930 --> 00:02:59,070 >> Pra, shënime shkrues. 56 00:02:59,070 --> 00:03:01,500 Një fjalë mbi burimet që tani do të fillojë të qenit në dispozicion 57 00:03:01,500 --> 00:03:03,040 tek nxënësve në klasën. 58 00:03:03,040 --> 00:03:05,540 Kështu që krerët tuaj nuk duhet të jetë poshtë gjatë ligjëratave 59 00:03:05,540 --> 00:03:08,560 scribbling poshtë gjithçka kam thënë dhe kështu me radhë, ajo që ne bëjmë 60 00:03:08,560 --> 00:03:10,765 në vend të kësaj është të sigurojë nga stafi mësimdhënës a 61 00:03:10,765 --> 00:03:11,920 set kanonik i shënimeve. 62 00:03:11,920 --> 00:03:14,850 Pra, ne kemi një nga miqtë tanë të mësimdhënies, Andrew Sellergren, 63 00:03:14,850 --> 00:03:17,830 që ulet çdo javë, shqyrton videos, dhe pastaj 64 00:03:17,830 --> 00:03:19,730 shkruan ajo që ne mendojmë se është një mënyrë të drejtë 65 00:03:19,730 --> 00:03:21,840 grup autoritativ i shënimeve. 66 00:03:21,840 --> 00:03:24,180 Dhe dua Andrew, gjithashtu, të vënë në shënimet snarky 67 00:03:24,180 --> 00:03:24,820 fund. 68 00:03:24,820 --> 00:03:27,300 Pra, ju do të gëzojnë këto shpresojmë se si një libër referimi për 69 00:03:27,300 --> 00:03:30,230 argëtim, dhe gjithashtu, vijnë quiz kohë, si një mundësi për të rishikuar 70 00:03:30,230 --> 00:03:31,830 çfarë ndodhi në leksionet individuale. 71 00:03:31,830 --> 00:03:33,580 Pra, ata janë të lidhura në faqen e leksioneve. 72 00:03:33,580 --> 00:03:35,300 >> Set Problemi 0, ndërkohë, është jashtë. 73 00:03:35,300 --> 00:03:37,470 Dhe në drejtim të burimeve në dispozicion për ty - 74 00:03:37,470 --> 00:03:38,020 walkthrough. 75 00:03:38,020 --> 00:03:39,730 Milo udhëhequr parë të premten. 76 00:03:39,730 --> 00:03:41,470 Ajo ishte filmuar, të vënë në internet nga e shtuna. 77 00:03:41,470 --> 00:03:44,030 Dhe kështu të kuptojë, në qoftë se ju nuk jeni me të vërtetë të sigurt ku të fillojë, 78 00:03:44,030 --> 00:03:47,280 për këtë apo në të ardhmen p-grupe, gjithmonë kthehet pari që 79 00:03:47,280 --> 00:03:49,300 walkthrough ose saj video. 80 00:03:49,300 --> 00:03:52,950 Sectioning është në progres, në cs50.net/section është ajo ku ju 81 00:03:52,950 --> 00:03:54,540 duhet të paraqesin preferencat tuaja, nëse ju nuk keni 82 00:03:54,540 --> 00:03:55,880 tashmë, nga sot. 83 00:03:55,880 --> 00:03:58,140 Sepse seksione do të fillojnë këtë e diela e ardhshme, e hënë, 84 00:03:58,140 --> 00:03:58,760 dhe të martën. 85 00:03:58,760 --> 00:04:02,470 Ne bëjmë seksione ato tri ditë, çdo javë i 86 00:04:02,470 --> 00:04:03,870 semestër për pjesën më të madhe. 87 00:04:03,870 --> 00:04:06,600 Dhe ne gjithashtu të futur, përsëri, këngë të ndryshme. 88 00:04:06,600 --> 00:04:08,270 Pra, ju do të kërkohet në këtë formë sectioning, nëse ju 89 00:04:08,270 --> 00:04:10,350 nuk e kanë parë atë tashmë, nëse ju jeni në mesin e atyre më pak 90 00:04:10,350 --> 00:04:12,800 rehatshme, më të rehatshme, apo diku në mes. 91 00:04:12,800 --> 00:04:14,960 Dhe në qoftë se ju jeni lloj në gardh, përgjithësisht diku në 92 00:04:14,960 --> 00:04:18,160 mes është ajo që shumica e studentëve deri në fund kontrolluar. 93 00:04:18,160 --> 00:04:19,579 Orari i punës të fillojë sonte. 94 00:04:19,579 --> 00:04:23,020 >> Pra Scratch është çelësi mjaft e ulët, edhe pse kjo është mjaft e natyrshme 95 00:04:23,020 --> 00:04:25,300 për të kandiduar në të mete të ndryshme, ose të jetë e pasigurt se si të 96 00:04:25,300 --> 00:04:26,550 zbatojë diçka. 97 00:04:26,550 --> 00:04:28,880 Pra, të kuptojnë se ne do të fillojmë orë zyre këtë javë. 98 00:04:28,880 --> 00:04:30,500 Ata do të jenë në Annenberg hënë, e martë, e mërkurë, 99 00:04:30,500 --> 00:04:34,300 E Enjte, 20:00-11:00 gjatë pushimit të trurit. 100 00:04:34,300 --> 00:04:38,160 Classmen sipërme mund të merrni në, dhe nëse ndonjëherë ju keni vështirësi për marrjen 101 00:04:38,160 --> 00:04:40,720 në derë, sepse ata do të swiping, vetëm të flasim në rrugën tuaj 102 00:04:40,720 --> 00:04:42,560 në dhe shpjegoni ju jeni me CS50. 103 00:04:42,560 --> 00:04:45,230 Zakonisht 20 deri në 30 prej nesh në stafin do të jenë atje për të ndihmuar 104 00:04:45,230 --> 00:04:46,190 ju një për një. 105 00:04:46,190 --> 00:04:48,980 >> Pas mbërritjes ideja është kjo: ju do të sjellë tuaj laptopë, 106 00:04:48,980 --> 00:04:51,300 ju do të keni ngarkues tuaj, ne do të kemi litarët pushtet ekstra, 107 00:04:51,300 --> 00:04:53,320 veçanërisht përgjatë murit jug të Annenberg ku 108 00:04:53,320 --> 00:04:55,080 ka shumë priza elektrike. 109 00:04:55,080 --> 00:04:59,290 Dhe pika kryesore e hyrjes për orë zyre Q & A është për të shkuar në 110 00:04:59,290 --> 00:05:01,690 cs50.net/discuss dhe për të postuar 111 00:05:01,690 --> 00:05:02,580 pyetjen tuaj atje. 112 00:05:02,580 --> 00:05:05,600 Dhe për emërtim atë me pset 0 ose 1 pset, çfarëdo javën 113 00:05:05,600 --> 00:05:06,810 mund të ndodhë që të jetë. 114 00:05:06,810 --> 00:05:09,240 Dhe pastaj çfarë ne do të bëjmë është të ketë një tabelë të shokëve të mësimdhënies 115 00:05:09,240 --> 00:05:12,040 dhe asistentë kurs, përgjithësisht 8 ose 10 apo më shumë prej nesh, 116 00:05:12,040 --> 00:05:14,430 kalon, duke e mbajtur një sy vigjilent në bord, dhe 117 00:05:14,430 --> 00:05:16,810 plucking off pyetje me të vërtetë sa më shpejt që mundemi, 118 00:05:16,810 --> 00:05:19,600 ju referuar në poste të lidhura në qoftë se ju nuk e keni gjetur ata 119 00:05:19,600 --> 00:05:22,220 veten, referencat online, si të përshtatshme. 120 00:05:22,220 --> 00:05:24,280 Dhe pastaj, nëse ka probleme, pasi nuk ka mënyrë të pashmangshme 121 00:05:24,280 --> 00:05:27,190 do të jetë, ose ai thjesht e bën më shumë kuptim për të ulemi njëri në një, 122 00:05:27,190 --> 00:05:28,660 punojnë nëpër probleme me dikë. 123 00:05:28,660 --> 00:05:30,810 >> Ose ju vetëm të hyjë në të vërtetë orarit të punës 124 00:05:30,810 --> 00:05:31,640 kanë nevojë për atë mendim. 125 00:05:31,640 --> 00:05:33,400 Ju nuk duan të kalojnë nëpër formë elektronike, ju 126 00:05:33,400 --> 00:05:34,410 me të vërtetë duan të takohen me dikë. 127 00:05:34,410 --> 00:05:37,240 Komunikoni se për ne, dhe çfarë do të ndodhë është kur tuaj 128 00:05:37,240 --> 00:05:40,620 Pyetja është parë nga një anëtar i personelit, dhe ne 129 00:05:40,620 --> 00:05:43,660 përcaktuar, Yup, kjo duhet të dërguar tek një prej 20 ose 130 00:05:43,660 --> 00:05:47,800 30 anëtarët e ekipit këtu në vend, ju do të shihni në krye lënë këtë 131 00:05:47,800 --> 00:05:51,590 pak Shkruani butonin radhë fillon ndezje në cs50.net / 132 00:05:51,590 --> 00:05:52,165 diskutuar. 133 00:05:52,165 --> 00:05:55,260 Dhe kjo është thënë se ju tani kanë qenë të ftuar, kështu që 134 00:05:55,260 --> 00:05:56,880 për të folur, për të hyrë në radhë. 135 00:05:56,880 --> 00:05:59,090 Dhe duke klikuar atë buton, emri juaj do të shfaqet pastaj në 136 00:05:59,090 --> 00:06:02,660 një iPad që greeter CS50, një nga kokat e kursit, do të 137 00:06:02,660 --> 00:06:05,250 të mbajnë pranë hyrjes së Annenberg, i cili pastaj do të 138 00:06:05,250 --> 00:06:08,630 shohin përshkruar si këtu, studentët që kanë pyetje mbi 139 00:06:08,630 --> 00:06:11,630 të majtë, anëtarët e stafit të cilët janë të pranishëm në të djathtë. 140 00:06:11,630 --> 00:06:14,830 Dhe me një klik të majtë dhe të djathtë, browser-i juaj web do 141 00:06:14,830 --> 00:06:18,610 të fillojë ndezje sa më shpejt, për shembull, Profesor McGonnagal 142 00:06:18,610 --> 00:06:21,460 është i gatshëm për të parë ju në një tryezë të veçantë në Annenberg. 143 00:06:21,460 --> 00:06:23,340 >> Pra, ne e bëmë disa prej këtij vitit të kaluar. 144 00:06:23,340 --> 00:06:25,430 Ne kemi restartohet orë zyre dhe 145 00:06:25,430 --> 00:06:26,980 ri-zbatuar shumë e softuerit. 146 00:06:26,980 --> 00:06:29,940 Pra, të kuptojnë se kjo do të ngrohtë deri këtë javë. 147 00:06:29,940 --> 00:06:32,970 Por edhe të kuptojë edhe në vitet e kaluara, si ju mund të keni dëgjuar 148 00:06:32,970 --> 00:06:35,710 nga miqtë, orarit të punës kishte me të vërtetë 50 për 149 00:06:35,710 --> 00:06:37,040 150 studentë në të njëjtën kohë. 150 00:06:37,040 --> 00:06:39,300 Dhe kjo nuk është thjesht të jetë e mundur për ne për të trajtuar se 151 00:06:39,300 --> 00:06:42,060 efektive, një për një, të gjithë në mbrëmje. 152 00:06:42,060 --> 00:06:44,570 Dhe kështu që ajo që ne jemi me të vërtetë do të përpiqet të bëjë këtë vit është 153 00:06:44,570 --> 00:06:46,590 germa në faktin se shumë pyetje janë 154 00:06:46,590 --> 00:06:49,050 pyetur shpesh dhe shpesh mund të përgjigjet më mirë 155 00:06:49,050 --> 00:06:50,030 asynchronously. 156 00:06:50,030 --> 00:06:52,140 Kështu që ju mund të lloj të mendojnë nëpërmjet përgjigjes së stafit, 157 00:06:52,140 --> 00:06:54,360 dhe ne mund të mendojmë me kodin tuaj, pa ndezur 158 00:06:54,360 --> 00:06:57,050 presioni i domosdoshmërisht luftuar 159 00:06:57,050 --> 00:06:58,210 nëpërmjet saj krah për krah. 160 00:06:58,210 --> 00:07:00,980 Pra, ne vlerësojmë se afërsisht një e treta apo gjysma e pyetjeve 161 00:07:00,980 --> 00:07:03,500 do të vendoset në person, dhe ne do të përpiqemi të këpusin jashtë si 162 00:07:03,500 --> 00:07:05,530 shumë si gjysma ose më shumë elektronike, 163 00:07:05,530 --> 00:07:06,710 gjatë orarit të punës. 164 00:07:06,710 --> 00:07:08,070 Dhe ne do të vazhdojmë të përdorim Diskutoni 165 00:07:08,070 --> 00:07:09,990 gjatë gjithë javës si. 166 00:07:09,990 --> 00:07:12,680 >> Dhe së fundi, të kuptojnë se ky kurs mund të merret kalojë / dështojnë. 167 00:07:12,680 --> 00:07:16,230 Pra, nëse ju jeni në gardh ose thjesht të mendoni se ju jeni me të vërtetë 168 00:07:16,230 --> 00:07:18,650 Nuk jam i sigurt nëse kjo është bota për ju, apo kjo është me të vërtetë 169 00:07:18,650 --> 00:07:21,310 mjaft e huaj për ju, e kuptojnë se kjo është një mënyrë e mrekullueshme 170 00:07:21,310 --> 00:07:24,840 të fitimit deri disa besimin me të cilin do të futemi në 171 00:07:24,840 --> 00:07:26,780 klasë, si unë e bëri sinqerisht, vite më parë. 172 00:07:26,780 --> 00:07:28,630 Dhe pastaj të ketë pesë javë për të zgjidhur të figurës për 173 00:07:28,630 --> 00:07:30,850 veten në qoftë se ju dëshironi të qëndroni të kalojë / dështojnë, kaloni në një letër 174 00:07:30,850 --> 00:07:31,800 klasën, ose si. 175 00:07:31,800 --> 00:07:34,050 Dhe zakonisht ajo të kalojë / dështojnë ka, unë mendoj se, për studentët është 176 00:07:34,050 --> 00:07:36,700 se, në qoftë se keni vënë në atë 10 orë, 20 orë, çfarëdo qoftë ajo 177 00:07:36,700 --> 00:07:38,830 mund të jetë në disa probleme, dhe ju jeni banging kokën tuaj 178 00:07:38,830 --> 00:07:39,690 kundër murit, 179 00:07:39,690 --> 00:07:41,750 dhe ju thjesht nuk mund të vërtetë diçka ndjekje poshtë, dhe ju 180 00:07:41,750 --> 00:07:44,230 kanë aq shumë gjëra të tjera që ju duhet të bëni, sinqerisht, ajo që unë 181 00:07:44,230 --> 00:07:46,070 mendoj se të kalojë / dështojnë, ajo merr off buzë e 182 00:07:46,070 --> 00:07:47,250 situatat si kjo. 183 00:07:47,250 --> 00:07:49,350 Ku e keni marrë gjënë e 90% të rrugës. 184 00:07:49,350 --> 00:07:50,830 Ju e dini, kjo nuk është mjaft e përsosur. 185 00:07:50,830 --> 00:07:52,950 Por ju mori një shumë prej tij, megjithatë. 186 00:07:52,950 --> 00:07:55,440 Kështu që e konsiderojnë të kalojë / dështojnë duke i dhënë se 187 00:07:55,440 --> 00:07:57,590 Modeli mendore, ndoshta. 188 00:07:57,590 --> 00:08:00,680 >> Të gjithë të drejtë, kështu që javën e kaluar kemi pëllumb në Scratch, dhe ne 189 00:08:00,680 --> 00:08:03,610 biseduar rreth programimit në një nivel mjaft të lartë grafik. 190 00:08:03,610 --> 00:08:05,340 Dhe sot ne kemi bërë kalimin në një gjuhë 191 00:08:05,340 --> 00:08:08,300 quajtur C, një nivel të ulët programimit gjuhë në majë të 192 00:08:08,300 --> 00:08:11,260 të cilat shumë gjuhë moderne janë ndërtuar tani, duke përfshirë disa 193 00:08:11,260 --> 00:08:13,010 nga ato që ne do të jetë duke përdorur drejt përfundimit termin së. 194 00:08:13,010 --> 00:08:15,530 Dhe syntactically, atë që ata të duken si 195 00:08:15,530 --> 00:08:17,330 është mbi të gjitha mjaft të ngjashme. 196 00:08:17,330 --> 00:08:19,080 Pra, le të fillojë për të bërë këtë tranzicion këtu. 197 00:08:19,080 --> 00:08:21,730 Pra, kjo ishte një program javën e kaluar se ishte thjeshtë e 198 00:08:21,730 --> 00:08:22,910 përshëndetje programe botë. 199 00:08:22,910 --> 00:08:25,560 Ajo thjesht të shtypura në botë ekran hello, me një 200 00:08:25,560 --> 00:08:27,650 flluskë pak Fjalimi vijnë nga cat. 201 00:08:27,650 --> 00:08:30,590 E pra, në qoftë se ne fillojmë tani për të përkthyer këtë në një tjetër 202 00:08:30,590 --> 00:08:33,419 gjuhës, të kuptojnë se idetë sot dhe të mërkurën 203 00:08:33,419 --> 00:08:36,450 janë identike, por sintaksa fillon të ndryshojë. 204 00:08:36,450 --> 00:08:39,370 Pra, ndërsa javën e kaluar kemi pasur, kur flamuri gjelbër klikuar, thonë 205 00:08:39,370 --> 00:08:40,340 Hello World. 206 00:08:40,340 --> 00:08:43,870 Sot ne do të kemi int kryesore, zbrazëti,,, printf 207 00:08:43,870 --> 00:08:46,350 kthimi, me disa sintaksë tjetër në atje si. 208 00:08:46,350 --> 00:08:49,200 Formatimin e teksteve kaçurrel, dhe kllapa, dhe citate, dhe gjësend. 209 00:08:49,200 --> 00:08:54,520 Por e kupton se thelbi i idesë këtu është shtypje, 210 00:08:54,520 --> 00:08:58,470 dhe përfundimisht faktin se kryesor është tani do të jetë 211 00:08:58,470 --> 00:09:00,770 sinonim me fillimin e një programi. 212 00:09:00,770 --> 00:09:04,250 Kryesore do të jetë aty ku flamuri gjelbër nis gjërat jashtë. 213 00:09:04,250 --> 00:09:06,390 >> Pra, tani le të ngas përveç disa nga blloqet e ndërtimit këtu 214 00:09:06,390 --> 00:09:08,650 para se të zhyten në disa shembuj konkretë. 215 00:09:08,650 --> 00:09:11,620 Pra, ne e quajti këtë javë një deklaratë e fundit, ku është vetëm 216 00:09:11,620 --> 00:09:12,470 një udhëzim. 217 00:09:12,470 --> 00:09:15,660 E bëjnë këtë - në këtë rast, thonë botë Hello. 218 00:09:15,660 --> 00:09:18,400 E pra në C, nëse ne shikojmë në linjë vetëm atë, kjo është se si ne jemi 219 00:09:18,400 --> 00:09:20,920 do të fillojnë të shprehur atë pjesë të veçantë puzzle: 220 00:09:20,920 --> 00:09:24,780 printf ("Hello World");. 221 00:09:24,780 --> 00:09:27,330 Dhe tani ne do të vë në lojë përveç këtyre gjithnjë e më shumë me kalimin e kohës, 222 00:09:27,330 --> 00:09:29,330 por të kuptojë se ka një model këtu. 223 00:09:29,330 --> 00:09:31,870 Pra një, ne kemi këtë gjë të quajtur printf, e cila është 224 00:09:31,870 --> 00:09:34,310 thelb analoge me fjalën Thuaj. 225 00:09:34,310 --> 00:09:35,800 Kjo është ajo që do të bëjë. 226 00:09:35,800 --> 00:09:37,870 Printf, dhe f këtu do të thotë "formatuar". 227 00:09:37,870 --> 00:09:39,270 Pra, kjo thjesht do të thotë që ju mund të futni 228 00:09:39,270 --> 00:09:41,600 detaje të ndryshme estetike. 229 00:09:41,600 --> 00:09:43,770 Pra mbyll thonjëzat quote është fillimi i asaj që ne jemi duke shkuar 230 00:09:43,770 --> 00:09:45,340 të fillojnë duke e quajtur një varg. 231 00:09:45,340 --> 00:09:47,110 Një fjalë, një frazë, një dënim. 232 00:09:47,110 --> 00:09:50,220 Një varg në një language programuese është një sekuencë e zero 233 00:09:50,220 --> 00:09:51,330 ose më shumë karakteret. 234 00:09:51,330 --> 00:09:54,390 Kështu h-E-l-l-O, presje, dhe kështu radhë është, 235 00:09:54,390 --> 00:09:56,290 mbyll thonjëzat quote, një varg. 236 00:09:56,290 --> 00:09:58,710 Dhe tani backslash n, pak syntactically i rastësishëm, por ne 237 00:09:58,710 --> 00:10:01,780 përcaktuar tashmë se javën e kaluar, si do të thotë çfarë? 238 00:10:01,780 --> 00:10:02,630 Kjo është vetëm një linjë e re. 239 00:10:02,630 --> 00:10:05,000 Kjo është vetëm një mënyrë për të përcjellë në kompjuter që ju doni të 240 00:10:05,000 --> 00:10:07,700 ekuivalent i goditur Shkruani atje, por ju nuk e bëni 241 00:10:07,700 --> 00:10:10,460 doni të vërtetë hit Enter dhe rrëmujë këtë arsye të gjithë të 242 00:10:10,460 --> 00:10:12,130 Formatimi i programit tuaj aktuale. 243 00:10:12,130 --> 00:10:15,500 Tani kllapat mbyllni këtë varg, të hapur dhe të prindërve 244 00:10:15,500 --> 00:10:18,130 prindërve të ngushtë, dhe brenda e që është string tonë. 245 00:10:18,130 --> 00:10:22,600 Sepse kjo është për shkak se në C, dhe programimi të tjera 246 00:10:22,600 --> 00:10:27,510 gjuhë, gjëra të tilla si printf marrë argumente, ose të marrë 247 00:10:27,510 --> 00:10:28,420 parametra. 248 00:10:28,420 --> 00:10:31,490 >> Pra, filloni të menduarit tani i këtij blloku thonë purpurt si një 249 00:10:31,490 --> 00:10:34,890 funksion, si një metodë, si një procedurë. 250 00:10:34,890 --> 00:10:36,890 Ju mund të vërtetë të telefononi atë çka ju dëshironi për tani, por 251 00:10:36,890 --> 00:10:39,260 kjo është lloj i një programi miniaturë që vetëm bën një 252 00:10:39,260 --> 00:10:41,480 gjë, në një linjë të vetme, jo më pak. 253 00:10:41,480 --> 00:10:43,620 Pra printf është edhe ajo që ne jemi duke shkuar për të filluar një thirrje 254 00:10:43,620 --> 00:10:46,680 funksion, dhe funksionet bëjë diçka - në këtë rast 255 00:10:46,680 --> 00:10:49,320 printon një varg formatuar në ekran - 256 00:10:49,320 --> 00:10:53,220 por gjithashtu të marrin funksionet argumente apo parametrat. 257 00:10:53,220 --> 00:10:55,880 Dhe nga argumentet apo parametrave, thank you, ne do të thotë 258 00:10:55,880 --> 00:11:01,220 se sjellja e tyre mund të ndikohet nga ajo që ju kaloni në 259 00:11:01,220 --> 00:11:03,420 brendësi të paranteza. 260 00:11:03,420 --> 00:11:06,460 Pra, në këtë rast, nevojat printf të thuhet se çfarë për të shtypur, dhe ne 261 00:11:06,460 --> 00:11:09,520 vetëm të kalojë në, në thonjëza dyshe këtu, string se ne 262 00:11:09,520 --> 00:11:11,270 të vërtetë doni të shtypura. 263 00:11:11,270 --> 00:11:14,060 Dhe pikëpresje në fund të kësaj linje është vetëm një 264 00:11:14,060 --> 00:11:18,020 telash historike ku në fund të linjave më të kodit, 265 00:11:18,020 --> 00:11:21,170 ju vënë një pikëpresje për të bërë super të qartë në kompjuter 266 00:11:21,170 --> 00:11:23,020 që kjo linjë e kodit përfundon këtu. 267 00:11:23,020 --> 00:11:25,600 Tani kjo është e mirë për shkak se si ne do të shohim si programe të merrni më shumë 268 00:11:25,600 --> 00:11:29,030 komplekse, pikëpresje do të bëjë njerëzit super të qarta për ne, 269 00:11:29,030 --> 00:11:32,280 dhe gjithashtu kompjuter, ku linjat e kodit fillim dhe në fund. 270 00:11:32,280 --> 00:11:34,360 Kuptojnë se disa gjuhë nuk kanë ndonjë 271 00:11:34,360 --> 00:11:35,045 nga këto detaje të njëjta. 272 00:11:35,045 --> 00:11:37,870 Dhe në fakt, në JavaScript, ju nuk keni gjithmonë nevojë për diçka 273 00:11:37,870 --> 00:11:38,670 si pikëpresje. 274 00:11:38,670 --> 00:11:40,210 Por më shumë se për të ardhur. 275 00:11:40,210 --> 00:11:41,170 >> Pra, sythe. 276 00:11:41,170 --> 00:11:43,520 Ne kishim diçka si kjo, shumë intuitive, e qartë, të bëjë 277 00:11:43,520 --> 00:11:44,860 diçka përsëri dhe përsëri dhe përsëri. 278 00:11:44,860 --> 00:11:47,720 Doja vënë në çorape, ose thënë hello, në këtë rast. 279 00:11:47,720 --> 00:11:51,090 E pra, duke filluar nga sot në C, ne mund të shprehim këtë Scratch 280 00:11:51,090 --> 00:11:54,970 bllokuar si ndërsa (e vërtetë) printf ("Hello World"). 281 00:11:54,970 --> 00:11:57,630 Pra njoftim ne jemi duke filluar për të ndërtuar në fjalë për fjalë puzzle 282 00:11:57,630 --> 00:11:58,480 copë para. 283 00:11:58,480 --> 00:12:01,310 Ne kemi të njëjtin bllok purpurt, por kjo është në brendësi të kësaj 284 00:12:01,310 --> 00:12:04,880 bracketed Gjithmone bllok, dhe mënyra më e mirë për të përkthyer që 285 00:12:04,880 --> 00:12:06,480 C për të është si më poshtë. 286 00:12:06,480 --> 00:12:08,130 Nuk ka asnjë Gjithmone fjalen. 287 00:12:08,130 --> 00:12:10,940 Ju nuk mund të vetëm të tipit f-O-R-E-V-E-r në C. 288 00:12:10,940 --> 00:12:13,440 Pra, analog afërt është duke. 289 00:12:13,440 --> 00:12:17,050 >> Tani, ndërsa (e vërtetë) duket pak budalla, sepse ka vlera 290 00:12:17,050 --> 00:12:18,700 e ndryshimit të vërtetë ndonjëherë? 291 00:12:18,700 --> 00:12:19,810 Me sa duket jo. 292 00:12:19,810 --> 00:12:22,770 Është si të thuash, ndërsa një, ndërsa në, ndërsa e vërtetë. 293 00:12:22,770 --> 00:12:25,430 Kjo është e gjitha e njëjta gjë, e vërtetë është gjithmonë rasti. 294 00:12:25,430 --> 00:12:29,860 Pra, kjo është në të vërtetë loop inducing çfarë lloj lak? 295 00:12:29,860 --> 00:12:31,210 Vetëm një loop pafund, e drejtë. 296 00:12:31,210 --> 00:12:32,930 Një lak Gjithmone apo si ne e quajti atë javën e kaluar, 297 00:12:32,930 --> 00:12:33,870 vetëm një lak pafund. 298 00:12:33,870 --> 00:12:35,250 Pra, ndonjëherë kjo është e keqe. 299 00:12:35,250 --> 00:12:37,060 Ndonjëherë kjo është një bug, nganjëherë kjo është arsyeja pse ju merrni 300 00:12:37,060 --> 00:12:39,340 topin tjerrje plazh ose hourglass apo si. 301 00:12:39,340 --> 00:12:41,260 Por në këtë rast, ne me dashje, për çfarëdo 302 00:12:41,260 --> 00:12:43,040 arsye, të kërkuar për të shkruar të njëjtën gjë përsëri 303 00:12:43,040 --> 00:12:43,970 dhe përsëri dhe përsëri. 304 00:12:43,970 --> 00:12:45,900 Ose në rastin e si një orë, ju doni të bëni 305 00:12:45,900 --> 00:12:47,470 diçka përsëri dhe përsëri dhe përsëri. 306 00:12:47,470 --> 00:12:49,070 Kështu sythe pafund mund të ketë kuptim. 307 00:12:49,070 --> 00:12:53,560 Dhe kjo është se si në C ne mund të përkthehet Gjithmone të kodit. 308 00:12:53,560 --> 00:12:55,570 >> Deri tani kjo është pak më specifike. 309 00:12:55,570 --> 00:12:58,880 Ne kishim përsëritur 10 herë deklaratën e mëposhtme. 310 00:12:58,880 --> 00:13:02,490 Kështu, ndërsa (e vërtetë) nuk ka mjaft të punojnë atje, për shkak se është e vërtetë 311 00:13:02,490 --> 00:13:03,590 gjithmonë e vërtetë. 312 00:13:03,590 --> 00:13:07,060 Pra, nëse ne shikojmë në vend versionin C, tani merr një sintaksë 313 00:13:07,060 --> 00:13:08,180 pak më i fshehtë. 314 00:13:08,180 --> 00:13:11,380 Por të jetë i sinqertë kur ju filloni për të parë këtë, ajo merr të gjitha 315 00:13:11,380 --> 00:13:12,600 shumë të njohur shpejt. 316 00:13:12,600 --> 00:13:14,370 Pra, kjo është ajo që quhet një për lak. 317 00:13:14,370 --> 00:13:17,210 Një për lak do të them kompjuterin për të bërë diçka 318 00:13:17,210 --> 00:13:20,710 përsëri dhe përsëri dhe përsëri për aq kohë sa 319 00:13:20,710 --> 00:13:21,850 këto gjëra janë të vërteta. 320 00:13:21,850 --> 00:13:23,370 Tani çfarë ne do të thotë me këtë? 321 00:13:23,370 --> 00:13:25,470 E pra, ka tre pjesë në një për lak, dhe ne jemi duke shkuar për të 322 00:13:25,470 --> 00:13:28,240 kthehen kësaj në kontekstin e aktuale 323 00:13:28,240 --> 00:13:29,100 shembuj në një moment. 324 00:13:29,100 --> 00:13:31,650 Pra, mos u bëni merak nëse nuk mjaft të zhytet në të gjitha përnjëherë. 325 00:13:31,650 --> 00:13:35,400 Por int i = 0 është, histori të gjatë të shkurtër, duke thënë jepni një 326 00:13:35,400 --> 00:13:38,290 ndryshore që është numër i plotë i tipit, kështu që jepni një numër 327 00:13:38,290 --> 00:13:40,890 quhet i, dhe nisja atë për të 0. 328 00:13:40,890 --> 00:13:43,460 Kjo është dhënë mua si një x algjebrike ndryshueshme dhe 329 00:13:43,460 --> 00:13:44,580 nisja atë për të 0. 330 00:13:44,580 --> 00:13:46,250 Por në këtë rast kemi quajtur atë unë. 331 00:13:46,250 --> 00:13:49,120 Pastaj në mes, ajo thotë se i është më pak se 10. 332 00:13:49,120 --> 00:13:52,150 Kjo është thënë kompjuterin e stuff në vijim në mënyrë të gjatë 333 00:13:52,150 --> 00:13:53,770 si i është më pak se 10. 334 00:13:53,770 --> 00:13:55,370 Dhe padyshim ajo fillon më pak se 10 për shkak 335 00:13:55,370 --> 00:13:56,550 fillon në 0. 336 00:13:56,550 --> 00:13:59,150 Pastaj në fund, ju mund ndoshta me mend se çfarë kam + + mjete. 337 00:13:59,150 --> 00:14:02,140 Është pak e sintaksës që vetëm do të thotë shtim i. 338 00:14:02,140 --> 00:14:05,270 Pra, shtoni 1 me i, përsëri dhe përsëri dhe përsëri. 339 00:14:05,270 --> 00:14:09,260 >> Dhe kështu që ne do të shohim këtë lak, kjo sintaksë, në vend, zbaton 340 00:14:09,260 --> 00:14:12,160 pikërisht të njëjtën gjë që, sinqerisht, në Scratch ishte vetëm aq 341 00:14:12,160 --> 00:14:13,250 shumë më e lehtë për të shprehur. 342 00:14:13,250 --> 00:14:15,170 Përsëriteni 10, dhe ju jeni bërë. 343 00:14:15,170 --> 00:14:17,690 Në C, dhe në shumicën e gjuhëve të programimit, ne duhet të jetë një 344 00:14:17,690 --> 00:14:20,190 pak më shumë instruktive për kompjuter dhe në fakt 345 00:14:20,190 --> 00:14:21,630 specifikojë diçka si kjo. 346 00:14:21,630 --> 00:14:23,730 Por ne do të vijnë përsëri në këtë dhe sintaksë tjetër. 347 00:14:23,730 --> 00:14:24,780 >> Po në lidhje me variablat? 348 00:14:24,780 --> 00:14:26,940 Në Scratch kishim diçka si këto blloqe portokalli, 349 00:14:26,940 --> 00:14:28,180 ku unë mund të deklaroj një ndryshore. 350 00:14:28,180 --> 00:14:30,000 Le të thërrasë atë në mënyrë arbitrare kundër. 351 00:14:30,000 --> 00:14:31,880 Le nisja atë në 0, dhe pastaj 352 00:14:31,880 --> 00:14:33,240 le përgjithmonë të bëjë diçka. 353 00:14:33,240 --> 00:14:35,760 Në këtë rast në Scratch unë jam duke thënë se kundër, kështu që 354 00:14:35,760 --> 00:14:38,230 cat do të ketë një flluskë pak fjalim që është folur 355 00:14:38,230 --> 00:14:40,010 numri që është në këtë variabël. 356 00:14:40,010 --> 00:14:42,460 Dhe pastaj ne kemi counter ndryshim nga 1. 357 00:14:42,460 --> 00:14:45,760 Pra, e gjithë kjo është e mbështjellë brenda një lock përgjithmonë. 358 00:14:45,760 --> 00:14:48,960 Pra, ne tani kemi tashmë blloqet e ndërtimit në C me 359 00:14:48,960 --> 00:14:50,040 e cila për të përkthyer këtë. 360 00:14:50,040 --> 00:14:51,650 >> Një mënyrë ne mund të bëjmë që është kjo. 361 00:14:51,650 --> 00:14:53,890 Më jepni një numër të plotë, e quajti atë kundër. 362 00:14:53,890 --> 00:14:55,190 Nisja atë për të 0 363 00:14:55,190 --> 00:14:56,490 në rreshtin e parë atje. 364 00:14:56,490 --> 00:14:59,390 Ndërsa (e vërtetë), kështu që unë jam duke vjedhur këtë ide nga vetëm një moment 365 00:14:59,390 --> 00:15:01,300 parë, të shkojnë përpara dhe të bëjë në vijim. 366 00:15:01,300 --> 00:15:04,880 Shtypura nga counter, dhe pastaj rritje counter, 367 00:15:04,880 --> 00:15:06,930 përsëri, dhe përsëri, dhe përsëri. 368 00:15:06,930 --> 00:15:09,380 Apo përsëri, + + thjesht do të thotë të shtoni 1 për diçka. 369 00:15:09,380 --> 00:15:11,030 Por nuk është një copë e re e sintaksës këtu. 370 00:15:11,030 --> 00:15:15,730 Çfarë është hedhur jashtë si nuk është në mesin shembujt tona të mëparshme? 371 00:15:15,730 --> 00:15:17,190 Po, ky d%. 372 00:15:17,190 --> 00:15:19,810 Kështu që ju ndoshta mund të konkludoj se çfarë është duke bërë këtë, sinqerisht, duke u bazuar 373 00:15:19,810 --> 00:15:21,410 në atë bllok Scratch është duke bërë. 374 00:15:21,410 --> 00:15:24,510 Por përsëri në C, ne vetëm duhet të jetë pak më të veçantë 375 00:15:24,510 --> 00:15:25,990 kur është fjala për të shprehur veten. 376 00:15:25,990 --> 00:15:30,560 >> Pra printf ("% d \ n"). 377 00:15:30,560 --> 00:15:32,320 Edhe shumica e që ne mund të hedhin larg si të njohur. 378 00:15:32,320 --> 00:15:34,910 Kuotat thjesht do të thotë se kjo është një string, backslash n 379 00:15:34,910 --> 00:15:35,970 është vetëm një linjë e re. 380 00:15:35,970 --> 00:15:38,860 Pra, e vetmja gjë e re këtu është% d. 381 00:15:38,860 --> 00:15:40,390 Dhe e gjithë kjo është një placeholder. 382 00:15:40,390 --> 00:15:43,510 % D po shkon për të treguar një numër decimal. 383 00:15:43,510 --> 00:15:47,820 Dhe% d kompjuter do të thotë, të vënë një numër decimal këtu. 384 00:15:47,820 --> 00:15:49,450 E pra, çfarë numri ju doni të vënë atje? 385 00:15:49,450 --> 00:15:52,400 E pra, si ju ndoshta mund të konkludoj, pas presje themi 386 00:15:52,400 --> 00:15:55,480 counter, që është emri i një ndryshore që deklarohet, ose 387 00:15:55,480 --> 00:15:57,260 krijuar nja dy rreshta më herët. 388 00:15:57,260 --> 00:16:02,420 Pra, kjo është vetëm mënyrë C i mbylljen në një ndryshore në një 389 00:16:02,420 --> 00:16:04,480 string dinamike. 390 00:16:04,480 --> 00:16:07,350 Sepse nga ana tjetër, në qoftë se unë kam bërë diçka në vend si 391 00:16:07,350 --> 00:16:12,470 kjo, printf ("kundër"), çka do të këtë 392 00:16:12,470 --> 00:16:15,220 Programi në vend të bëjë, me sa duket? 393 00:16:15,220 --> 00:16:17,260 Ajo do fjalë print "kundër". 394 00:16:17,260 --> 00:16:18,750 I cili nuk është efekti që unë dua. 395 00:16:18,750 --> 00:16:20,920 Unë kam nevojë për të zëvendësuar në një vlerë numerike. 396 00:16:20,920 --> 00:16:24,340 Pra, ne do të shohim që funksionon atëherë, si printf, nuk mund të marrë 397 00:16:24,340 --> 00:16:26,930 vetëm vetëm argumente të vetme, si 398 00:16:26,930 --> 00:16:28,150 "Hello World". 399 00:16:28,150 --> 00:16:32,050 Ata mund të marrin mbyll thonjëzat presje japin kuotën e tyre, dhe pastaj disa variabla 400 00:16:32,050 --> 00:16:35,830 që do të merrni mbyllën në, si ne do të shohim vargun e mëparshme 401 00:16:35,830 --> 00:16:38,280 nëpërmjet këtyre placeholders shenjë%. 402 00:16:38,280 --> 00:16:39,660 >> E pra ajo që për shprehje Boolean? 403 00:16:39,660 --> 00:16:42,200 Shprehjet Boolean ishin këto vlera, e vërtetë apo e rreme. 404 00:16:42,200 --> 00:16:42,830 Po ose jo. 405 00:16:42,830 --> 00:16:44,020 1 ose 0. 406 00:16:44,020 --> 00:16:45,190 On ose off. 407 00:16:45,190 --> 00:16:47,570 Pra, në Scratch ata të duken si kjo, dhe vëreni se 408 00:16:47,570 --> 00:16:50,170 bllok fund këtu është vërtetë lidhje 409 00:16:50,170 --> 00:16:51,500 e dy blloqeve të vogla. 410 00:16:51,500 --> 00:16:53,610 Kështu që unë lloj i zvarritur dhe ra tri copa mister 411 00:16:53,610 --> 00:16:56,450 së bashku për ta bërë atë pjesë të gjatë mister atje kështu që unë 412 00:16:56,450 --> 00:17:00,420 mund të përcjellë idenë se unë dua x të jetë më pak se y dhe 413 00:17:00,420 --> 00:17:02,540 y të jetë më pak se z. 414 00:17:02,540 --> 00:17:05,790 Dhe kështu që unë mund të përkthehet këto dy linja të veçanta si më poshtë. 415 00:17:05,790 --> 00:17:08,650 Një top mund të jetë shumë trivially përkthyer në C, 416 00:17:08,650 --> 00:17:10,069 me vetëm x 00:17:11,990 Ndoshta me disa kllapa për masë të mirë. 418 00:17:11,990 --> 00:17:15,520 Dhe pastaj në C, ju nuk keni shkruar dhe për të treguar 419 00:17:15,520 --> 00:17:16,819 lidhje e diçkaje. 420 00:17:16,819 --> 00:17:19,585 Ju në vend të shkruani &&. 421 00:17:19,585 --> 00:17:22,849 Dhe si ne do të shohim në fund, një simbol të vetëm ndodh që të 422 00:17:22,849 --> 00:17:23,880 do të thotë diçka të ndryshme. 423 00:17:23,880 --> 00:17:27,530 Pra && vetëm tregon idenë e dhe. 424 00:17:27,530 --> 00:17:30,040 >> Pra, përsëri, edhe pse kjo fillon të duket mjaft komplekse, 425 00:17:30,040 --> 00:17:32,560 një nga qëllimet e prezantimit para, përveç 426 00:17:32,560 --> 00:17:34,810 vetëm duke pasur një lloj fun në-luftoj ku ju mund të bëni 427 00:17:34,810 --> 00:17:36,590 diçka që është shumë e grafike, dhe të animuar, dhe 428 00:17:36,590 --> 00:17:39,000 shareable dhe si, është gjithashtu për të përcjellë idenë se 429 00:17:39,000 --> 00:17:42,010 të gjitha ideve ne fillim zhyten në sot e në vazhdim 430 00:17:42,010 --> 00:17:44,300 janë mishëruar në edhe kaq e thjeshtë 431 00:17:44,300 --> 00:17:46,850 ndërfaqe që një ditë. 432 00:17:46,850 --> 00:17:47,790 Po në lidhje me këtë këtu? 433 00:17:47,790 --> 00:17:48,860 >> Pra kushtet. 434 00:17:48,860 --> 00:17:50,590 Pra bllokut para në të majtë nuk duket 435 00:17:50,590 --> 00:17:51,610 pak më komplekse. 436 00:17:51,610 --> 00:17:52,650 Por kjo është vetëm disa zvarritje dhe 437 00:17:52,650 --> 00:17:54,140 rënie e pjesëve të njohura. 438 00:17:54,140 --> 00:17:56,690 Nëse x është më pak se y, thonë kështu. 439 00:17:56,690 --> 00:17:59,900 Tjetër në qoftë se x është më i madh se y, thonë kështu. 440 00:17:59,900 --> 00:18:02,460 Tjetër, ne mund të supozojmë se është logjikisht ashtu se 441 00:18:02,460 --> 00:18:03,580 ata duhet të jenë të barabartë. 442 00:18:03,580 --> 00:18:05,220 Pra, thonë se ata janë të barabartë. 443 00:18:05,220 --> 00:18:07,690 Tani në C në gjënë e duhur, të njëjtën saktë. 444 00:18:07,690 --> 00:18:09,730 Dhe vini re se formatimin e teksteve kaçurrel do të jetë një 445 00:18:09,730 --> 00:18:12,190 tipar i C dhe gjuhët e tjera që bëjnë këtë lloj 446 00:18:12,190 --> 00:18:13,210 i encapsulation. 447 00:18:13,210 --> 00:18:15,470 Ashtu si në qoftë se blloku është kjo gjë e verdhë që është lloj i 448 00:18:15,470 --> 00:18:17,770 grabbing bllok purpurt në brendësi të saj. 449 00:18:17,770 --> 00:18:19,480 Në mënyrë të ngjashme janë këto formatimin e teksteve - 450 00:18:19,480 --> 00:18:20,870 këto formatimin e teksteve kaçurrel - 451 00:18:20,870 --> 00:18:24,710 menduar për të sjell në mendje deri që të njëjtën ide e përqafuar një ose më shumë 452 00:18:24,710 --> 00:18:27,680 rreshta të kodit që janë prerë në brendësi të tyre. 453 00:18:27,680 --> 00:18:31,270 Pra, në anën e djathtë këtu, nëse më pak se x y, printf 454 00:18:31,270 --> 00:18:32,270 ("X është më pak se y"). 455 00:18:32,270 --> 00:18:34,980 Tjetër në qoftë se x është më i madh se y, të shtypura nga të njëjtën gjë. 456 00:18:34,980 --> 00:18:38,360 Tjetër të shtypur në dukje se ata janë të barabartë. 457 00:18:38,360 --> 00:18:41,750 >> Pra me pak fjalë, ka një hartë mjaft të drejtpërdrejtë ose të përkthimit 458 00:18:41,750 --> 00:18:44,720 e gjuhës që ne kemi parë deri tani, duke përfshirë për disa 459 00:18:44,720 --> 00:18:45,940 nga karakteristikat më të sofistikuara. 460 00:18:45,940 --> 00:18:48,680 Pra, ju nuk mund të përdorni këtë për projektin tuaj, ose mund të mos 461 00:18:48,680 --> 00:18:51,150 të jetë duke përdorur këtë për projektin tuaj këtë javë. 462 00:18:51,150 --> 00:18:54,650 Por ne kemi këto gjëra quhet vargjeve në C. Në Scratch, 463 00:18:54,650 --> 00:18:55,680 ata janë quajtur listat. 464 00:18:55,680 --> 00:18:59,370 Dhe ne pamë këto me RPG Fruitcraft javën e kaluar. 465 00:18:59,370 --> 00:19:01,320 Djalë i vogël blu që ishte në këmbë rreth, picking up 466 00:19:01,320 --> 00:19:03,010 qershi dhe portokall dhe si. 467 00:19:03,010 --> 00:19:05,110 Edhe në Scratch, që u realizua me këtë portokalli 468 00:19:05,110 --> 00:19:09,000 bllokojë që përmban fjalë, në këtë rast, ne jemi të vërtetë 469 00:19:09,000 --> 00:19:10,800 duke shtuar se "portokalli" për një 470 00:19:10,800 --> 00:19:12,460 ndryshore të quajtur inventarit. 471 00:19:12,460 --> 00:19:14,910 Pra në C, kjo sintaksë do të marrë pak më shumë fshehtë. 472 00:19:14,910 --> 00:19:17,250 Dhe ne do të kthehemi në këtë javën e ardhshme dhe të bëjë më shumë 473 00:19:17,250 --> 00:19:21,060 gjëra interesante në botën e kriptografisë me të. 474 00:19:21,060 --> 00:19:23,990 Por në fund këtu, këto dy linja në thelb 475 00:19:23,990 --> 00:19:27,550 përkthehet në atë që ne jemi duke bërë në një Scratch bllokuar deri atje. 476 00:19:27,550 --> 00:19:30,120 Por më shumë se për të ardhur. 477 00:19:30,120 --> 00:19:34,120 >> Kështu që vënë atë së bashku, këtu është një program në C. Pra, le të 478 00:19:34,120 --> 00:19:36,590 shpejt ngas përveç disa pjesëve të sintaksës këtu, por 479 00:19:36,590 --> 00:19:40,300 atëherë le të vërtetë të filloni të shkruani disa kodin, njoh 480 00:19:40,300 --> 00:19:42,440 ju me disa nga mjetet ne do të jetë duke përdorur, dhe të shohim nëse ne 481 00:19:42,440 --> 00:19:45,400 mund të ndërtojë më tani disa prej këtyre blloqeve të ndërtimit themelore nga 482 00:19:45,400 --> 00:19:49,150 javën e kaluar, tani syntactically në C. Pra, në krye këtu, kjo 483 00:19:49,150 --> 00:19:51,380 është ndoshta një nga programet më të mërzitshëm që ju mund të 484 00:19:51,380 --> 00:19:53,130 shkruar në gjuhën e programimit më asnjë. 485 00:19:53,130 --> 00:19:55,010 Por kjo lloj i ka kuptim të veçantë, sepse ajo është 486 00:19:55,010 --> 00:19:58,120 Programi kanonike që çdo shkencëtar kompjuteri shkruan kur 487 00:19:58,120 --> 00:19:59,620 mësimdhënies dikush një gjuhë programimi - 488 00:19:59,620 --> 00:20:01,230 një program Hello World. 489 00:20:01,230 --> 00:20:05,120 >> Pra, në krye, shohim këtë nocion të përfshijë # 490 00:20:05,120 --> 00:20:08,180 dhe pastaj, në kllapa kënddrejtë, stdio.h. 491 00:20:08,180 --> 00:20:10,580 Ne jemi duke shkuar për të ardhur përsëri në atë, por me të vërtetë se çfarë 492 00:20:10,580 --> 00:20:13,770 do të thotë se nuk është një file në këtë botë quhet standarde 493 00:20:13,770 --> 00:20:17,670 I / O, stdio dot h, dhe kjo është vetëm një file teksti që 494 00:20:17,670 --> 00:20:19,240 dikush shkroi vjet më parë. 495 00:20:19,240 --> 00:20:22,550 Dhe brenda këtij file teksti janë një bandë e tërë e 496 00:20:22,550 --> 00:20:25,840 funksionet, ose metodat, procedurat, apo se dikush tjetër 497 00:20:25,840 --> 00:20:28,970 shkroi se ne jemi përfitues të, sepse ne 498 00:20:28,970 --> 00:20:31,420 tani mund të përdorni kodin e atij personi. 499 00:20:31,420 --> 00:20:33,070 Funksionet ai ose ajo shkroi. 500 00:20:33,070 --> 00:20:36,320 Në këtë rast, printf nuk është diçka që kam shkruar, kjo është 501 00:20:36,320 --> 00:20:37,500 nuk është diçka që CS50 shkruajtur. 502 00:20:37,500 --> 00:20:40,290 Kjo është diçka që dikush e ka shkruar vjet më parë dhe të vënë në një 503 00:20:40,290 --> 00:20:43,450 file i quajtur stdio.h dhe pastaj, si një mënjanë, vendos 504 00:20:43,450 --> 00:20:45,830 një pjesë tjetër të funksionit në një tjetër dosje. 505 00:20:45,830 --> 00:20:46,940 Por ne do të merrni atje. 506 00:20:46,940 --> 00:20:50,070 >> Pra # include është vetëm mënyra jonë për të thënë, në 507 00:20:50,070 --> 00:20:53,110 C, jepni qasje në funksionet që dikush tjetër shkroi. 508 00:20:53,110 --> 00:20:55,490 Dhe në këtë rast më intereson, sepse unë dua printf. 509 00:20:55,490 --> 00:20:57,530 Tani kemi marrë kryesore int (i pavlefshëm). 510 00:20:57,530 --> 00:21:00,160 Pra, kjo është një nga këto gjëra, sinqerisht, se në ditën e 0, 511 00:21:00,160 --> 00:21:02,400 pretty much unë kam për të lloj jashtë zonës, sepse kjo është vetëm 512 00:21:02,400 --> 00:21:03,260 jo interesante 513 00:21:03,260 --> 00:21:04,780 intelektualisht, disa nga sintaksës. 514 00:21:04,780 --> 00:21:07,940 Por tani për tani e di që funksionon, i njohur ndryshe si 515 00:21:07,940 --> 00:21:11,660 procedurat, metodat apo, në përgjithësi të prodhojë disa vlera. 516 00:21:11,660 --> 00:21:12,520 Ata bëjnë diçka. 517 00:21:12,520 --> 00:21:13,810 Ata vijnë me një përgjigje. 518 00:21:13,810 --> 00:21:15,020 Ata prodhojnë dalje. 519 00:21:15,020 --> 00:21:18,780 Pra int pranë kryesor është vetëm mënyra jonë stenografi për të thënë 520 00:21:18,780 --> 00:21:21,380 se ky funksion, kjo procedurë, është përfundimisht do 521 00:21:21,380 --> 00:21:22,650 për të ju jap përsëri një numër. 522 00:21:22,650 --> 00:21:24,370 Dhe pse kjo është, ne do të kthehen për të. 523 00:21:24,370 --> 00:21:27,810 Kryesor është vetëm bota parazgjedhur standarde për mungesë 524 00:21:27,810 --> 00:21:30,990 funksion që do të merrni ekzekutuar në një program C, kur 525 00:21:30,990 --> 00:21:31,860 ju drejtuar atë. 526 00:21:31,860 --> 00:21:34,160 Void thjesht do të thotë këtë gjë, kryesore, nuk merr 527 00:21:34,160 --> 00:21:35,270 argumente, në këtë rast. 528 00:21:35,270 --> 00:21:36,400 Kështu që unë jam duke u super eksplicite. 529 00:21:36,400 --> 00:21:38,160 Nuk ka strings në atje, nuk ka asnjë presje. 530 00:21:38,160 --> 00:21:40,690 Void do të thotë nuk ka argumente për kryesor. 531 00:21:40,690 --> 00:21:44,350 >> Tani së fundi, fatmirësisht, e fundit dy linja janë të njohur. 532 00:21:44,350 --> 00:21:46,160 Brenda formatimin e teksteve kaçurrel ne kemi një printf 533 00:21:46,160 --> 00:21:47,620 dhe ne kemi një kthim. 534 00:21:47,620 --> 00:21:50,450 Dhe kthimi është lloj i të ardhur keq që ne duhet të 535 00:21:50,450 --> 00:21:53,510 vënë atë atje, sepse në këtë rast kjo nuk është bërë gjithçka që 536 00:21:53,510 --> 00:21:54,600 shumë interes. 537 00:21:54,600 --> 00:21:58,790 Por në një program kompjuterik, kur një funksion kthen 0, 538 00:21:58,790 --> 00:22:00,610 që do të thotë të gjitha është mirë. 539 00:22:00,610 --> 00:22:01,820 Asgjë nuk shkoi keq. 540 00:22:01,820 --> 00:22:06,170 Në të kundërt, nëse një funksion të kthimit 1, ose 1 negativ, ose 541 00:22:06,170 --> 00:22:11,670 1.337 negative, ose disa numra të rastit si kjo, që 542 00:22:11,670 --> 00:22:14,020 në përgjithësi do të thotë se një gabim në të vërtetë ka ndodhur. 543 00:22:14,020 --> 00:22:16,150 Pra, nëse ju jeni në Mac apo PC tuaj, nëse ju keni parë ndonjëherë 544 00:22:16,150 --> 00:22:18,590 disa Mesazhi i bezdisshëm, sepse kompjuteri juaj ka u rrëzua ose 545 00:22:18,590 --> 00:22:20,660 ngrirë, dhe ka një mesazh të fshehtë gabim, 546 00:22:20,660 --> 00:22:23,320 dhe pastaj disa kodi, si kodi sistemi 547 00:22:23,320 --> 00:22:25,110 1,2,3,4, disa numër, 548 00:22:25,110 --> 00:22:29,270 që në përgjithësi është një detaj i panevojshëm për të treguar 549 00:22:29,270 --> 00:22:32,110 Shumica prej nesh njerëz, por kjo është ajo që disa funksioni ose disa 550 00:22:32,110 --> 00:22:34,890 Programi është kthyer në fakt, një vlerë jo-zero. 551 00:22:34,890 --> 00:22:38,540 Dhe përfitimi i kësaj është se të gjithë 0 do të thotë, si edhe, dhe 552 00:22:38,540 --> 00:22:40,470 atëherë ju thelb të ketë një numër të pafund të gjërave që 553 00:22:40,470 --> 00:22:41,130 mund të shkojnë keq. 554 00:22:41,130 --> 00:22:44,700 Cila është arsyeja pse ata zgjodhën 0 për të mirë dhe një jo-zero vlera për 555 00:22:44,700 --> 00:22:46,450 keq, siç do ta shohim së shpejti. 556 00:22:46,450 --> 00:22:47,870 >> Pra, le të shkojnë përpara dhe të shkruani këtë. 557 00:22:47,870 --> 00:22:51,610 Pra, kujtoj se ditë të tjera kam përdorur Mac tim për të hapur një 558 00:22:51,610 --> 00:22:53,970 dritare terminali, dhe pastaj kam hapur programin tekst, si 559 00:22:53,970 --> 00:22:55,900 TextEdit, dhe unë filloi të shkruajë disa kodin. 560 00:22:55,900 --> 00:22:56,580 E pra kjo është në rregull. 561 00:22:56,580 --> 00:22:58,636 Por përvoja juaj do të jenë të ndryshme në një Mac, ose 562 00:22:58,636 --> 00:23:01,220 në një kompjuter Solaris, një kompjuter Linux, çfarëdo operativ 563 00:23:01,220 --> 00:23:02,810 Sistemi ju ndodh që të jeni duke përdorur. 564 00:23:02,810 --> 00:23:04,970 Dhe kështu në kurs, ajo që ne në vend që të përdorin është diçka 565 00:23:04,970 --> 00:23:07,010 quajtur CS50 Appliance. 566 00:23:07,010 --> 00:23:10,420 Pra CS50 Appliance është një pjesë e software të shkarkohen 567 00:23:10,420 --> 00:23:13,640 që ju lejon të drejtuar një sistem operativ të quajtur Linux, 568 00:23:13,640 --> 00:23:16,810 posaçërisht Fedora Linux, në Mac apo PC tuaj. 569 00:23:16,810 --> 00:23:20,810 Dhe ju bëni këtë duke shkarkuar diçka që quhet një hypervisor. 570 00:23:20,810 --> 00:23:23,100 Pra, e gjithë kjo do të dokumentohet në grup problemit 1. 571 00:23:23,100 --> 00:23:25,240 Dhe ju do të udhëhiqet drejt asaj që ju duhet për të shkarkuar. 572 00:23:25,240 --> 00:23:27,510 Por rezultati përfundimtar, nëse ju keni një Mac apo PC, është që ju 573 00:23:27,510 --> 00:23:29,080 download disa softuerit të lirë. 574 00:23:29,080 --> 00:23:32,340 Ju pastaj shkarkoni Appliance CS50, dhe ju them se 575 00:23:32,340 --> 00:23:33,960 free software - hypervisor - 576 00:23:33,960 --> 00:23:38,080 për të drejtuar Appliance CS50 në një dritare në kompjuterin tuaj. 577 00:23:38,080 --> 00:23:39,490 Dhe ajo që ndodh është kjo. 578 00:23:39,490 --> 00:23:43,660 >> Unë kam tani, vini re këtu, atë që duket të jetë një desktop 579 00:23:43,660 --> 00:23:44,130 mjedisit. 580 00:23:44,130 --> 00:23:46,150 Dhe më lejoni të vërtetë tkurret këtë dritare të vetme. 581 00:23:46,150 --> 00:23:49,640 Pra, kjo tani është Mac tim, me një dritare të vogël këtu, dhe brenda 582 00:23:49,640 --> 00:23:51,300 e kësaj dritare ndodh të jetë një krejtësisht të 583 00:23:51,300 --> 00:23:52,380 sistemit operativ të ndryshme. 584 00:23:52,380 --> 00:23:55,250 Në të vërtetë nuk është kjo meny fillimi këtu poshtë, të kujton 585 00:23:55,250 --> 00:23:57,990 Dritare, që ka një bandë e tërë e menutë nën, duke përfshirë 586 00:23:57,990 --> 00:24:00,720 një lidhje me manualin CS50, Dropbox, dhe si. 587 00:24:00,720 --> 00:24:03,480 Dhe çfarë ky mjedis tani është një mjedis standarde 588 00:24:03,480 --> 00:24:06,280 që të gjithë ne tani mund të përdorni, kështu që pa marrë parasysh se çfarë tuaj 589 00:24:06,280 --> 00:24:08,960 kompjuter është, ajo që ju keni instaluar në të, çfarë version 590 00:24:08,960 --> 00:24:11,430 i Mac OS ose Windows që ju jeni running, ne të gjithë tani kanë 591 00:24:11,430 --> 00:24:12,800 Mjedisi njëjtë. 592 00:24:12,800 --> 00:24:15,850 Dhe tani në këtë mjedis, ne mund të filloni të shkruani disa kodin. 593 00:24:15,850 --> 00:24:18,480 >> Kështu që unë jam duke shkuar për të shkuar përpara dhe të hapur një program të quajtur gedit. 594 00:24:18,480 --> 00:24:21,500 Kjo është e krahasueshme me notepad.exe, ose 595 00:24:21,500 --> 00:24:22,790 TextEdit në një Mac. 596 00:24:22,790 --> 00:24:25,390 Dhe kjo është vetëm një e thjeshtë super text editing program 597 00:24:25,390 --> 00:24:27,500 që duket si kjo në shikim të parë. 598 00:24:27,500 --> 00:24:30,640 Tani në krye, unë kam një gamë të bardhë, në fund unë 599 00:24:30,640 --> 00:24:33,860 kanë këtë dritare zi që thotë jharvard aplikim @. 600 00:24:33,860 --> 00:24:36,440 Dhe kjo është për shkak llogarinë e përdoruesit që ne para-krijuar 601 00:24:36,440 --> 00:24:38,430 për të gjithë është quajtur John Harvard. 602 00:24:38,430 --> 00:24:41,490 Ai ka një dosje ku të gjitha dosjet e tij do të shkojnë, dhe 603 00:24:41,490 --> 00:24:43,500 këtu është ku ne mund të filloni të shkruani disa kodin. 604 00:24:43,500 --> 00:24:45,810 Pra më lejoni të shkoj përpara këtu dhe zoom në vetëm pak, dhe unë jam i 605 00:24:45,810 --> 00:24:51,550 do të bëjmë # include , kryesore int (i pavlefshëm), dhe 606 00:24:51,550 --> 00:24:57,470 atëherë unë jam duke shkuar për të bërë printf ("Hello World") 607 00:24:57,470 --> 00:24:59,490 ; Kthehen 0. 608 00:24:59,490 --> 00:25:01,400 Tani kjo është e gjitha shumë e zezë dhe e bardhë. 609 00:25:01,400 --> 00:25:03,830 >> Më lejoni të shkojnë përpara dhe të bëjë një gjë të për të mësuar atë që unë jam Gedit 610 00:25:03,830 --> 00:25:04,510 vërtetë për ta bërë. 611 00:25:04,510 --> 00:25:06,140 Lermë të shkoj Save As. 612 00:25:06,140 --> 00:25:08,560 Unë jam duke shkuar për të zgjedhur në anën e majtë këtu jharvard. 613 00:25:08,560 --> 00:25:11,010 Pra, përsëri, edhe në qoftë se ju kurrë nuk kam përdorur Linux parë, sinqerisht 614 00:25:11,010 --> 00:25:13,680 këto ditë, të gjithë prej tyre janë delegimin në thelb 615 00:25:13,680 --> 00:25:14,590 njëjtin lloj të ndërfaqes - 616 00:25:14,590 --> 00:25:16,030 Mac OS, Windows, Linux dhe. 617 00:25:16,030 --> 00:25:18,680 Pra, unë nuk kam zgjedhur dosje jharvard në shtëpi këtu. 618 00:25:18,680 --> 00:25:21,120 Dhe unë jam duke shkuar për të ruajtur këtë file si hello.c. 619 00:25:21,120 --> 00:25:24,260 Pra, në shumë të lartë, I shtypur hello.c; emërtimin e një C 620 00:25:24,260 --> 00:25:26,520 Programi me zgjerimin. C është 621 00:25:26,520 --> 00:25:27,570 çfarë është praktikë e zakonshme. 622 00:25:27,570 --> 00:25:28,650 Dhe unë goditi Save. 623 00:25:28,650 --> 00:25:32,510 Dhe tani ajo është e mirë është se unë kam mësuar në mënyrë efektive Gedit, 624 00:25:32,510 --> 00:25:33,690 se kjo është një programi C. 625 00:25:33,690 --> 00:25:36,470 Vini re se teksti im zezë dhe e bardhë është ngjyra tani koduar, ose 626 00:25:36,470 --> 00:25:39,330 Sintaksa e theksuar, të cilat vetëm tërheq vëmendjen time të 627 00:25:39,330 --> 00:25:41,540 pjesë të ndryshme semantike të programit. 628 00:25:41,540 --> 00:25:44,260 Në krye mbetur atje, si programet e mia të merrni më shumë komplekse, unë jam 629 00:25:44,260 --> 00:25:47,060 do të ketë një përmbledhje të të gjitha gjërat që kam shkruar. 630 00:25:47,060 --> 00:25:48,050 Pra, kjo është ajo deri atje. 631 00:25:48,050 --> 00:25:52,350 Pra më lejoni tani zoom out dhe shkoni poshtë në këtë dritare terminali. 632 00:25:52,350 --> 00:25:54,570 >> Pra, kjo është ndoshta e re për shumë njerëz. 633 00:25:54,570 --> 00:25:57,260 Nëse ju nuk keni përdorur një mjedis command line, ju kurrë nuk kam 634 00:25:57,260 --> 00:26:00,020 përdorur DOS, ose ju kurrë nuk kam përdorur Linux, ose ju nuk keni hapur 635 00:26:00,020 --> 00:26:02,550 Mac OS dritare terminali tuaj, ka shumë gjëra që ju 636 00:26:02,550 --> 00:26:04,820 mund të bëjë me GUI, të tilla si duke treguar dhe duke klikuar, dhe 637 00:26:04,820 --> 00:26:07,080 zvarritje, dhe rënë, dhe si, por përgjithësisht - 638 00:26:07,080 --> 00:26:09,360 sigurisht në botën e shkencës kompjuterike - 639 00:26:09,360 --> 00:26:11,580 duke përdorur një command line, ku ju nuk keni mausin tuaj 640 00:26:11,580 --> 00:26:14,220 në përgjithësi, ju keni vetëm tastierën tuaj, është në fakt një shumë 641 00:26:14,220 --> 00:26:17,260 më të fuqishme se interface, sapo ju të merrni përshtaten me klimën për 642 00:26:17,260 --> 00:26:18,580 komanda të ndryshme. 643 00:26:18,580 --> 00:26:20,940 Dhe ju lloj veten të lirë e që kanë nevojë për pikë dhe klikoni 644 00:26:20,940 --> 00:26:21,690 në çdo gjë. 645 00:26:21,690 --> 00:26:23,890 Pra, në Gedit ne do lloj të keni më të mirë të të dy botët. 646 00:26:23,890 --> 00:26:25,600 Ne mund të drag dhe drop tekst, ne mund të shohim atë 647 00:26:25,600 --> 00:26:26,840 bukur dhe ngjyra koduar. 648 00:26:26,840 --> 00:26:29,630 Por kur vjen koha për të drejtuar programin tonë, ne do të ndonjëherë 649 00:26:29,630 --> 00:26:31,750 vetëm përdorni këtë dritare të vogël këtu. 650 00:26:31,750 --> 00:26:33,460 >> Kështu që unë jam duke shkuar për të shkuar përpara dhe të bëjë këtë. 651 00:26:33,460 --> 00:26:36,420 Në dritaren e poshtme të zezë dhe të bardhë, unë jam duke shkuar për të shkuar përpara 652 00:26:36,420 --> 00:26:37,890 dhe shkruani tingulli. 653 00:26:37,890 --> 00:26:40,130 Dhe tingëllimë është emri i një përpilues. 654 00:26:40,130 --> 00:26:43,310 Është një program që konverton kodin burimor time 655 00:26:43,310 --> 00:26:48,770 në, kështu që, kodi objekt. 656 00:26:48,770 --> 00:26:51,270 0s dhe 1s, që pamë shkurtimisht javën e kaluar. 657 00:26:51,270 --> 00:26:53,700 Kujtojnë që nga java e kaluar, ne kemi premtuar se ne kemi qenë duke shkuar për të 658 00:26:53,700 --> 00:26:55,920 shkojnë nga diçka si kjo - ne duhet të jenë të 659 00:26:55,920 --> 00:26:57,010 diçka si kjo - 660 00:26:57,010 --> 00:26:58,700 dhe kjo sigurisht nuk është diçka që një njeri që po ndodh 661 00:26:58,700 --> 00:26:59,690 për të bërë me dorë. 662 00:26:59,690 --> 00:27:01,980 Pra, në vend që ne jemi duke shkuar për të përdorur një program, dhe se programi në 663 00:27:01,980 --> 00:27:03,430 këtë rast quhet tingëllimë. 664 00:27:03,430 --> 00:27:06,020 Dhe emri i programit tim është hello.c. 665 00:27:06,020 --> 00:27:09,670 Pra, në mënyrë që të hartojë hello.c nga kodi burim në 666 00:27:09,670 --> 00:27:12,930 Kodi objekt, ose 0s dhe 1s, ajo duhet të mjaftojë për të vetëm të bëjë 667 00:27:12,930 --> 00:27:14,820 këtë dhe hit Enter. 668 00:27:14,820 --> 00:27:16,850 >> Mirë, asgjë nuk duket të ketë ndodhur. 669 00:27:16,850 --> 00:27:20,450 Por unë e di tani, ose nga java e fundit, që emri i parazgjedhur 670 00:27:20,450 --> 00:27:24,920 një program, kur i shkruar në C, quhet mend a.out. 671 00:27:24,920 --> 00:27:26,610 Emri më jointeresant ju mund të dalë me. 672 00:27:26,610 --> 00:27:28,790 Një është letër i parë i alfabetit, nga është çfarë ishte 673 00:27:28,790 --> 00:27:29,960 outputted, por kështu të jetë ajo. 674 00:27:29,960 --> 00:27:33,570 Ky është programi im, dhe tani dot plagë, siç do të shohim, është 675 00:27:33,570 --> 00:27:36,170 në fakt vetëm një lloj funksion të sigurisë, sepse 676 00:27:36,170 --> 00:27:38,250 a.out është një program që kam shkruar. 677 00:27:38,250 --> 00:27:39,650 Ajo nuk ka ardhur me kompjuterin tim, kjo është 678 00:27:39,650 --> 00:27:40,790 jo në Program Files. 679 00:27:40,790 --> 00:27:42,910 Kjo nuk është në dosje Zbatime Mac OS s. 680 00:27:42,910 --> 00:27:45,740 Unë duhet të jetë eksplicit super me kompjuter, dhe thonë 681 00:27:45,740 --> 00:27:49,030 ky program, a.out, është në dosjen aktuale, 682 00:27:49,030 --> 00:27:50,260 Lista aktuale. 683 00:27:50,260 --> 00:27:53,160 Dhe mënyra që ju përfaqësoni këtë në një mjedis si ky 684 00:27:53,160 --> 00:27:57,070 po dot përfaqëson çfarëdo folder ju jeni aktualisht in 685 00:27:57,070 --> 00:27:59,420 Dhe kështu. / Thjesht do të thotë a.out kandiduar 686 00:27:59,420 --> 00:28:00,530 në dosjen aktuale. 687 00:28:00,530 --> 00:28:04,830 Dhe unë të drejtuar këtë me Enter, dhe voila, programin tim të parë. 688 00:28:04,830 --> 00:28:05,990 >> Tani, më lejoni të marrë një hap prapa. 689 00:28:05,990 --> 00:28:08,280 Kjo dritare është pak i vogël, dhe të kuptojë se poshtme 690 00:28:08,280 --> 00:28:10,340 majtë të pajisjes këtu është një tjetër ikonë. 691 00:28:10,340 --> 00:28:12,660 Njëra është Chrome, i cili duhet të jetë mjaft e njohur, vetëm një web 692 00:28:12,660 --> 00:28:14,350 shfletuesi brendësi të pajisjes. 693 00:28:14,350 --> 00:28:16,340 Dhe kjo ikonë e zezë dhe e bardhë është vetëm një 694 00:28:16,340 --> 00:28:17,720 dritare terminali të mëdha. 695 00:28:17,720 --> 00:28:19,830 Pra, në qoftë se ajo merr një pak i bezdisshëm të lloj ketë vetëm 696 00:28:19,830 --> 00:28:22,270 kjo fetë vogël pak e një dritare me të cilin për të bashkëvepruar 697 00:28:22,270 --> 00:28:24,370 me programe, ne mund të bëjmë këtë vend. 698 00:28:24,370 --> 00:28:26,640 Dhe tani më lejoni të filloni të shtypni pak më shpejt 699 00:28:26,640 --> 00:28:27,980 të jetë komanda të njohura. 700 00:28:27,980 --> 00:28:28,900 ls. 701 00:28:28,900 --> 00:28:31,410 Pra ls është komanda për listim. 702 00:28:31,410 --> 00:28:33,900 Pra, në një Mac ose Windows OS, ju në përgjithësi do të klikoni dy herë një 703 00:28:33,900 --> 00:28:36,510 dosje dhe pastaj, voila, ju të shihni të gjitha dosjet e ndryshme 704 00:28:36,510 --> 00:28:37,210 dhe dosjet. 705 00:28:37,210 --> 00:28:39,650 Në një mjedis command line, ku ju mund të shkruani 706 00:28:39,650 --> 00:28:42,390 komandat apo tekst, ls është ekuivalent. 707 00:28:42,390 --> 00:28:44,380 Pra, më tregoni çfarë është në këtë directory. 708 00:28:44,380 --> 00:28:46,540 >> Tani ka një bandë e gjëra këtu se është edhe një pak 709 00:28:46,540 --> 00:28:48,190 njohur dhe të panjohur pak. 710 00:28:48,190 --> 00:28:50,740 Por njoftim se vetëm si Windows dhe Mac OS, jharvard 711 00:28:50,740 --> 00:28:52,190 ka një dosje desktop. 712 00:28:52,190 --> 00:28:54,520 Kështu që çdo ikona që janë në tavolinën e punës time të ndodhë 713 00:28:54,520 --> 00:28:55,650 të jetë në atë dosje. 714 00:28:55,650 --> 00:28:57,250 Ka një dosje shkarkime, sende që 715 00:28:57,250 --> 00:28:58,890 Chrome mund të vënë atje. 716 00:28:58,890 --> 00:28:59,250 Dropbox. 717 00:28:59,250 --> 00:29:01,820 Pra, pajisja vjen me ndërtuar në mbështetje për Dropbox 718 00:29:01,820 --> 00:29:04,500 kështu që gjatë semestrit, ju mund të sync me Dropbox tuaj 719 00:29:04,500 --> 00:29:06,420 llogari në mënyrë që të gjitha programet tuaja janë të mbështetura. 720 00:29:06,420 --> 00:29:08,050 Ata janë të qasshme në kompjuterin tuaj të tjera. 721 00:29:08,050 --> 00:29:09,780 Nëse diçka shkon keq ndonjëherë me aplikim, ju mund të 722 00:29:09,780 --> 00:29:11,340 shumë lehtë shërohen nga Dropbox. 723 00:29:11,340 --> 00:29:12,940 Pra, kjo dosje është atje për këtë. 724 00:29:12,940 --> 00:29:14,660 Ka dy fotografi që kam bërë - hello.c 725 00:29:14,660 --> 00:29:16,540 dhe a.out. 726 00:29:16,540 --> 00:29:18,530 Dhe pastaj në të djathtë ka disa dosje të tjera që ne do të 727 00:29:18,530 --> 00:29:20,710 të marrë në drejtim në fund të semestrit, me web 728 00:29:20,710 --> 00:29:21,540 programimit. 729 00:29:21,540 --> 00:29:26,160 Kështu që kur unë bëj. /, A.out, Enter, që është thënë se të shkoni 730 00:29:26,160 --> 00:29:29,460 në directory unë jam në, dosjen aktuale, dhe drejtuar 731 00:29:29,460 --> 00:29:32,465 Programi quhet a.out drejtë atje. 732 00:29:32,465 --> 00:29:35,810 >> Të gjithë të drejtë, kështu që është e bukur dhe e mirë, por kjo nuk është e gjitha që 733 00:29:35,810 --> 00:29:38,550 bindëse për të shkruar një program të quajtur ndihmojë a.out. 734 00:29:38,550 --> 00:29:40,790 Pra, ne mund të bëjë në fakt kjo pak ndryshe. 735 00:29:40,790 --> 00:29:43,980 Pra, në vend të vetëm tingëllimë të rrjedhshëm, hello.c, le të shtoni 736 00:29:43,980 --> 00:29:46,850 atë që quhet një argument command line. 737 00:29:46,850 --> 00:29:50,730 Pra, një linjë komande argument, ose një kaloni në këtë rast, është vetëm 738 00:29:50,730 --> 00:29:54,930 një fjalë apo fraza që ju shkruani në një të shpejtë pas 739 00:29:54,930 --> 00:29:56,290 program që ju dëshironi për të kandiduar. 740 00:29:56,290 --> 00:29:59,970 Pra, në këtë rast, është tingëllimë programi që unë dua të drejtuar,-o 741 00:29:59,970 --> 00:30:03,480 prodhimi do të thotë një fotografi që është nuk quhet a.out. 742 00:30:03,480 --> 00:30:07,510 Prodhimi një file të quajtur hello, dhe të bëjë kështu me hartimin e 743 00:30:07,510 --> 00:30:10,200 fjala e fundit në linjë, hello.c. 744 00:30:10,200 --> 00:30:13,200 Pra me pak fjalë, kjo është një përmirësim shumë margjinale, ku 745 00:30:13,200 --> 00:30:15,850 në vend të kësaj a.out emrin stupidly file, 746 00:30:15,850 --> 00:30:21,430 Unë tani mund të bëjë tingëllimë-o hello, atëherë hello.c, dhe 747 00:30:21,430 --> 00:30:22,530 pastaj goditi Enter. 748 00:30:22,530 --> 00:30:25,510 Asgjë nuk duket të ndodhë, por përsëri shumë si me 0 - kur 749 00:30:25,510 --> 00:30:28,510 asgjë nuk duket të ndodhë që do të thotë asgjë të keqe ka ndodhur - 750 00:30:28,510 --> 00:30:31,460 kështu që le të bëjmë ls tani, Enter, dhe në të vërtetë unë tani 751 00:30:31,460 --> 00:30:32,780 kanë një program hello. 752 00:30:32,780 --> 00:30:38,510 Pra, nëse unë lloji përshëndetje tani, Komanda nuk u gjet. 753 00:30:38,510 --> 00:30:39,440 OK,. /. 754 00:30:39,440 --> 00:30:40,220 Pra, saktësisht e drejtë. 755 00:30:40,220 --> 00:30:43,170 Pra, për shkak të këtij programi kam shkruar, dhe kjo nuk ka ardhur me 756 00:30:43,170 --> 00:30:45,810 kompjuter,. / hello, Enter, do të thotë 757 00:30:45,810 --> 00:30:47,350 Unë tani jam running hello. 758 00:30:47,350 --> 00:30:48,440 >> Pra, kjo është ajo atje. 759 00:30:48,440 --> 00:30:51,070 Tani ajo që ne përfundimisht do të merrni të vijë gjithnjë e më shumë komandës 760 00:30:51,070 --> 00:30:54,110 argumentet që të na lejojë të bëjë më shumë, por vetëm për ato për 761 00:30:54,110 --> 00:30:57,760 cilin kjo mund të jetë vjetruar, më lejoni të vërtetë të shkojnë në një 762 00:30:57,760 --> 00:31:01,910 Lista këtu dhe ju jap vetëm një ngacmues të asaj se si ne të tjerët 763 00:31:01,910 --> 00:31:05,770 mund të shkoni në lidhje me zbatimin botë Hello. 764 00:31:05,770 --> 00:31:10,730 Më lejoni të shkoj në këtu, dhe unë jam duke shkuar për të hapur atë. 765 00:31:10,730 --> 00:31:13,090 Pra në fakt, unë jam duke shkuar për të shpjeguar atë që unë jam duke bërë, në mënyrë që 766 00:31:13,090 --> 00:31:15,610 kjo është e dobishme. 767 00:31:15,610 --> 00:31:17,410 Le mua back up. 768 00:31:17,410 --> 00:31:19,620 >> Kështu që unë kam qenë duke e bërë këtë një kohë të gjatë. 769 00:31:19,620 --> 00:31:23,030 Pra, njoftim mbi të drejtën nuk janë një çift i 770 00:31:23,030 --> 00:31:26,940 directories që janë përmendur kaq të çuditshme source1m dhe source1w. 771 00:31:26,940 --> 00:31:28,830 Kjo konventë është vetëm pa kuptim ne përdorim. 772 00:31:28,830 --> 00:31:31,825 Burimi thjesht do të thotë kodin burim, 1 do të thotë kjo është një javë, dhe 773 00:31:31,825 --> 00:31:34,000 m do të thotë se është e hënë, dhe w të thotë se është e mërkurë. 774 00:31:34,000 --> 00:31:34,900 Pra, asgjë fshehtë atje. 775 00:31:34,900 --> 00:31:37,830 Kjo është vetëm simbol stenografi. 776 00:31:37,830 --> 00:31:39,860 Këto gjëra janë blu dosjet, i njohur ndryshe si 777 00:31:39,860 --> 00:31:40,630 directories. 778 00:31:40,630 --> 00:31:43,870 Unë dua të shkoj në atë dosje tani, dhe në një kompjuter normal 779 00:31:43,870 --> 00:31:45,710 Unë vetëm mund të klikoni dy herë mbi një ikonë dosje dhe 780 00:31:45,710 --> 00:31:46,810 ka të gjitha dosjet e mia. 781 00:31:46,810 --> 00:31:49,270 Por në një mjedis command line, unë nuk mund të bëjë mjaft 782 00:31:49,270 --> 00:31:52,640 që, kështu që në vend, unë kam për të ndryshuar directories me dorë. 783 00:31:52,640 --> 00:31:57,900 Pra, nëse unë lloji CD dhe pastaj source1m, Enter, vërejmë se 784 00:31:57,900 --> 00:32:01,180 menjëhershëm tim, gjëja në të bardhë në të majtë, ndryshoi vetëm. 785 00:32:01,180 --> 00:32:03,690 Dhe kështu në të vërtetë, kur ajo vetëm tha kllapa dhe pastaj 786 00:32:03,690 --> 00:32:06,450 squiggle pak, simbol tildë, që vetëm do të thotë unë kam qenë 787 00:32:06,450 --> 00:32:08,800 në directory John Harvardit shtëpi, Dokumentet e mia e tij, 788 00:32:08,800 --> 00:32:10,390 Fotografi të tij personale. 789 00:32:10,390 --> 00:32:14,000 Por tani ai thotë se në kllapa ~ / source1m. 790 00:32:14,000 --> 00:32:17,090 Kjo thjesht do të thotë që unë jam në një dosje të quajtur source1m 791 00:32:17,090 --> 00:32:19,160 që është në directory John Harvardit në shtëpi. 792 00:32:19,160 --> 00:32:22,030 Pra, nëse unë tani dua të listë fotografi në këtë dosje, të lehtë 793 00:32:22,030 --> 00:32:25,300 pyetje, unë vetëm shkruani ls. 794 00:32:25,300 --> 00:32:28,860 Dhe tani shoh të gjitha dosjet që para-krijuar për sot 795 00:32:28,860 --> 00:32:31,020 leksion, të cilat, ose shumica e të cilave, të ndodhë 796 00:32:31,020 --> 00:32:32,740 të përfundojë në. C. 797 00:32:32,740 --> 00:32:36,210 >> Pra më lejoni të shkoj përpara dhe tani të drejtuar gedit e një programi të quajtur 798 00:32:36,210 --> 00:32:39,140 holloway.c, e cila është shkruar nga disa hacker rastit 799 00:32:39,140 --> 00:32:42,920 në internet, që duket pak si kjo. 800 00:32:42,920 --> 00:32:44,880 Dhe ne nuk do të kalojnë nëpër këtë në ndonjë 801 00:32:44,880 --> 00:32:48,530 detaje, por për ata më të rehatshme, në veçanti, nëse 802 00:32:48,530 --> 00:32:50,935 ju doni të merrni me mend se çfarë ky program bën këtu. 803 00:32:57,950 --> 00:32:59,990 Pjesa tjetër e siguroi, nëse ju jeni më pak ose më shumë të rehatshme, 804 00:32:59,990 --> 00:33:01,655 ne nuk jemi të merrni edhe për këtë gjë e tillë deri në fund të 805 00:33:01,655 --> 00:33:02,160 këtë semestër. 806 00:33:02,160 --> 00:33:05,390 Kjo është ajo që është një shembull i një konkursi C turbullohet, e cila 807 00:33:05,390 --> 00:33:08,390 Mjetet shkruani programin më të fshehtë kërkoni ju ndoshta 808 00:33:08,390 --> 00:33:10,820 mund të mposht njerëz të tjerë të zgjuar, të cilët janë të ngjashme 809 00:33:10,820 --> 00:33:13,010 duke u përpjekur për të shkruar gjëra dhe nxjerr se ata mund të shkruajnë 810 00:33:13,010 --> 00:33:14,280 gjërat më të fshehta se ju. 811 00:33:14,280 --> 00:33:17,290 Pra, kjo nuk është një shembull i një programi të mirë-shkrim nga 812 00:33:17,290 --> 00:33:21,260 Perspektiva e stilit, ky është një shembull i një programi që 813 00:33:21,260 --> 00:33:22,860 fiton një konkurs, për njerëzit duke u përpjekur të 814 00:33:22,860 --> 00:33:24,090 të jetë i paqartë dhe abstrakte. 815 00:33:24,090 --> 00:33:27,670 >> Pra, nëse kemi drejtuar këtë gjë, më lejoni të shkoj në dritaren time terminal, 816 00:33:27,670 --> 00:33:28,110 mënyrë që të flasin. 817 00:33:28,110 --> 00:33:29,650 Pra, ky mjedis i zi dhe të bardhë quhet 818 00:33:29,650 --> 00:33:31,160 dritare terminali në përgjithësi. 819 00:33:31,160 --> 00:33:32,600 Më lejoni të shkoj përpara dhe të përpilojnë atë. 820 00:33:32,600 --> 00:33:34,440 Unë nuk jam duke shkuar për të përdorur tingulli, sepse ky program është një 821 00:33:34,440 --> 00:33:36,340 pak fshehtë dhe ajo ka nevojë për një tjetër 822 00:33:36,340 --> 00:33:38,190 përpilues, një i quajtur GCC. 823 00:33:38,190 --> 00:33:39,200 Por kjo e bën të njëjtën gjë. 824 00:33:39,200 --> 00:33:41,130 Ajo merr kodin burimor të kodit objekt. 825 00:33:41,130 --> 00:33:43,940 Dhe tani, nëse unë të drejtuar, a.out atë program që ju 826 00:33:43,940 --> 00:33:46,065 pashë vetëm e bën këtë. 827 00:33:49,220 --> 00:33:51,170 Në mënyrë që shoku se viti fitoi atë garë. 828 00:33:51,170 --> 00:33:54,020 Gjithsesi, ne nuk jemi duke shkuar në atë drejtim, në vetvete. 829 00:33:54,020 --> 00:33:57,400 >> Pra, le të vërtetë të përpiqet të ngas tani përveç se çfarë ne mund të bëjmë 830 00:33:57,400 --> 00:33:59,540 me këto blloqe themelore të ndërtimit për të bërë më shumë dhe më 831 00:33:59,540 --> 00:34:00,590 programe interesante. 832 00:34:00,590 --> 00:34:02,800 Pra, ne kemi shkruar një program, ne kemi drejtuar një program. 833 00:34:02,800 --> 00:34:05,780 Tani ne fakt mund të thjeshtojë dhe nuk kanë për të shkruar 834 00:34:05,780 --> 00:34:07,210 tingëllimë fjala në ftim. 835 00:34:07,210 --> 00:34:10,710 Kjo rezulton nga programet tona si të merrni më shumë të fshehta, ne mund të, ose 836 00:34:10,710 --> 00:34:14,699 më komplekse në vend, ne fakt mund të drejtuar këtë komandë. 837 00:34:14,699 --> 00:34:17,610 Pra më lejoni të shkoj përsëri në directory e shtëpisë sime, në mënyrë që të flasin, le të më 838 00:34:17,610 --> 00:34:20,750 hequr - rm është komanda hiqni - Jam duke shkuar për të hequr 839 00:34:20,750 --> 00:34:23,060 file i quajtur a.out dhe përshëndetje. 840 00:34:23,060 --> 00:34:25,489 Dhe tani vini re në një mjedis command line, ashtu si në 841 00:34:25,489 --> 00:34:27,800 nje GUI, ju merrni bëri. Unë nuk mund të klikoni një buton edhe pse, unë 842 00:34:27,800 --> 00:34:31,040 duhet të shkruani për y po, y per po. 843 00:34:31,040 --> 00:34:33,460 Dhe tani, nëse unë lloji ls përsëri, njoftim se ata gjelbër 844 00:34:33,460 --> 00:34:35,469 Programet - a.out dhe përshëndetje - 845 00:34:35,469 --> 00:34:35,734 janë zhdukur. 846 00:34:35,734 --> 00:34:37,340 Beware rm. 847 00:34:37,340 --> 00:34:39,739 Ajo mund të bëjë gjëra të këqija, ashtu si ju mund të duke zvarritur 848 00:34:39,739 --> 00:34:40,810 gjërat në plehra tuaj. 849 00:34:40,810 --> 00:34:43,989 >> Pra, tani le të shkojë përpara - dhe unë mund ta bëjë këtë - tingëllimë-o 850 00:34:43,989 --> 00:34:45,139 hello, hello - 851 00:34:45,139 --> 00:34:46,884 Unë jam i mërzitur tashmë shtypur atë komandë. 852 00:34:46,884 --> 00:34:48,080 Edhe pse unë shtypur atë pak më shpejt. 853 00:34:48,080 --> 00:34:51,870 Kështu që ne mund të bëjmë në vend të bëni përshëndetje. 854 00:34:51,870 --> 00:34:53,880 Kështu që bëni nuk është një përpilues. 855 00:34:53,880 --> 00:34:57,720 Kjo është vetëm një program miqësor që vjen me Linux, në këtë 856 00:34:57,720 --> 00:34:59,070 Rasti - Sistemi operativ - 857 00:34:59,070 --> 00:35:02,480 që automatizojnë procesin e hartimit të programeve. 858 00:35:02,480 --> 00:35:05,555 Pra, në vend të kujtohet tingëllimë-o filename dhe 859 00:35:05,555 --> 00:35:08,190 atëherë kështu me radhë, sidomos kur ato linja të merrni më shumë dhe 860 00:35:08,190 --> 00:35:10,110 gjatë, unë mund të shkruaj vetëm të bëjë. 861 00:35:10,110 --> 00:35:12,030 Dhe kjo do të nxjerr nga goja një bandë e tërë e gjëra asaj 862 00:35:12,030 --> 00:35:13,940 ne do të shohim përfundimisht këtë semestër. 863 00:35:13,940 --> 00:35:17,500 Por tani, nëse vëreni I ls lloji, përshëndetje është kthyer në directory time. 864 00:35:17,500 --> 00:35:19,850 Dhe me të vërtetë unë mund të kandidojë atë me. / Hello. 865 00:35:19,850 --> 00:35:23,330 Pra, të bëjë vetëm automatizojnë procesin e running çfarë ishte, 866 00:35:23,330 --> 00:35:26,910 në këtë rast, një shumë më të gjatë, komanda më e ndërlikuar. 867 00:35:26,910 --> 00:35:29,060 Pra, ne jemi duke shkuar për të filluar përdorimin e bërë, vetëm për shkak se kjo është një shumë 868 00:35:29,060 --> 00:35:30,530 më shumë përdorues miqësore. 869 00:35:30,530 --> 00:35:32,770 >> Por tani le të bëjmë një program më interesante 870 00:35:32,770 --> 00:35:34,650 se vetëm thonë hello. 871 00:35:34,650 --> 00:35:38,680 Pra, në programet që kam shkruar deri më tani nuk ka kryesore. 872 00:35:38,680 --> 00:35:40,890 Kjo është vetëm gjëja e parazgjedhur që nis çdo gjë jashtë. 873 00:35:40,890 --> 00:35:43,340 Por ka edhe funksione të tjera atje, si edhe, dhe 874 00:35:43,340 --> 00:35:45,890 stdio.h është gjë që e pamë në krye të tonë 875 00:35:45,890 --> 00:35:48,480 fotografi më parë, dhe kjo është ajo që është e njohur si bibliotekë standarde. 876 00:35:48,480 --> 00:35:51,300 Brenda bibliotekës standarde është një bandë e tërë e funksioneve 877 00:35:51,300 --> 00:35:53,850 se dikush tjetër ka shkruar, dhe ne mund të fillojë duke përdorur këto 878 00:35:53,850 --> 00:35:55,050 Funksionet për të shkruar më shumë 879 00:35:55,050 --> 00:35:56,760 Programe interesante veten. 880 00:35:56,760 --> 00:35:58,370 >> Pra më lejoni të shkoj përsëri në aplikim. 881 00:35:58,370 --> 00:35:59,820 Unë jam duke shkuar për të mbyllur këtë dritare terminali. 882 00:35:59,820 --> 00:36:02,630 Unë jam duke shkuar për të mbyllur gjëra kemi shkruar më herët, dhe thjesht shkoni 883 00:36:02,630 --> 00:36:07,350 në hello.c, dhe vëreni tani unë mund të bëjë në vijim. 884 00:36:07,350 --> 00:36:09,730 Përshëndetje Bota nuk është e gjitha që interesante, unë do të doja të 885 00:36:09,730 --> 00:36:11,770 personalizosh këtë program për veten time. 886 00:36:11,770 --> 00:36:13,440 Pra, në vend të thënë botës, unë jam duke shkuar për të 887 00:36:13,440 --> 00:36:14,830 të shkojnë përpara dhe të them - 888 00:36:14,830 --> 00:36:16,880 Unë mund të shkruani Davidin - por kjo me të vërtetë është lloj i 889 00:36:16,880 --> 00:36:18,050 rrënjësisht njëjtë. 890 00:36:18,050 --> 00:36:19,970 Por le të provoni këtë ide placeholder. 891 00:36:19,970 --> 00:36:24,460 Kujtojnë se në C, në vend në printf, kemi pasur këto 892 00:36:24,460 --> 00:36:28,110 placeholders, dhe ka më shumë se vetëm% d. 893 00:36:28,110 --> 00:36:31,150 Pra, ishte% d, kontrolloni mendje e shëndoshë të shpejtë. 894 00:36:31,150 --> 00:36:32,310 Mirë, numri decimal, kjo është ajo. 895 00:36:32,310 --> 00:36:33,860 Shifra dhjetore, që është e gjitha. 896 00:36:33,860 --> 00:36:37,755 Pra c%, pasi ne do të hasni, do të jetë një karakter. 897 00:36:37,755 --> 00:36:40,530 Vendos një karakter këtu, një letër me anë të një Z, 898 00:36:40,530 --> 00:36:41,600 ose simbol pikësimit. 899 00:36:41,600 --> 00:36:45,590 Një karakter të vetme, f%, di ndokush nga gjuhët e tjera? 900 00:36:45,590 --> 00:36:47,020 Pra, një vlerë lundrues pikë. 901 00:36:47,020 --> 00:36:47,880 Një numër real. 902 00:36:47,880 --> 00:36:51,550 Pra, nuk është një numër decimal - kjo është në fakt një numër i vërtetë me 903 00:36:51,550 --> 00:36:54,130 një pikë dhjetore, dhe disa numri i shifrave të majtë 904 00:36:54,130 --> 00:36:55,520 dhe e drejta e saj. 905 00:36:55,520 --> 00:36:58,060 S%, string. 906 00:36:58,060 --> 00:36:59,530 Se një ne jemi duke shkuar për të parë mjaft shpesh. 907 00:36:59,530 --> 00:37:02,140 Një string, përsëri, është vetëm një fjalë, një frazë, një sekuencë e 908 00:37:02,140 --> 00:37:03,330 karaktere individuale. 909 00:37:03,330 --> 00:37:06,730 Dhe së fundi, Lld? 910 00:37:06,730 --> 00:37:08,210 Pra, kjo është më shumë një rast qoshe. 911 00:37:08,210 --> 00:37:09,850 Gjatë, decimal të gjatë. 912 00:37:09,850 --> 00:37:12,035 Pra, nëse ju nuk doni vetëm një numër i madh se kjo, ju 913 00:37:12,035 --> 00:37:14,160 duan një numër më të madh, ju jeni do të duhet të specifikojë të 914 00:37:14,160 --> 00:37:16,400 kompjuter se ajo është një madhësi të veçantë. 915 00:37:16,400 --> 00:37:17,610 >> Pra, le të shkulje këtë pak pak. 916 00:37:17,610 --> 00:37:20,610 Në vend se vetëm kodin vështirë në Davidit, më lejoni pak 917 00:37:20,610 --> 00:37:22,460 dinamike thonë se% s. 918 00:37:22,460 --> 00:37:25,790 Kështu vënë% s këtu, e cila është një vendshënuesi për një varg. 919 00:37:25,790 --> 00:37:30,500 Atëherë më lejoni të bëjë presje, dhe pastaj "Davidi" mbi këtu. 920 00:37:30,500 --> 00:37:32,770 Tani kjo nuk është e gjitha që intelektualisht interesante, 921 00:37:32,770 --> 00:37:35,060 sepse të gjitha unë kam bërë tani është të krijojë me të vërtetë shumë punë për 922 00:37:35,060 --> 00:37:35,790 kompjuter. 923 00:37:35,790 --> 00:37:39,660 Në vend se të thoni kompjuter bëni këtë të gjithë në të njëjtën kohë, unë jam tani 924 00:37:39,660 --> 00:37:43,760 thënë se e bëjnë këtë dhe të futur një varg këtu përfundimisht, presje, 925 00:37:43,760 --> 00:37:44,950 këtu është se string. 926 00:37:44,950 --> 00:37:47,220 Pra, kjo nuk është një përmirësim të mirë, por kjo është të paktën 927 00:37:47,220 --> 00:37:49,010 një hap drejt një programi më interesante. 928 00:37:49,010 --> 00:37:51,240 Sepse tani, më lejoni të shkoj përpara dhe të bëjë këtë dritare pak 929 00:37:51,240 --> 00:37:56,850 madhe, më lejoni të shkoj përpara dhe të bëjë të kandidojë hello. 930 00:37:56,850 --> 00:38:01,340 Dhe tani,. / A.out nuk është duke punuar, pse? 931 00:38:03,880 --> 00:38:05,570 Të gjithë të drejtë, tani ajo është quajtur hello. 932 00:38:05,570 --> 00:38:09,400 Kështu që përsëri të bëjë, dhe gjithashtu me një tingëllimë-o, u quajt 933 00:38:09,400 --> 00:38:11,120 Programi duhet të jetë diçka më interesante. 934 00:38:11,120 --> 00:38:13,060 Dhe voila: tani ajo thotë përshëndetje David. 935 00:38:13,060 --> 00:38:14,590 >> Të gjithë të drejtë, ende një program budalla. 936 00:38:14,590 --> 00:38:18,070 Pra, tani le të kthehemi në të vërtetë këtu dhe futjen e nocionit 937 00:38:18,070 --> 00:38:18,810 e një variable. 938 00:38:18,810 --> 00:38:21,600 Nuk do të jetë mirë në qoftë se unë mund të deklaroj një ndryshore 939 00:38:21,600 --> 00:38:23,150 cilit lloj është string? 940 00:38:23,150 --> 00:38:26,720 Dhe vlera e variablit të vërtetë vjen nga përdoruesi 941 00:38:26,720 --> 00:38:27,810 atë ose veten. 942 00:38:27,810 --> 00:38:30,240 Pra në mënyrë arbitrare, unë jam duke shkuar për të thirrur s time ndryshueshme, e cila është 943 00:38:30,240 --> 00:38:32,410 vetëm një konventë e zakonshme kur ju keni një ndryshore të quajtur 944 00:38:32,410 --> 00:38:33,250 string. 945 00:38:33,250 --> 00:38:35,670 Unë jam duke shkuar për të bërë shenjë të barabartë, dhe atëherë unë jam duke shkuar për të thirrur një 946 00:38:35,670 --> 00:38:38,030 Funksioni quhet getString. 947 00:38:38,030 --> 00:38:40,830 Pra getString nuk është diçka që vjen ndërtuar në C. Kjo është 948 00:38:40,830 --> 00:38:43,330 një funksion që stafi CS50 shkroi, në të vërtetë vetëm për 949 00:38:43,330 --> 00:38:45,670 këta parë disa javë, për të lehtësuar procesin e 950 00:38:45,670 --> 00:38:49,450 marrë të dhëna përdoruesi dhe duke fituar të dhëna përdorues në formën 951 00:38:49,450 --> 00:38:51,960 e vargjeve, ose numrat, dhe të tilla. 952 00:38:51,960 --> 00:38:55,520 Pra getString është si printf, por padyshim jo 953 00:38:55,520 --> 00:38:58,700 shtypura ajo do të bëjë atë që emrin e saj thotë se, të merrni një varg. 954 00:38:58,700 --> 00:39:00,970 Por për të përdorur getString, ne do të duhet të bëjë një ndryshim 955 00:39:00,970 --> 00:39:03,180 këtu, përtej kësaj. 956 00:39:03,180 --> 00:39:07,170 Pra intuitive, ky program, me shpresë, do të disi 957 00:39:07,170 --> 00:39:09,700 marrë një varg nga përdoruesit, dhe atëherë çfarë është ajo do të bëjë 958 00:39:09,700 --> 00:39:11,460 me atë varg, i quajtur s? 959 00:39:15,060 --> 00:39:16,470 Është vetëm do të shtypura atë, e drejtë? 960 00:39:16,470 --> 00:39:18,870 Ende nuk një program stimulues, sepse e gjitha kjo po ndodh 961 00:39:18,870 --> 00:39:22,160 të bëni është prizë në atë vlerë, ku në% s 962 00:39:22,160 --> 00:39:23,750 thotë se duhet të shkoni. 963 00:39:23,750 --> 00:39:25,290 >> Pra, le të paktën të shihni këtë në veprim. 964 00:39:25,290 --> 00:39:27,040 Më lejoni të ruajtur dhe zoom jashtë. 965 00:39:27,040 --> 00:39:30,280 Tani në dritaren time terminal këtu poshtë, fetë e vogël e një, 966 00:39:30,280 --> 00:39:32,760 më lejoni të bëj sërish të bëjë hello. 967 00:39:32,760 --> 00:39:35,160 Në rregull, dhe ah, damn, unë kam një bandë e tërë e gabimeve. 968 00:39:35,160 --> 00:39:38,020 Më lejoni të lëvizni lart, dhe ne shohim sonë të parë - 969 00:39:38,020 --> 00:39:40,430 kështu që le të bëjë në fakt këtë në një dritare edhe më të mëdha kështu që ju 970 00:39:40,430 --> 00:39:42,110 mund të shihni se sa keq I dehur - 971 00:39:42,110 --> 00:39:44,460 prandaj sigurohuni hello. 972 00:39:44,460 --> 00:39:46,540 Mirë, kjo është një fatkeqësi, e drejtë? 973 00:39:46,540 --> 00:39:48,740 Unë kam shkruar tre rreshta të kodit, dhe 974 00:39:48,740 --> 00:39:50,070 ajo është dhënë 12 gabime. 975 00:39:50,070 --> 00:39:51,980 Pra, pse është kjo? 976 00:39:51,980 --> 00:39:55,720 Pra, për fat të mirë, shumë herë kur ju shikoni shumë, shumë gabime 977 00:39:55,720 --> 00:39:57,730 pështypje jashtë në të njëjtën kohë, është e vërtetë vetëm për shkak se ju keni 978 00:39:57,730 --> 00:39:59,760 hutuar kompjuterin deri këtu. 979 00:39:59,760 --> 00:40:02,330 Dhe mbetet i hutuar nga ajo kohë merr këtu poshtë. 980 00:40:02,330 --> 00:40:04,400 Dhe kështu ajo vetëm fillon fikje dhe pengues, dhe 981 00:40:04,400 --> 00:40:07,310 pështypje nga më shumë sende frikshme se në të vërtetë vlen. 982 00:40:07,310 --> 00:40:10,120 Pra, në përgjithësi, gjithmonë të fillojë me një top. 983 00:40:10,120 --> 00:40:13,320 >> Pra shkallës shumë të lartë më të kuqe, 984 00:40:13,320 --> 00:40:14,740 mesazh gabimi është kjo. 985 00:40:14,740 --> 00:40:17,750 Përdorimi i vargut identifikues padeklaruar, nuk kam 986 00:40:17,750 --> 00:40:19,160 do të thotë standarde në? 987 00:40:19,160 --> 00:40:19,900 Unë nuk e bëri. 988 00:40:19,900 --> 00:40:24,180 Unë do të thotë vargun, por kjo është për shkak se, gjithashtu, string fjala 989 00:40:24,180 --> 00:40:26,020 që unë mbajtur duke përdorur verbalisht vërtetë 990 00:40:26,020 --> 00:40:27,240 nuk ekziston në C ose. 991 00:40:27,240 --> 00:40:29,470 Kjo është diçka që ne do të përdorim vetëm për javën e parë ose dy 992 00:40:29,470 --> 00:40:34,500 këtu, por ajo ekziston në një skedar të quajtur cs50.h. 993 00:40:34,500 --> 00:40:37,110 Kështu që tani për tani, e di se nuk është kjo bibliotekë të tjera që 994 00:40:37,110 --> 00:40:39,330 Stafi i shkroi, kështu që ajo është shkruar më shumë se fundmi 995 00:40:39,330 --> 00:40:40,510 stdio.h. 996 00:40:40,510 --> 00:40:45,020 Por brenda i cs50.h është një përcaktim, një sinonim i 997 00:40:45,020 --> 00:40:48,310 llojet, që krijon ky varg fjalë. 998 00:40:48,310 --> 00:40:50,890 >> Kështu që tani më lejoni të kthehem në dritaren time terminal. 999 00:40:50,890 --> 00:40:53,200 Unë jam duke shkuar për të pastruar këtë rrëmujë tërë nga Ctrl-L. Ne vetëm do të 1000 00:40:53,200 --> 00:40:55,700 fshij çdo gjë të pastër, dhe unë jam duke shkuar për të shkuar përpara dhe të bëjë 1001 00:40:55,700 --> 00:40:57,860 Përshëndetje përsëri, Enter. 1002 00:40:57,860 --> 00:40:59,440 Pra, çfarë ka ndodhur tani? 1003 00:40:59,440 --> 00:41:01,150 Tani të gjitha ato gabime shkoi larg. 1004 00:41:01,150 --> 00:41:02,230 Pra, çfarë kam bërë me të vërtetë? 1005 00:41:02,230 --> 00:41:05,920 Unë e kam mësuar vetëm kompjuter që string ekziston, dhe kjo është 1006 00:41:05,920 --> 00:41:07,890 në këtë dosje të quajtur cs50.h. 1007 00:41:07,890 --> 00:41:10,930 Pra mos u ankuar, sepse tani ju e dini ku mund të gjeni 1008 00:41:10,930 --> 00:41:13,220 Deklarata se funksioni në mënyrë që të flasin. 1009 00:41:13,220 --> 00:41:15,200 Ku ajo ekziston në botë. 1010 00:41:15,200 --> 00:41:18,820 >> Pra, tani unë jam duke shkuar për të shkuar përpara dhe për të drejtuar hello. 1011 00:41:18,820 --> 00:41:22,300 I duket të ketë një lak pafund, ndodh asgjë e. 1012 00:41:25,530 --> 00:41:26,870 Kështu që unë duhet të shkruani diçka këtu, të drejtë. 1013 00:41:26,870 --> 00:41:29,650 Rreshtin e parë të kodit në programin tim u getString. 1014 00:41:29,650 --> 00:41:31,750 Pra, kjo është fjalë për fjalë duke pritur për mua për të marrë një varg. 1015 00:41:31,750 --> 00:41:33,680 Pra, në këtë kuptim po, kjo është një lak pafund. 1016 00:41:33,680 --> 00:41:36,520 Me sa duket në getString është sjellja e parazgjedhur që ne 1017 00:41:36,520 --> 00:41:37,510 shkroi - Stafi - 1018 00:41:37,510 --> 00:41:39,550 thotë që vetëm presin dhe presin dhe presin dhe presin dhe presin, 1019 00:41:39,550 --> 00:41:42,550 deri kur përdoruesi ju jep një varg duke shtypur diçka in 1020 00:41:42,550 --> 00:41:46,000 Pra më lejoni të shkoj përpara dhe lloji në D-nje-v - I-d, Enter. 1021 00:41:46,000 --> 00:41:47,420 Dhe nuk është, përshëndetje David. 1022 00:41:47,420 --> 00:41:50,430 >> Tani që e bën këtë të duket si kjo është vetëm një akt i? 1023 00:41:50,430 --> 00:41:52,810 Më lejoni të shkojnë përpara dhe të shkruani në Tommy. 1024 00:41:52,810 --> 00:41:54,740 Shkruani, në rregull, duket të jetë duke punuar. 1025 00:41:54,740 --> 00:41:59,130 Punon për Rob, punon për Zamyla, punon për - rregull. 1026 00:41:59,130 --> 00:42:01,000 Kështu ajo do të punojë, ka shumë të ngjarë. 1027 00:42:01,000 --> 00:42:05,030 Kështu që ajo duhet të shtypura nga çdo gjë që ne fakt japim atë, 1028 00:42:05,030 --> 00:42:07,830 dhe ne mund të jetë pak e vështirë këtu. 1029 00:42:07,830 --> 00:42:12,130 Le të shohim nëse bëjmë diçka si përshëndetje. 1030 00:42:12,130 --> 00:42:18,000 Mund të shkojë gjatë këtu, le të shohim,, copy paste. 1031 00:42:18,000 --> 00:42:19,950 Unë nuk jam do të jetë në gjendje për të ngjitur që shumë herë këtu. 1032 00:42:19,950 --> 00:42:24,410 Paste, rregull, Shift + Ctrl + V. Pra, çfarë mund të 1033 00:42:24,410 --> 00:42:26,970 ndodhë që është e keqe këtu? 1034 00:42:26,970 --> 00:42:27,770 >> Mirë, kështu që, segfaults. 1035 00:42:27,770 --> 00:42:29,710 Kështu që disa prej jush me prejardhje mëparshme do të dini se 1036 00:42:29,710 --> 00:42:32,710 në përgjithësi, duke i dhënë kompjutera shumë të inputeve, kur ata janë 1037 00:42:32,710 --> 00:42:36,140 ndoshta nuk ka për qëllim për të marrë emrat e gjata si kjo - Bad 1038 00:42:36,140 --> 00:42:36,740 gjëra të ndodhë. 1039 00:42:36,740 --> 00:42:39,230 Në të vërtetë, në botën e internetit, shumë, kjo ndodh mjaft, 1040 00:42:39,230 --> 00:42:41,000 ku, kur ju jeni të hartonin një faqe interneti, kur ju jeni 1041 00:42:41,000 --> 00:42:43,850 projektim Facebook, ju duhet të marrë vendime arbitrare deri 1042 00:42:43,850 --> 00:42:45,370 para, si për sa kohë do të dikujt 1043 00:42:45,370 --> 00:42:46,360 Facebook emrin jetë? 1044 00:42:46,360 --> 00:42:48,050 Ose sa kohë do emri i parë të jetë e dikujt? 1045 00:42:48,050 --> 00:42:50,110 Sa kohë do të numrin e telefonit e dikujt të jetë dhe si. 1046 00:42:50,110 --> 00:42:53,580 Dhe në qoftë se programuesit bëjnë supozime të këqija, programe thyer 1047 00:42:53,580 --> 00:42:56,640 sepse ju përpiqeni duke u dhënë atyre më shumë prodhim, më shumë të dhëna 1048 00:42:56,640 --> 00:42:58,330 më tepër, se ata kanë memorie. 1049 00:42:58,330 --> 00:43:01,860 Ose RAM ndarë për të, dhe kështu që nëse tani unë hit Enter, 1050 00:43:01,860 --> 00:43:04,640 se programi i vërtetë ka punuar, sepse ne kemi qenë në bibliotekë 1051 00:43:04,640 --> 00:43:06,790 dhe ne fakt parashikuar këtë rast të veçantë. 1052 00:43:06,790 --> 00:43:10,900 Por padyshim këtë semestër, ju do të shkruani të paktën një 1053 00:43:10,900 --> 00:43:13,280 program që do të thonë këto fjalë. 1054 00:43:13,280 --> 00:43:16,520 Mbani mend këtë javë nga tani, ndoshta dy ditë nga tani. 1055 00:43:16,520 --> 00:43:18,760 Faji segmentimit është një gjë e keqe. 1056 00:43:18,760 --> 00:43:21,920 Ajo do t'iu referuar diçkaje tuaj duke bërë që kompjuteri 1057 00:43:21,920 --> 00:43:23,310 nuk parashikojnë. 1058 00:43:23,310 --> 00:43:25,810 Dhe në këtë rast, ju, programues, nuk parashikojnë. 1059 00:43:25,810 --> 00:43:27,720 Shumë si ajo që ky grumbull e çorape, ka pasur ndryshme 1060 00:43:27,720 --> 00:43:29,520 raste qoshe ne mund të kemi hasur. 1061 00:43:29,520 --> 00:43:32,340 Në mënyrë të ngjashme në programet e në qoftë se ju nuk e parashikojnë se sa kohë është 1062 00:43:32,340 --> 00:43:33,310 Emri i dikujt do të jetë. 1063 00:43:33,310 --> 00:43:35,890 Ose çfarë nëse unë kam një përdorues me qëllim të keq, dhe emri i tij ose të saj është 1064 00:43:35,890 --> 00:43:37,230 në fakt shumë e shkurtër, por ata janë vetëm duke u përpjekur 1065 00:43:37,230 --> 00:43:37,960 të luajnë me mua? 1066 00:43:37,960 --> 00:43:40,490 Çfarë do të jetë sjellja e programit tim? 1067 00:43:40,490 --> 00:43:43,930 E pra, në këtë rast, diçka që mund të vërtetë të rrëzimit. 1068 00:43:43,930 --> 00:43:44,750 >> Pra, le ta bëjmë këtë. 1069 00:43:44,750 --> 00:43:46,860 Në 90 minuta, kjo është një kohë e tmerrshme të gjatë 1070 00:43:46,860 --> 00:43:47,780 të bëjë shkenca kompjuterike. 1071 00:43:47,780 --> 00:43:49,550 Pse nuk kemi marrë në zakonin e marrjes së një minutë pesë 1072 00:43:49,550 --> 00:43:51,520 thyer këtu, dhe kur kemi ardhur përsëri, ne do të zhyten në disa 1073 00:43:51,520 --> 00:43:53,430 Programet më komplekse dhe bindëse? 1074 00:43:53,430 --> 00:43:54,680 Pesë minuta. 1075 00:43:56,910 --> 00:43:58,160 >> Dakord. 1076 00:44:01,138 --> 00:44:02,780 Pra, një koment të shpejtë. 1077 00:44:02,780 --> 00:44:05,590 Unë jam i tha se pse kjo ishte në ekran para, çfarë 1078 00:44:05,590 --> 00:44:08,880 doli nga goja ime ishte cs50.net/rsvp. 1079 00:44:08,880 --> 00:44:11,670 Kjo është e saktë. cs50.net/lunch. 1080 00:44:11,670 --> 00:44:16,030 Kështu që tani ju mund të provoni RSVPing për këtë në / drekë. 1081 00:44:16,030 --> 00:44:16,980 Por, le ta bëjmë këtë tani. 1082 00:44:16,980 --> 00:44:20,150 Pra, kjo ka qenë super të shpejtë, super re për një shumë të folks. 1083 00:44:20,150 --> 00:44:21,560 Hat të vjetra për disa folks. 1084 00:44:21,560 --> 00:44:24,930 Pra, le të Rewind për vetëm një moment, dhe të shohim se si ne mori për të 1085 00:44:24,930 --> 00:44:29,350 kjo output Hello World thjesht një moment më parë. 1086 00:44:29,350 --> 00:44:31,780 >> Pra, së pari, nuk është kjo Appliance CS50. 1087 00:44:31,780 --> 00:44:34,270 Përsëri, pjesë e problemit, software vendosur 1 do të tregojë 1088 00:44:34,270 --> 00:44:36,610 ju se si për ta shkarkuar atë, ku për ta shkarkuar atë, se çfarë duhet të klikoni 1089 00:44:36,610 --> 00:44:37,430 dhe kështu me radhë. 1090 00:44:37,430 --> 00:44:39,670 Dhe pastaj një herë ju do të ndiqni këto udhëzime, ju do të jetë në gjendje 1091 00:44:39,670 --> 00:44:42,840 për të maksimizuar dritaren tuaj, dhe Mac ose PC tuaj do të duket një 1092 00:44:42,840 --> 00:44:43,910 diçka e vogël si kjo. 1093 00:44:43,910 --> 00:44:47,170 Një sfond i zi, një dosje në shtëpi në krye, ku të gjithë 1094 00:44:47,170 --> 00:44:49,850 fotografi tuaja të shkojnë, një plehra mund të në të majtë të lartë, 1095 00:44:49,850 --> 00:44:51,130 një menu në fund. 1096 00:44:51,130 --> 00:44:54,010 Pra, përsëri, mjaft të ngjashme në frymë të Mac OS ose Windows, 1097 00:44:54,010 --> 00:44:56,040 edhe pse kjo ndodh të jetë Linux. 1098 00:44:56,040 --> 00:44:58,120 Pra, çfarë nuk kemi të bëjmë më tej? 1099 00:44:58,120 --> 00:44:59,580 E pra, kemi filluar programe me shkrim. 1100 00:44:59,580 --> 00:45:02,260 Dhe kujtoni nga java e fundit që të gjithë ajo merr për të shkruar një 1101 00:45:02,260 --> 00:45:04,970 Programi është një editor teksti të thjeshtë, 1102 00:45:04,970 --> 00:45:06,550 si Notepad ose TextEdit. 1103 00:45:06,550 --> 00:45:08,360 Sinqerisht, edhe ju mund të përdorni Microsoft Word. 1104 00:45:08,360 --> 00:45:11,170 Por gjëra të këqija do të ndodhë, sepse kjo është një shumë 1105 00:45:11,170 --> 00:45:13,930 rëndë duar zgjidhje për të shkruar një program, plus ajo do të 1106 00:45:13,930 --> 00:45:15,400 ruani atë në format të gabuar file. 1107 00:45:15,400 --> 00:45:18,150 Por kjo është vetëm një editor teksti, një përpunues teksti, është e gjitha kjo është 1108 00:45:18,150 --> 00:45:19,390 e nevojshme për të shkruar një program. 1109 00:45:19,390 --> 00:45:23,420 >> Pra, në Appliance CS50, ne mund ta bëjmë këtë në një mënyrë të thjeshtë. 1110 00:45:23,420 --> 00:45:25,580 Ne vetëm mund të klikoni në këtë ikonë në fund majtë. 1111 00:45:25,580 --> 00:45:28,790 Dhe përsëri, problemi vendosur 1 do t'ju këshillojë për këtë, dhe voila - 1112 00:45:28,790 --> 00:45:31,210 ju merrni këtë ndërfaqe zezë dhe të bardhë, ku ne mund të fillojë 1113 00:45:31,210 --> 00:45:32,160 shkruar kodin. 1114 00:45:32,160 --> 00:45:34,960 Pra, le të filloni të shkruani një program super të thjeshtë përsëri. 1115 00:45:34,960 --> 00:45:38,890 Unë jam duke shkuar për të shkuar deri tek File, Save, dhe unë jam duke shkuar për të thirrur 1116 00:45:38,890 --> 00:45:42,870 këtë, le të themi, hello2.c. 1117 00:45:42,870 --> 00:45:45,410 Dhe unë jam vetëm duke u thënë atë duke klikuar mbi jharvard, e vënë atë 1118 00:45:45,410 --> 00:45:46,750 në directory e saj në shtëpi, unë nuk e kujdesit të vërtetë 1119 00:45:46,750 --> 00:45:47,980 ku kjo e shkon. 1120 00:45:47,980 --> 00:45:49,090 Dhe pastaj të shpëtuar. 1121 00:45:49,090 --> 00:45:50,880 Dhe tani unë mund të filloni të shkruani programin tim. 1122 00:45:50,880 --> 00:45:53,560 Dhe unë kujtoj nga herët se unë kam për të shkruar int 1123 00:45:53,560 --> 00:45:55,400 kryesor (i pavlefshëm). 1124 00:45:55,400 --> 00:45:57,000 Zoom në në të majtë të lartë. 1125 00:45:57,000 --> 00:46:02,670 Dhe atëherë unë dua të them printf, të marrë dy. 1126 00:46:02,670 --> 00:46:05,690 Dhe tani një newline, të japin kuotën ngushtë, të ngushtë 1127 00:46:05,690 --> 00:46:07,820 kllapat, pikëpresje. 1128 00:46:07,820 --> 00:46:10,560 Dhe pastaj do të shkoj këtu poshtë në dritaren time terminal që është 1129 00:46:10,560 --> 00:46:12,840 ngulitur në Gedit, vetëm për lehtësi. 1130 00:46:12,840 --> 00:46:15,200 Dhe unë jam duke shkuar për të shkuar përpara dhe të bëjë shkruani hello, por jo 1131 00:46:15,200 --> 00:46:17,500 përshëndetje vetëm, hello2. 1132 00:46:17,500 --> 00:46:20,490 >> Pra dosjen time quhet hello2.c. Dosjen time për këtë arsye 1133 00:46:20,490 --> 00:46:23,510 duhet të quhet hello2, në këtë rast. 1134 00:46:23,510 --> 00:46:26,490 Dammit, çfarë nuk kam bërë gabim? 1135 00:46:26,490 --> 00:46:29,490 Të gjithë të drejtë, kështu që unë hequr një vijë të qartë, në qoftë se ju kujtohet se çfarë 1136 00:46:29,490 --> 00:46:31,020 programeve të mëparshme të duken si. 1137 00:46:31,020 --> 00:46:32,480 Por le të shohim nëse ne nuk mund të vë në lojë përveç kësaj. 1138 00:46:32,480 --> 00:46:35,310 Për fat të keq, shumica e njerëzve që shkruajnë programet me të cilat 1139 00:46:35,310 --> 00:46:38,820 kemi shkruar programe nuk thjeshtojë gjërat të gjithë që mirë. 1140 00:46:38,820 --> 00:46:41,520 Pra, ne duhet të lloj cek se çfarë nuk ka fare të bëjë 1141 00:46:41,520 --> 00:46:44,050 kuptim këtu dhe të shohim nëse ne mund të kuptoj se çfarë është e gabuar. 1142 00:46:44,050 --> 00:46:46,700 Linja e parë nuk thotë në mënyrë implicite deklaruar C 1143 00:46:46,700 --> 00:46:49,310 Funksioni Biblioteka printf me int lloji. 1144 00:46:49,310 --> 00:46:51,210 OK, kam kuptuar një pjesë të atë. 1145 00:46:51,210 --> 00:46:54,570 Por kjo duket të jetë duke aluduar në faktin që kam përdorur printf 1146 00:46:54,570 --> 00:46:55,700 gabuar, disi. 1147 00:46:55,700 --> 00:46:56,930 Dhe çfarë është ajo ndjenja e gabuar? 1148 00:46:56,930 --> 00:46:59,970 Unë thjesht nuk mësojnë kompjuterin se ajo është në një skedar 1149 00:46:59,970 --> 00:47:01,420 quajtur stdio.h. 1150 00:47:01,420 --> 00:47:04,120 Tani unë vetëm duhet të mësuar përmendësh vetëm tani që është printf 1151 00:47:04,120 --> 00:47:06,540 në stdio.h, dhe me të vërtetë nuk do të jetë tjetër 1152 00:47:06,540 --> 00:47:08,900 funksionon në këtë dosje të njëjtë që ne do të mësohen për të. 1153 00:47:08,900 --> 00:47:12,490 >> Kështu që tani më lejoni të shkoj përpara dhe e goditi Ctrl-L të vetëm e qartë se 1154 00:47:12,490 --> 00:47:16,050 larg, përsëritje të bëjë hello2, dhe voila. 1155 00:47:16,050 --> 00:47:19,490 Dhe këtë komandë përsëri, më komplekse se ne do të shpjegojë për 1156 00:47:19,490 --> 00:47:20,520 Qëllimet e sotme. 1157 00:47:20,520 --> 00:47:23,570 Por ajo ka drejtuar tingulli, Dhe tingëllimë merr kodin burim dhe 1158 00:47:23,570 --> 00:47:24,870 pështyn nga 0s dhe 1s. 1159 00:47:24,870 --> 00:47:28,610 Dhe ata 0s dhe 1s në këtë rast janë quajtur atë? 1160 00:47:28,610 --> 00:47:29,470 Mirë, kundërshtojnë kodin. 1161 00:47:29,470 --> 00:47:32,210 Dhe fotografi që ata janë në është quajtur, kështu që, 1162 00:47:32,210 --> 00:47:33,820 hello2, në këtë rast. 1163 00:47:33,820 --> 00:47:37,040 Sepse dosjen time Teksti ishte hello2.c, Enter. 1164 00:47:37,040 --> 00:47:39,820 Dhe tani kam marrë dy pikë thirrje, thirrje 1165 00:47:39,820 --> 00:47:41,880 pikë, pikë thirrje. 1166 00:47:41,880 --> 00:47:45,430 Të gjithë të drejtë, kështu që ne kemi tani mundësinë për të marrë strings, 1167 00:47:45,430 --> 00:47:46,280 me sa duket. 1168 00:47:46,280 --> 00:47:48,190 E pra, çfarë tjetër mund të merrni nga përdoruesit? 1169 00:47:48,190 --> 00:47:51,010 >> Edhe në bibliotekën CS50, ka funksione të tjera që 1170 00:47:51,010 --> 00:47:53,300 do të thjeshtojë jetën tonë në këto ditët e para. 1171 00:47:53,300 --> 00:47:56,350 GetChar, GetDouble, GetFloat, GetInt, 1172 00:47:56,350 --> 00:47:57,290 GetLongLong, getString. 1173 00:47:57,290 --> 00:47:59,550 E pra, le të këpusin off lehtë nga këto para. 1174 00:47:59,550 --> 00:48:01,430 GetString vërtetë e bën këtë. 1175 00:48:01,430 --> 00:48:04,210 Ajo vetëm ulet atje, duke pritur për përdoruesit të shkruani diçka në, 1176 00:48:04,210 --> 00:48:07,170 dhe sa më shpejt që unë lloji diçka në dhe hit Enter, atë 1177 00:48:07,170 --> 00:48:08,860 bën diçka me atë vlerë. 1178 00:48:08,860 --> 00:48:11,700 Pra, le të kthehemi në atë shembull për të parë saktësisht se çfarë 1179 00:48:11,700 --> 00:48:12,950 GetString u bërë. 1180 00:48:12,950 --> 00:48:17,445 Më lejoni të shkojnë përpara dhe të hapur deri në Gedit, hello.c, dhe kujtojnë 1181 00:48:17,445 --> 00:48:20,590 këtë të drejtë para shpërbërjes, kjo është ajo ku ne u ndërpre. 1182 00:48:20,590 --> 00:48:23,240 >> Pra, le të bezdis tani këtë përveç në pak më tepër hollësira. 1183 00:48:23,240 --> 00:48:27,190 Kështu on line 6, ka dy gjëra 1184 00:48:27,190 --> 00:48:28,450 ndodh në këtë moment. 1185 00:48:28,450 --> 00:48:32,630 Shenjë të barabartë është ndan pjesën e parë dhe pjesën e dytë. 1186 00:48:32,630 --> 00:48:34,670 Pra, në anën e majtë të shenjë të barabartë, ne jemi 1187 00:48:34,670 --> 00:48:35,580 thënë string s. 1188 00:48:35,580 --> 00:48:37,580 Dhe pastaj, kushtet Vetëm laik, çfarë është string s 1189 00:48:37,580 --> 00:48:41,040 bërë, mendoni ju? 1190 00:48:41,040 --> 00:48:42,990 Është krijuar një çfarë? 1191 00:48:42,990 --> 00:48:44,930 Pra, kjo është duke krijuar një varg të quajtur s. 1192 00:48:44,930 --> 00:48:46,370 Tani çfarë do që me të vërtetë do të thotë? 1193 00:48:46,370 --> 00:48:51,540 E pra, kjo është rezervuar hapësirë ​​për një varg quajtur s. 1194 00:48:51,540 --> 00:48:52,490 Kjo nuk është mjaft e drejtë. 1195 00:48:52,490 --> 00:48:53,120 Çfarë është kjo duke bërë? 1196 00:48:53,120 --> 00:48:55,400 Kompjutera dhe, siç e dini, kanë hard drives, kjo është ajo ku 1197 00:48:55,400 --> 00:48:56,300 fotografi tuaja janë ruajtur. 1198 00:48:56,300 --> 00:48:59,100 Kompjuter kanë RAM, dhe kjo është ajo ku programet janë të ngarkuar 1199 00:48:59,100 --> 00:49:00,240 ndërsa ata janë running. 1200 00:49:00,240 --> 00:49:02,470 Pra, kur ju të klikoni dy herë një ikonë dhe Microsoft Word hap 1201 00:49:02,470 --> 00:49:06,380 deri, Microsoft Word është i rrjedhshëm, në mënyrë që të flasin, në RAM, e cila është 1202 00:49:06,380 --> 00:49:08,160 pjesa elektronike e kompjuterit tuaj. 1203 00:49:08,160 --> 00:49:10,660 Jo fizike, pjesë mekanike që është tjerrje, ku 1204 00:49:10,660 --> 00:49:12,640 Të dhënat është ruajtur në përgjithësi një afat të gjatë. 1205 00:49:12,640 --> 00:49:15,810 Pra string s është thënë shumë e shumë kompjuter jepni 1206 00:49:15,810 --> 00:49:18,150 RAM të mjaftueshme për të përshtaten një varg. 1207 00:49:18,150 --> 00:49:20,450 Tani që është pak e një oversimplification, sepse 1208 00:49:20,450 --> 00:49:22,300 sa i madh është vargu do të jetë? 1209 00:49:22,300 --> 00:49:24,410 Edhe ne fakt nuk e di ende, kështu që në javët që do të vijnë 1210 00:49:24,410 --> 00:49:27,290 ne do të në fakt tërheq mbrapsht shtresë që është string dhe 1211 00:49:27,290 --> 00:49:28,510 ne do të ju tregojnë se çfarë është me të vërtetë. 1212 00:49:28,510 --> 00:49:31,050 String, tani për tani, është vetëm një thjeshtësim bukur e botës sonë. 1213 00:49:31,050 --> 00:49:35,700 Por string s deklaron një varg quajtur s, tani për tani. 1214 00:49:35,700 --> 00:49:36,520 Deklaron një varg. 1215 00:49:36,520 --> 00:49:39,310 Ajo ruan pak hapësirë ​​në RAM për vargun e përdoruesit është 1216 00:49:39,310 --> 00:49:40,150 gati për të tipit. 1217 00:49:40,150 --> 00:49:41,840 >> Tani le të shohim në të djathtë të shenjës të barabartë. 1218 00:49:41,840 --> 00:49:44,110 Pra, ai thotë se getString (). 1219 00:49:44,110 --> 00:49:45,070 Dhe një mendje e shëndoshë pak kontroll. 1220 00:49:45,070 --> 00:49:47,940 Fakti se nuk ka asgjë brenda e kllapa 1221 00:49:47,940 --> 00:49:50,810 nënkupton Çfarë Rreth getString? 1222 00:49:50,810 --> 00:49:52,180 Ajo merr asnjë argumente. 1223 00:49:52,180 --> 00:49:55,290 Kjo është, ju nuk mund të ndikojë në sjelljen e saj në asnjë mënyrë. 1224 00:49:55,290 --> 00:49:58,940 Çdo herë që e përdorin atë, ajo do të marrë një varg dhe kjo është ajo. 1225 00:49:58,940 --> 00:50:02,210 Në të kundërt, printf, shpresojmë se sjellja e tij nuk 1226 00:50:02,210 --> 00:50:03,010 të ndryshojë në çdo kohë. 1227 00:50:03,010 --> 00:50:05,230 Përndryshe, kjo është një funksion goxha të padobishme nëse shtypje 1228 00:50:05,230 --> 00:50:06,480 ajo bën të njëjtën gjë. 1229 00:50:06,480 --> 00:50:07,970 Në qoftë se ajo gjithmonë e Davidit shtyp ose diçka 1230 00:50:07,970 --> 00:50:09,500 arbitrare të gjithë kohës. 1231 00:50:09,500 --> 00:50:11,540 Pra printf ka kuptim që të ketë një argument. 1232 00:50:11,540 --> 00:50:14,240 GetString nuk ka të vërtetë nevojë për një argument, sepse kam kërkuar 1233 00:50:14,240 --> 00:50:16,700 për të marrë një varg nga përdoruesit dhe kjo është përdorues i cili do 1234 00:50:16,700 --> 00:50:19,580 të furnizimit me dinamizmin duke shtypur me shkronja te ndryshme 1235 00:50:19,580 --> 00:50:20,850 çdo herë në tastierë. 1236 00:50:20,850 --> 00:50:23,140 >> Pra, çfarë do të bëni getString përfundimisht? 1237 00:50:23,140 --> 00:50:25,080 Mendoni se si kjo kuti të vogël të zi. 1238 00:50:25,080 --> 00:50:29,340 Dhe kjo kuti e zezë merr asnjë kontribut, por kur ju zhurmë në 1239 00:50:29,340 --> 00:50:33,240 ajo, ajo pështyn nga një varg që përdoruesi ka shtypur in 1240 00:50:33,240 --> 00:50:36,660 Dhe fakti se ka një shenjë të barabartë nuk do të thotë të 1241 00:50:36,660 --> 00:50:39,890 çfarë është nxjerr nga goja në të djathtë dhe ruajtur atë brenda 1242 00:50:39,890 --> 00:50:41,390 çfarë është në të majtë. 1243 00:50:41,390 --> 00:50:43,470 Pra këtu shenjë të barabartë, ai në fakt nuk do të thotë 1244 00:50:43,470 --> 00:50:46,490 barazia, kjo do të thotë më tepër teknikisht detyrë. 1245 00:50:46,490 --> 00:50:49,330 Merrni vlerën në të djathtë dhe e vuri atë në 1246 00:50:49,330 --> 00:50:51,050 ndryshueshme në të majtë. 1247 00:50:51,050 --> 00:50:52,820 Pra, kjo është e gjitha që po ndodh atje. 1248 00:50:52,820 --> 00:50:55,640 >> Tani në linjë 7, ne jemi quajtur printf. 1249 00:50:55,640 --> 00:50:58,170 Pra printf shpresojmë se po bëhet një mërzitshëm pak deri tani. 1250 00:50:58,170 --> 00:50:59,530 Pra shkruar një varg formatuar. 1251 00:50:59,530 --> 00:51:00,440 Çfarë string? 1252 00:51:00,440 --> 00:51:05,460 Printuar jashtë, "h-E-l-l-O,% s 1253 00:51:05,460 --> 00:51:07,840 ! \ N ". 1254 00:51:07,840 --> 00:51:10,470 Të gjithë të drejtë, kështu që çfarë dua të plug-in për% s? 1255 00:51:10,470 --> 00:51:12,960 Fjalë për fjalë, çdo gjë është ruajtur në s. 1256 00:51:12,960 --> 00:51:15,570 Pra, në këtë rast, kontrolloni mendje e shëndoshë pak, sa argumente ka 1257 00:51:15,570 --> 00:51:16,820 printf marrë? 1258 00:51:19,860 --> 00:51:21,110 Mirë, kam dëgjuar një të tillë. 1259 00:51:23,840 --> 00:51:26,330 Kam dëgjuar një herë. 1260 00:51:26,330 --> 00:51:27,730 Dy, kam dëgjuar dy. 1261 00:51:27,730 --> 00:51:29,920 Dhe si për tre? 1262 00:51:29,920 --> 00:51:30,450 Mirë, tre? 1263 00:51:30,450 --> 00:51:30,930 Shkëlqyer. 1264 00:51:30,930 --> 00:51:33,170 Tre përgjigjet e mundshme, vetëm njëri prej tyre është e saktë. 1265 00:51:33,170 --> 00:51:36,390 Pra argumente sërish ndikojnë në sjelljen e një funksioni. 1266 00:51:36,390 --> 00:51:39,380 Në të kaluarën, printf ka marrë vetëm një argument. 1267 00:51:39,380 --> 00:51:42,260 "Hello World" ishte një argument i vetëm. 1268 00:51:42,260 --> 00:51:45,190 Megjithatë, tani, vëreni ku kjo është e presje. 1269 00:51:45,190 --> 00:51:49,600 Kjo presje është jashtë kuotën / mbyll thonjëzat, që do të thotë 1270 00:51:49,600 --> 00:51:52,170 hey printf, këtu vjen një argument të dytë. 1271 00:51:52,170 --> 00:51:54,240 >> Pra, presje në shumicën e gjuhëve të programimit 1272 00:51:54,240 --> 00:51:57,300 argumente të veçanta të shumta. 1273 00:51:57,300 --> 00:51:59,600 Pra, përgjigja këtu nuk është padyshim një, sepse 1274 00:51:59,600 --> 00:52:00,390 nuk është kjo presje. 1275 00:52:00,390 --> 00:52:03,680 Pra minimalisht, printf është me sa duket duke marrë dy 1276 00:52:03,680 --> 00:52:04,940 Argumentet këtë kohë. 1277 00:52:04,940 --> 00:52:07,050 Por mundësia për një pyetje mashtrim këtu është ajo që 1278 00:52:07,050 --> 00:52:07,990 në lidhje me këtë presje? 1279 00:52:07,990 --> 00:52:11,260 A nënkupton kjo se nuk ka aktualisht tri argumente? 1280 00:52:11,260 --> 00:52:13,820 Kjo, kjo dhe kjo. 1281 00:52:13,820 --> 00:52:18,820 Kështu asnjë, sepse që presje është brenda i thonjëza, e cila 1282 00:52:18,820 --> 00:52:20,890 do të thotë se është me të vërtetë vetëm një estetike të gjuhës angleze. 1283 00:52:20,890 --> 00:52:23,180 Ajo ka asgjë të bëjë me numrin e 1284 00:52:23,180 --> 00:52:24,890 Argumentet në këtë program. 1285 00:52:24,890 --> 00:52:27,670 Pra, kjo presje është jashtë kuotat e dyfishtë. 1286 00:52:27,670 --> 00:52:28,850 Dhe pastaj do të ktheheni 0. 1287 00:52:28,850 --> 00:52:30,980 Rendit vetëm tani për tani le të marrin këtë një besim më të 1288 00:52:30,980 --> 00:52:34,460 sot, dhe vetëm e di se kur funksionet janë bërë ekzekutimin e 1289 00:52:34,460 --> 00:52:37,950 rreshta të kodit, ata duhet të kthehen në përgjithësi disa vlera. 1290 00:52:37,950 --> 00:52:42,010 Në këtë rast, vetëm sepse kryesor duhet të kthehet një int, 1291 00:52:42,010 --> 00:52:44,320 kjo është vetëm mënyra se si funksionon gjuha C. 1292 00:52:44,320 --> 00:52:47,040 >> Kështu sepse asgjë nuk shkoi keq, ndjehet si ky program të 1293 00:52:47,040 --> 00:52:49,960 mirë, unë vetëm e vështirë koduar në kthim 0. 1294 00:52:49,960 --> 00:52:52,980 Por në të kundërt, dhe unë jam duke shkuar për të shkruar këtë në kodin pseudo 1295 00:52:52,980 --> 00:52:55,020 tani, ashtu si bëri Jozefi, kur ne e bëmë çorap 1296 00:52:55,020 --> 00:52:56,220 Shembulli javën e kaluar. 1297 00:52:56,220 --> 00:53:00,440 Nëse diçka shkoi keq - kjo nuk është kodi aktual - shkova 1298 00:53:00,440 --> 00:53:06,570 gabuar, pastaj të kthehen, le të themi, 1. 1299 00:53:06,570 --> 00:53:08,770 Tjetër kthim 0. 1300 00:53:08,770 --> 00:53:10,070 Pra, kjo është ajo ku ne jemi duke shkuar me këtë. 1301 00:53:10,070 --> 00:53:12,090 Kjo nuk është e vërtetë kodi C, vetëm pseudokod. 1302 00:53:12,090 --> 00:53:14,010 Por kjo është se si ju mund të ktheheni 1303 00:53:14,010 --> 00:53:15,580 vlera të ndryshme të mundshme. 1304 00:53:15,580 --> 00:53:19,520 Por tani për tani unë jam vetëm duke shkuar për të shkuar përpara dhe të kthehen 0. 1305 00:53:19,520 --> 00:53:24,410 Të gjithë të drejtë, ndonjë pyetje deri më tani në funksionalitetin, sintaksë, 1306 00:53:24,410 --> 00:53:25,000 apo si? 1307 00:53:25,000 --> 00:53:26,280 Po, në prapa. 1308 00:53:26,280 --> 00:53:27,530 >> Audienca: [padëgjueshme] 1309 00:53:30,510 --> 00:53:32,210 DAVID Malan: A mund të flisni pak louder? 1310 00:53:32,210 --> 00:53:34,325 Pse e bëri këtë program 0 kthimit, dhe? 1311 00:53:34,325 --> 00:53:35,575 Audienca: [padëgjueshme] 1312 00:53:39,910 --> 00:53:43,450 DAVID Malan: Oh, kjo është për shkak se unë kam dembel, sorry. 1313 00:53:43,450 --> 00:53:48,290 Nuk ka përgjigje të mirë akademike, kthehet 0. 1314 00:53:48,290 --> 00:53:52,690 Unë mund të lloj të shpëtuar këtë, duke thënë teknikisht C, nëse kryesore 1315 00:53:52,690 --> 00:53:55,900 në mënyrë eksplicite nuk kthehen një vlerë, 0 do të kthehet 1316 00:53:55,900 --> 00:53:57,730 automatikisht për ju. 1317 00:53:57,730 --> 00:54:00,290 Që është e vërtetë, unë nuk jam vetëm mbulimin. 1318 00:54:00,290 --> 00:54:03,270 Por, unë duhet të ketë bërë atë në këtë mënyrë. 1319 00:54:03,270 --> 00:54:05,250 Jo takeaway interesante se sa të tjera se gabimi im. 1320 00:54:05,250 --> 00:54:06,170 Po? 1321 00:54:06,170 --> 00:54:08,470 >> Audienca: Zakonisht kur ju shkruani në zbrazëti, që do të thotë ju 1322 00:54:08,470 --> 00:54:10,770 nuk kthehen diçka. 1323 00:54:10,770 --> 00:54:11,420 DAVID Malan: Correct. 1324 00:54:11,420 --> 00:54:15,800 Nëse në vend të kësaj, ju specifikoni para emrin e një funksioni, për 1325 00:54:15,800 --> 00:54:18,590 shembull këtu, i pavlefshëm, atëherë funksioni 1326 00:54:18,590 --> 00:54:20,480 nuk kthehen asgjë. 1327 00:54:20,480 --> 00:54:25,210 Dhe për këtë arsye unë do të them vetëm, kthimin ose asgjë në të gjitha, 1328 00:54:25,210 --> 00:54:26,730 dhe që do të jenë në përputhje. 1329 00:54:26,730 --> 00:54:27,750 Dhe ne do të kthehen në atë. 1330 00:54:27,750 --> 00:54:31,030 Dhe vetëm FYI, një prej kap me të mësuarit 1331 00:54:31,030 --> 00:54:33,450 programimit në një botë që ka qindra libra dhe 1332 00:54:33,450 --> 00:54:36,180 qindra faqet e internetit atje është që ju do pa ndryshim 1333 00:54:36,180 --> 00:54:38,220 shikoni sintaksë të ndryshme në libra të ndryshëm 1334 00:54:38,220 --> 00:54:40,220 nga njerëz të ndryshëm. 1335 00:54:40,220 --> 00:54:42,100 Kuptojnë që ne do të bëjmë çmos në seksione dhe leksione të jenë të 1336 00:54:42,100 --> 00:54:42,960 konsistente. 1337 00:54:42,960 --> 00:54:46,660 Por ndonjëherë ju do të shihni sintaksë kontradiktore. 1338 00:54:46,660 --> 00:54:48,540 Pra, sa herë që në dyshim, thjesht pyesni. 1339 00:54:48,540 --> 00:54:51,100 Dhe në përgjithësi, ne do të kujdesemi në ligjërata dhe seksioneve të 1340 00:54:51,100 --> 00:54:53,710 pothuajse gjithmonë të pranishëm atë në rrugën e drejtë. 1341 00:54:53,710 --> 00:54:56,070 Dhe unë them pothuajse gjithmonë, sepse rasti në pikë. 1342 00:54:56,070 --> 00:54:56,860 Pyetje të tjera? 1343 00:54:56,860 --> 00:55:01,590 >> Audienca: A% s ekziston jashtë aparatit? 1344 00:55:01,590 --> 00:55:03,710 DAVID Malan: A% s ekziston jashtë aparatit? 1345 00:55:03,710 --> 00:55:04,180 Po. 1346 00:55:04,180 --> 00:55:07,760 Pra,% s ka të bëjë me faktin C. se ne jemi duke e përdorur atë në 1347 00:55:07,760 --> 00:55:10,290 aplikim në thelb ka të bëjë asgjë me 1348 00:55:10,290 --> 00:55:12,080 tiparet e gjuhës ne jemi duke përdorur. 1349 00:55:12,080 --> 00:55:15,990 Në të vërtetë, javën e kaluar kur kemi përdorur Mac tim, kam shkruar 1350 00:55:15,990 --> 00:55:17,160 Kodi C në Mac tim. 1351 00:55:17,160 --> 00:55:20,020 Unë mund të ketë përdorur% s në Mac tim, dhe ju mund të përdorni atë në 1352 00:55:20,020 --> 00:55:22,400 kompjuter Windows tuaj nëse keni të instaluar një përpilues, si 1353 00:55:22,400 --> 00:55:24,070 Studio vizuale nga Microsoft. 1354 00:55:24,070 --> 00:55:24,990 Pra,% s. 1355 00:55:24,990 --> 00:55:27,860 Ne jemi duke bërë gjithçka në brendësi të këtij dritare sot ka për të 1356 00:55:27,860 --> 00:55:31,140 bëjë me C. Dhe thellësisht asgjë të bëjë me 1357 00:55:31,140 --> 00:55:33,450 sistemit operativ në fjalë. 1358 00:55:33,450 --> 00:55:35,900 Nga ana tjetër, dritare terminali zezë dhe e bardhë - kur 1359 00:55:35,900 --> 00:55:40,160 Unë jam i shtypur gjëra të tilla si ls, dhe RM, dhe cd - 1360 00:55:40,160 --> 00:55:42,020 që ka të bëjë me sistemin operativ dhe 1361 00:55:42,020 --> 00:55:43,562 lundrimit përreth. 1362 00:55:43,562 --> 00:55:44,546 Po. 1363 00:55:44,546 --> 00:55:46,520 Audienca: Unë do të thotë në bibliotekë, bibliotekën CS50. 1364 00:55:46,520 --> 00:55:49,960 DAVID Malan: Mirë, kështu që nëse ju thotë vargun fjalen, se 1365 00:55:49,960 --> 00:55:52,460 ekziston vetëm në bibliotekë CS50, e saktë. 1366 00:55:52,460 --> 00:55:55,350 Kjo nuk ekziston në C vetë, dhe në të vërtetë në një çift 1367 00:55:55,350 --> 00:55:58,220 javësh ne do të hedhin larg bibliotekën CS50 dhe të fillojnë të 1368 00:55:58,220 --> 00:56:02,290 duke bërë gjëra nga zeroja veten, në mënyrë që të flasin. 1369 00:56:02,290 --> 00:56:02,940 Pyetje të tjera? 1370 00:56:02,940 --> 00:56:04,577 Po. 1371 00:56:04,577 --> 00:56:05,827 >> Audienca: [padëgjueshme] 1372 00:56:09,470 --> 00:56:10,160 DAVID Malan: Pyetje e mirë. 1373 00:56:10,160 --> 00:56:11,720 Janë rast të ndjeshme komandat? 1374 00:56:11,720 --> 00:56:13,710 Dhe më lejoni të bëjë një dallim këtu. 1375 00:56:13,710 --> 00:56:15,840 Pra, komandat janë përgjithësisht gjërat që ne do të shkruajnë në 1376 00:56:15,840 --> 00:56:17,940 poshtme e dritares, në dritaren e terminalit. 1377 00:56:17,940 --> 00:56:21,770 Asgjë deri këtu do të jetë deklarata ose kod C. 1378 00:56:21,770 --> 00:56:24,490 Por në të dyja rastet, përgjigja është e njëjtë, po. 1379 00:56:24,490 --> 00:56:27,800 Të dyja këto mjedise, kodi C në krye dhe 1380 00:56:27,800 --> 00:56:29,910 Sistemi operativ komandë Online 1381 00:56:29,910 --> 00:56:31,440 fund, janë raste të ndjeshme. 1382 00:56:31,440 --> 00:56:33,830 Kështu që ju duhet me germa kapitale getString me G, 1383 00:56:33,830 --> 00:56:37,050 Kapitali S. Ju duhet të shkruani printf në të gjitha Fjala. 1384 00:56:37,050 --> 00:56:39,520 Ju duhet të shkruani në të gjitha ls Fjala. 1385 00:56:39,520 --> 00:56:43,260 Pra, në pothuajse çdo situatë kjo, semestri rast do të, në 1386 00:56:43,260 --> 00:56:44,820 , fakt çështje. 1387 00:56:44,820 --> 00:56:46,148 Po. 1388 00:56:46,148 --> 00:56:47,398 >> Audienca: [padëgjueshme] 1389 00:56:54,770 --> 00:56:56,480 DAVID Malan: Ah, kështu rregull, çfarë nëse kemi pasur një skedar 1390 00:56:56,480 --> 00:56:57,840 quajtur hello.d. 1391 00:56:57,840 --> 00:57:00,090 Pra, ajo rezulton nga D është një gjuhë programimi. 1392 00:57:00,090 --> 00:57:02,790 Dhe kështu në disa raste, ne në fakt mund të shkruaj një program në 1393 00:57:02,790 --> 00:57:06,190 këtë dosje dhe kanë përpiluar në atë mënyrë. 1394 00:57:06,190 --> 00:57:09,090 Ne mund, dhe në fakt, përgjigja e shkurtër është, unë nuk e di. 1395 00:57:09,090 --> 00:57:10,440 Pra, ne jemi duke shkuar për të bërë këtë. 1396 00:57:10,440 --> 00:57:13,040 Më lejoni të shkojnë përpara dhe për të krijuar një skedë të re. 1397 00:57:13,040 --> 00:57:15,580 Dhe tjerr këtu, sinqerisht në përgjithësi, është kur ndonjë dyshim 1398 00:57:15,580 --> 00:57:18,130 këtë semestër, dhe ju keni aplikim tuaj ose kompjuter 1399 00:57:18,130 --> 00:57:20,030 të hapur, të shkojnë përpara dhe të provoni diçka. 1400 00:57:20,030 --> 00:57:23,740 Kështu që unë jam duke shkuar për të ruajtur një skedar të quajtur hello.d. 1401 00:57:23,740 --> 00:57:25,010 Ruaj këtë. 1402 00:57:25,010 --> 00:57:29,070 Dhe unë jam duke shkuar për të drejtuar bërë përshëndetje Enter. 1403 00:57:29,070 --> 00:57:31,660 Ajo dukej të dëshmoj se c ishte më shumë gjasa 1404 00:57:31,660 --> 00:57:35,920 se d, në këtë rast. 1405 00:57:35,920 --> 00:57:38,046 Pyetje të tjera. 1406 00:57:38,046 --> 00:57:40,456 Po. 1407 00:57:40,456 --> 00:57:41,706 >> Audienca: [padëgjueshme] 1408 00:57:48,170 --> 00:57:49,837 DAVID Malan: Mirë, le të themi se një herë më shumë. 1409 00:57:49,837 --> 00:57:51,087 Audienca: [padëgjueshme] 1410 00:58:04,250 --> 00:58:05,780 DAVID Malan: Si do të ju shkoni në lidhje me diagnostikimin se ose 1411 00:58:05,780 --> 00:58:06,380 problemeve se? 1412 00:58:06,380 --> 00:58:08,800 Pra ka shumë të ngjarë, sepse ata janë gjuhë të ndryshme, 1413 00:58:08,800 --> 00:58:10,280 ka shumë të ngjarë që ju do të merrni një plotësisht 1414 00:58:10,280 --> 00:58:11,580 Programi ndryshe outputted. 1415 00:58:11,580 --> 00:58:14,140 Ju do të merrni mesazhe krejtësisht të ndryshme gabim. 1416 00:58:14,140 --> 00:58:16,750 Dhe gjithashtu vetëm në aspektin e dizajnit, ndoshta kjo do të jetë një 1417 00:58:16,750 --> 00:58:19,140 Vendimi i varfër dizajn të shkruar dy të ndryshme 1418 00:58:19,140 --> 00:58:21,510 gjuhë me fotografi pothuajse identike, në emrin 1419 00:58:21,510 --> 00:58:23,000 Lista e saktë të njëjtën, duke përdorur një 1420 00:58:23,000 --> 00:58:24,550 mjet automatike si të bëjë. 1421 00:58:24,550 --> 00:58:27,750 Kështu që unë mund të shtyjë mbrapa dhe thonë se në 15 vjet për të bërë këtë, 1422 00:58:27,750 --> 00:58:29,190 kurrë nuk e bëri atë gabim. 1423 00:58:29,190 --> 00:58:30,030 Mund të ndodhë. 1424 00:58:30,030 --> 00:58:31,190 Por ka vetëm të ndryshme, unë mendoj, 1425 00:58:31,190 --> 00:58:33,180 mbrojtjet logjistike në vend. 1426 00:58:33,180 --> 00:58:35,440 Plus mesazhet e gabimit që do të pasojnë, që do të 1427 00:58:35,440 --> 00:58:37,260 ta zbulojnë se çfarë çështje është. 1428 00:58:37,260 --> 00:58:39,120 Por një rast mundur qoshe. 1429 00:58:39,120 --> 00:58:41,730 >> Të gjithë të drejtë, kështu që le të prezantoj vetëm nja dy të tjera 1430 00:58:41,730 --> 00:58:45,600 Karakteristika këtu tani, kështu që ne mund të fillojë ndërtimin e deri në më shumë 1431 00:58:45,600 --> 00:58:47,140 Programi dhe më komplekse. 1432 00:58:47,140 --> 00:58:49,000 Pra, para së gjithash, matematikë. 1433 00:58:49,000 --> 00:58:51,520 Pra shembuj matematikës janë vetëm lloj i lehtë në javën e parë. 1434 00:58:51,520 --> 00:58:53,560 Kjo nuk do të thotë se të gjitha programimi është në lidhje 1435 00:58:53,560 --> 00:58:54,390 matematikë. 1436 00:58:54,390 --> 00:58:57,890 Sigurisht, të kuptuarit karakteristika të ndryshme të 1437 00:58:57,890 --> 00:58:59,610 matematikë, algjebër në veçanti, është 1438 00:58:59,610 --> 00:59:00,330 mjaft e rëndësishme këtu. 1439 00:59:00,330 --> 00:59:03,010 Në klasat më të larta të nivelit CS, algjebër lineare, 1440 00:59:03,010 --> 00:59:03,920 gur, dhe si. 1441 00:59:03,920 --> 00:59:06,500 Por shumica e kuptojnë se çfarë ne do të bëjmë këtë semestër nuk redukton 1442 00:59:06,500 --> 00:59:09,230 për matematikë, dhe sigurisht jo me aritmetike, në vetvete, por me të vërtetë 1443 00:59:09,230 --> 00:59:11,570 të vetëm logjikës dhe të menduarit të kujdesshëm. 1444 00:59:11,570 --> 00:59:14,310 Dhe kështu këtë lidhje që shkenca kompjuterike ka pasur gjatë, 1445 00:59:14,310 --> 00:59:16,570 veçanërisht në nivelin e shkollës së mesme, me matematikë, është një 1446 00:59:16,570 --> 00:59:17,370 pak mashtruese. 1447 00:59:17,370 --> 00:59:20,090 Sepse shumica e programeve që do të shkruaj, me të vërtetë, janë 1448 00:59:20,090 --> 00:59:23,290 lloj i nivelit më të lartë dhe të përqëndrohet në zgjidhjen e problemeve që, 1449 00:59:23,290 --> 00:59:26,410 sigurt, mund të përdorin disa Përveç kësaj, zbritje, dhe të ndryshme 1450 00:59:26,410 --> 00:59:28,650 formula matematikore apo si, 1451 00:59:28,650 --> 00:59:30,860 por në fund të ditës, ajo është rreth të menduarit dhe të mos 1452 00:59:30,860 --> 00:59:33,240 vetëm zbatimin e asaj që ju mund të keni bërë në si një TI 1453 00:59:33,240 --> 00:59:35,050 Llogaritësi në shkollë të mesme. 1454 00:59:35,050 --> 00:59:38,410 >> Pra, me tha se, tani le të bëjë diçka me këto 1455 00:59:38,410 --> 00:59:40,980 operatorët matematike që ekzistojnë në mënyrë që ne mund të udhëtim 1456 00:59:40,980 --> 00:59:43,950 mbi disa nga aspektet themelore të programimit, ose në 1457 00:59:43,950 --> 00:59:48,930 Në këtë rast C. Pra, ka, si CS50 biblioteka sugjeruar, 1458 00:59:48,930 --> 00:59:51,520 dhe sot ne jemi vetëm duke përdorur getString - dhe në një moment 1459 00:59:51,520 --> 00:59:52,940 ndoshta një funksion tjetër - 1460 00:59:52,940 --> 00:59:55,380 por ka të dhëna të ndryshme lloje në një kompjuter. 1461 00:59:55,380 --> 00:59:58,550 Në fund të ditës, vetëm e di kompjuterat 0s dhe 1s. 1462 00:59:58,550 --> 01:00:01,880 Por kujtojmë se javën e kaluar kemi biseduar në lidhje me sistemin binar 1463 01:00:01,880 --> 01:00:05,000 në përfaqësimin numrat, si numrin 0 dhe 1, dhe 2, 1464 01:00:05,000 --> 01:00:07,480 të gjitha mënyra për deri në 8, si në video Nate-së. 1465 01:00:07,480 --> 01:00:08,840 Dhe atëherë ne mund të mbështeteni shumë më të larta si ne 1466 01:00:08,840 --> 01:00:10,000 bëri në skenë këtu. 1467 01:00:10,000 --> 01:00:15,660 Por në qoftë se ju doni për të përfaqësuar jo vetëm numrat, por shkronja, 1468 01:00:15,660 --> 01:00:18,240 ne, njerëzit, kanë për të dalë me disa arbitrare 1469 01:00:18,240 --> 01:00:21,180 konventa, të cilit, nëse në fund të ditës të gjithë kompjuterin tim 1470 01:00:21,180 --> 01:00:24,260 ka është aftësia për të shprehur 0s dhe 1s, edhe ne do të mirë 1471 01:00:24,260 --> 01:00:27,990 fillojnë standardizimin modelet e 0s dhe 1s që përfaqësojnë 1472 01:00:27,990 --> 01:00:28,800 gjëra të ndryshme. 1473 01:00:28,800 --> 01:00:32,370 Një model i 0s dhe 1s që përfaqëson një letër. 1474 01:00:32,370 --> 01:00:34,840 Modelet e 0s dhe 1s që përfaqësojnë z letër. 1475 01:00:34,840 --> 01:00:37,600 Modelet e 0s dhe 1s që përfaqësojnë blu ngjyra, ose 1476 01:00:37,600 --> 01:00:38,600 kuqe, ose si. 1477 01:00:38,600 --> 01:00:42,360 Ne duhet të përdorim të gjitha këto 0s dhe 1s për të shprehur veten në 1478 01:00:42,360 --> 01:00:45,140 kontekste të ndryshme, në mënyra të ndryshme që nuk janë të 1479 01:00:45,140 --> 01:00:46,470 domosdoshmërisht numerike. 1480 01:00:46,470 --> 01:00:51,150 >> Pra, në aspektin e përfaqësimit, C ka lloje të ndryshme të të dhënave, 1481 01:00:51,150 --> 01:00:52,550 dhe ne kemi parë një nga këto deri më tani. 1482 01:00:52,550 --> 01:00:54,940 Ne pamë int, dhe njoftim se çfarë nuk është në ekran 1483 01:00:54,940 --> 01:00:56,140 tani është string. 1484 01:00:56,140 --> 01:00:58,550 String nuk, në fakt, ekziston në C. Përsëri, kjo është një 1485 01:00:58,550 --> 01:01:00,610 thjeshtim ne jemi paraqitur për herë të parë 1486 01:01:00,610 --> 01:01:01,570 Nja dy javë. 1487 01:01:01,570 --> 01:01:03,770 Një char është një karakter individual. 1488 01:01:03,770 --> 01:01:07,050 Një noton është një numër real, me një pikë decimale dhe numra në 1489 01:01:07,050 --> 01:01:09,066 të majtë dhe të drejtën e saj. 1490 01:01:09,066 --> 01:01:16,040 Një dyfishtë është ajo, për ata me sfond prapa paraprak? 1491 01:01:16,040 --> 01:01:19,720 Pra, një të dyfishtë është dy herë diçka. 1492 01:01:19,720 --> 01:01:21,240 Shton dy herë më shumë saktësi. 1493 01:01:21,240 --> 01:01:22,440 Pra, çfarë do të thotë kjo? 1494 01:01:22,440 --> 01:01:26,090 Pra, në secilin prej këtyre rasteve, bota ka lloj të standardizuar 1495 01:01:26,090 --> 01:01:27,960 sa bit janë përdorur për të përfaqësuar 1496 01:01:27,960 --> 01:01:29,160 secilën nga këto gjëra. 1497 01:01:29,160 --> 01:01:31,590 Pra, nëse ju keni shikuar videon ASCII Nate-së tashmë për pjesën 1498 01:01:31,590 --> 01:01:36,170 i pset 0, ose më vonë këtë javë ju do, ju ndoshta do të dini 1499 01:01:36,170 --> 01:01:37,450 se ASCII - 1500 01:01:37,450 --> 01:01:38,610 përfaqësime karakter - 1501 01:01:38,610 --> 01:01:40,670 përdorin sa bit? 1502 01:01:40,670 --> 01:01:43,410 Dhe ju mund të mbani mend edhe nga demo tonë javën e kaluar se si 1503 01:01:43,410 --> 01:01:45,500 shumë njerëz ishin në skenë. 1504 01:01:45,500 --> 01:01:46,840 Pra 7 ose 8, zakonisht. 1505 01:01:46,840 --> 01:01:49,230 Pra në përgjithësi 8, dhe ka diçka të quajtur si zgjatet 1506 01:01:49,230 --> 01:01:51,240 ASCII që përdor të gjitha 8 bit, në vend të 7. 1507 01:01:51,240 --> 01:01:54,710 Por në përgjithësi, ne flasim në fuqitë e 2, kështu që në këtë rast, 8. 1508 01:01:54,710 --> 01:01:58,900 Pra, një char në një gjuhë programimi është zakonisht 8 bit. 1509 01:01:58,900 --> 01:02:02,550 Kështu që një int përgjithësi është 32 bit. 1510 01:02:02,550 --> 01:02:04,810 Një noton në përgjithësi është 32 bit. 1511 01:02:04,810 --> 01:02:08,060 Një dyfishtë në përgjithësi është 64 bit. 1512 01:02:08,060 --> 01:02:08,870 Dhe çfarë do të thotë kjo? 1513 01:02:08,870 --> 01:02:11,500 Kjo do të thotë që ju mund të përfaqësojnë numrat më të mëdha, ose në rast 1514 01:02:11,500 --> 01:02:15,490 e numrave reale, ju mund të ketë numra shumë më tepër pas 1515 01:02:15,490 --> 01:02:16,240 Vendi decimal. 1516 01:02:16,240 --> 01:02:18,980 Një saktësi shumë më tepër, në këtë rast. 1517 01:02:18,980 --> 01:02:21,780 Tani një kohë të gjatë është quajtur fat të keq. 1518 01:02:21,780 --> 01:02:24,340 Pra, ka një int cila është 32 bit. 1519 01:02:24,340 --> 01:02:29,800 Ka një kohë të gjatë që është, nope, 32 bit. 1520 01:02:29,800 --> 01:02:32,610 Dhe një kohë të gjatë e cila është 64 bit. 1521 01:02:32,610 --> 01:02:34,830 Megjithatë, disa prej atyre që janë të ndjeshme konteksti, kjo varet 1522 01:02:34,830 --> 01:02:36,190 çfarë lloj i kompjuterit që ju keni. 1523 01:02:36,190 --> 01:02:40,510 Pra, në përgjithësi, ne do të specifikojë në një detyrat e shtëpisë ose në një quiz kur 1524 01:02:40,510 --> 01:02:41,180 ai në fakt ka rëndësi. 1525 01:02:41,180 --> 01:02:43,080 Por çështja është se ka të gjitha këto të ndryshëm 1526 01:02:43,080 --> 01:02:44,250 përfaqësime këtu. 1527 01:02:44,250 --> 01:02:45,950 >> Pra, le të zhyten në fakt në një program. 1528 01:02:45,950 --> 01:02:48,300 Në vend se të shkruaj këtë një nga zeroja, më lër të shkoj përpara 1529 01:02:48,300 --> 01:02:50,940 dhe e hapur deri nga kodi burim sotme - të gjitha prej të cilave është 1530 01:02:50,940 --> 01:02:54,980 online - në qoftë se ju doni të kallajxhi rreth online, ose kthimi në 1531 01:02:54,980 --> 01:02:57,120 Mërkurën me aplikim në kompjuterin tuaj, udhëzime 1532 01:02:57,120 --> 01:02:59,160 për të cilat do të lidhë në faqen e kursit së. 1533 01:02:59,160 --> 01:03:00,830 Këtu është një program i thjeshtë super. 1534 01:03:00,830 --> 01:03:02,520 Por atë e mori një diçka të vogël të ri në krye se 1535 01:03:02,520 --> 01:03:03,650 ne nuk kemi parë. 1536 01:03:03,650 --> 01:03:05,800 Një tërësi shumë të linjave blu të tekstit. 1537 01:03:05,800 --> 01:03:08,410 Pra, këto linja blu paraqesin komente. 1538 01:03:08,410 --> 01:03:10,620 Pra, kjo është mjaft e dobishme në një program të jetë në gjendje për të shkruar 1539 01:03:10,620 --> 01:03:13,160 disa komente për veten, apo për kolegët, apo miqtë, ose 1540 01:03:13,160 --> 01:03:15,700 miqtë mësimdhënies, se lloj i përshkruajnë se çfarë po ndodh në 1541 01:03:15,700 --> 01:03:18,500 këtë file, por nuk kanë asgjë të bëjë me kodin C vetë. 1542 01:03:18,500 --> 01:03:20,860 Asgjë të bëjë me programin funksionalisht, kjo është vetëm 1543 01:03:20,860 --> 01:03:21,760 estetikë. 1544 01:03:21,760 --> 01:03:24,580 Pra, në mënyrë që ju ta bëni këtë në C është që ju zakonisht fillojnë tuaj 1545 01:03:24,580 --> 01:03:29,860 comments with / *, dhe ju të përfundojnë me komentet tuaja 1546 01:03:29,860 --> 01:03:31,270 * /. 1547 01:03:31,270 --> 01:03:34,140 Dhe në qoftë se jeni të vërtetë anal dhe si për të nxjerrë lloj të fotografive, 1548 01:03:34,140 --> 01:03:35,870 atëherë ju do të vënë një të tërë shumë yje, ju do të bëni një 1549 01:03:35,870 --> 01:03:36,970 kuti të vogël si kjo. 1550 01:03:36,970 --> 01:03:37,990 Por asnjë nga çështjet që. 1551 01:03:37,990 --> 01:03:40,230 E vetmja gjë që ka rëndësi është e parë 1552 01:03:40,230 --> 01:03:41,620 dhe shumë të fundit. 1553 01:03:41,620 --> 01:03:43,820 Kjo është ajo që quhet një koment multi-line. 1554 01:03:43,820 --> 01:03:46,610 Dhe kjo është vetëm Konventa e njeriut për të shpesh bëjnë yjet dhe kuti 1555 01:03:46,610 --> 01:03:48,420 gjëra si kjo në qoftë se ju keni një shumë kohë të lirë. 1556 01:03:48,420 --> 01:03:51,550 >> Pra, pasi ju kam shkruar në disa komente, në përgjithësi, të vijë 1557 01:03:51,550 --> 01:03:53,160 guxim aktuale e programit. 1558 01:03:53,160 --> 01:03:55,630 Ja njohur tonë # include . 1559 01:03:55,630 --> 01:04:00,410 Dhe vetëm të shpejtë, kjo është e nevojshme apo jo e nevojshme? 1560 01:04:00,410 --> 01:04:02,860 Audienca: e nevojshme. 1561 01:04:02,860 --> 01:04:04,390 DAVID Malan: Pra, kjo nuk është e vërtetë e nevojshme. 1562 01:04:04,390 --> 01:04:07,070 Pra, pse, pse, nuk është e nevojshme? 1563 01:04:07,070 --> 01:04:08,170 Kështu që nuk ka printf. 1564 01:04:08,170 --> 01:04:08,510 Vërtetë. 1565 01:04:08,510 --> 01:04:10,470 Të gjithë ne jemi duke bërë në këtë program është matematika. 1566 01:04:10,470 --> 01:04:11,640 Kështu që unë në fakt mund të fshini atë. 1567 01:04:11,640 --> 01:04:14,330 Pra, ju nuk gjithmonë duhet të përfshijë asgjë në 1568 01:04:14,330 --> 01:04:15,420 në krye të një programi. 1569 01:04:15,420 --> 01:04:17,020 >> Pra, le të lehtësuar këtë një pak. 1570 01:04:17,020 --> 01:04:18,650 Dhe tani vini re se çfarë ky program bën. 1571 01:04:18,650 --> 01:04:19,920 Jo shumë e interesit. 1572 01:04:19,920 --> 01:04:21,410 int x = 1. 1573 01:04:21,410 --> 01:04:22,550 E pra, çfarë është kjo duke bërë? 1574 01:04:22,550 --> 01:04:25,130 E pra, mendoj se përsëri në modelin mendor nga përpara. 1575 01:04:25,130 --> 01:04:27,500 Anën e majtë dorën e kësaj shprehje bën çfarë? 1576 01:04:31,440 --> 01:04:32,830 Krijojë hapësirë ​​për një numër të plotë. 1577 01:04:32,830 --> 01:04:33,930 Pra, si shumë hapësirë? 1578 01:04:33,930 --> 01:04:36,980 E pra, ne të ndodhë që të dini tani që ajo është 32 bit. 1579 01:04:36,980 --> 01:04:40,070 Më parë, një varg ishte teknikisht 32 bit, por më shumë 1580 01:04:40,070 --> 01:04:40,950 në se në të ardhmen. 1581 01:04:40,950 --> 01:04:42,240 Por një int është 32 bit. 1582 01:04:42,240 --> 01:04:45,590 Pra kjo shprehje në të majtë këtu, int x vetëm thotë hey 1583 01:04:45,590 --> 01:04:48,490 sistemit operativ, jepni 32 bit RAM - 1584 01:04:48,490 --> 01:04:50,450 njohur ndryshe si 4 bytes e RAM - 1585 01:04:50,450 --> 01:04:53,930 në mënyrë që unë mund të vënë një numër të plotë në atë hapësirë. 1586 01:04:53,930 --> 01:04:55,330 Çfarë integer nuk ju doni të vendosni? 1587 01:04:55,330 --> 01:04:56,640 E pra, vetëm numri 1. 1588 01:04:56,640 --> 01:04:59,530 int y merr 2, bën të njëjtën gjë e saktë, edhe pse 1589 01:04:59,530 --> 01:05:02,160 numër është i madh, në aspektin e madhësisë së saj. 1590 01:05:02,160 --> 01:05:04,790 Numri në vetvete është ende vetëm 32 bit. 1591 01:05:04,790 --> 01:05:06,520 Kjo është vetëm model i bit është e ndryshme për 1592 01:05:06,520 --> 01:05:08,260 përfaqësojnë 1 kundrejt 2. 1593 01:05:08,260 --> 01:05:11,980 int z tani thotë se më jepni një tjetër bit 32, e quajti atë z, dhe vënë 1594 01:05:11,980 --> 01:05:14,210 përmbledhje e 1 dhe 2 në atje. 1595 01:05:14,210 --> 01:05:18,050 Kështu që tani po duket z ruajtjen e vlerës 3, 1596 01:05:18,050 --> 01:05:19,360 dhe pastaj kthehen 0. 1597 01:05:19,360 --> 01:05:23,020 >> Tani ky program, e bën atë të bëjë asgjë me interes? 1598 01:05:23,020 --> 01:05:26,170 Pra, ai në fakt nuk bën asgjë interesante, në ndonjë 1599 01:05:26,170 --> 01:05:28,450 kuptim, sepse pse? Është bërë disa matematikë. 1600 01:05:28,450 --> 01:05:30,590 Por kjo nuk është kthyer përgjigje, e drejtë. 1601 01:05:30,590 --> 01:05:31,790 Është kthyer 0. 1602 01:05:31,790 --> 01:05:33,440 Kjo nuk është shtypje përgjigjen. 1603 01:05:33,440 --> 01:05:35,760 Pra, ky program është në thelb i pavlefshëm, si ajo 1604 01:05:35,760 --> 01:05:36,350 qëndron tani. 1605 01:05:36,350 --> 01:05:37,220 Është duke bërë disa punë. 1606 01:05:37,220 --> 01:05:39,530 Ajo do të marrë disa numrin e sekondave, ose microseconds, në 1607 01:05:39,530 --> 01:05:41,510 drejtuar, por kjo nuk është e vërtetë për ta bërë asgjë 1608 01:05:41,510 --> 01:05:42,770 të dobishme për njeriun. 1609 01:05:42,770 --> 01:05:46,810 >> Pra, le të vërtetë tashmë e hapur math2, ku tani unë jam në të vërtetë 1610 01:05:46,810 --> 01:05:48,250 shtypjen e rezultatit. 1611 01:05:48,250 --> 01:05:51,260 Pra, kjo shumë mund të nxirret nga shembujt e tona të mëparshme. 1612 01:05:51,260 --> 01:05:54,320 Në qoftë se unë dua të bëj disa matematikë të thjeshtë, int x = 1, y 1613 01:05:54,320 --> 01:05:56,820 = 2. Z është 1 plus 2 tani. 1614 01:05:56,820 --> 01:05:59,240 Çfarë është kjo do të shtypura nga qartazi? 1615 01:05:59,240 --> 01:06:00,120 Vetëm 3. 1616 01:06:00,120 --> 01:06:01,590 Pra, mendje e shëndoshë të shpejtë kontrolloni. 1617 01:06:01,590 --> 01:06:03,830 Më lejoni të hyni në këtë directory. 1618 01:06:03,830 --> 01:06:06,480 Pra, cd source1m. 1619 01:06:06,480 --> 01:06:09,370 Më lejoni të shkojnë përpara dhe të bëjë shkruani math2. 1620 01:06:09,370 --> 01:06:11,510 Nuk ka mesazhe gabimi doli jashtë, kështu që më lejoni të kandidojë - 1621 01:06:11,510 --> 01:06:14,800 Nuk a.out--let drejtuar math2. Enter. 1622 01:06:14,800 --> 01:06:16,750 Dhe në të vërtetë, ai printuar nga 3. 1623 01:06:16,750 --> 01:06:18,460 E pra, le të marrin një vështrim në një variant të kësaj. 1624 01:06:18,460 --> 01:06:23,870 Në math3.c, ne tani kemi këtë shembull këtu. 1625 01:06:23,870 --> 01:06:26,540 >> Pra, kjo lloj i interesante. 1626 01:06:26,540 --> 01:06:32,000 Pra, në këtë këtu, përgjigjja do të merrni 1 pjesëtuar me 10, 1627 01:06:32,000 --> 01:06:33,910 dhe vini re unë kam deklaruar atë si një noton. 1628 01:06:33,910 --> 01:06:35,200 Pse unë dua që ajo të jetë një noton? 1629 01:06:35,200 --> 01:06:36,110 E pra, kjo është një pjesë. 1630 01:06:36,110 --> 01:06:37,140 Ajo do të jetë një numër real. 1631 01:06:37,140 --> 01:06:40,970 Pra, kjo do të jetë 0.1, me shpresë - 10%, në këtë rast. 1632 01:06:40,970 --> 01:06:42,610 Dhe çfarë kam pas dua të shtypura jashtë? 1633 01:06:42,610 --> 01:06:43,440 E pra, kjo përgjigje. 1634 01:06:43,440 --> 01:06:44,760 E pra, le të ngas përveç këtyre parë. 1635 01:06:44,760 --> 01:06:47,020 Pra, në anën e majtë, mund të deklarojë një 1636 01:06:47,020 --> 01:06:49,410 noton, e quajti atë përgjigje. 1637 01:06:49,410 --> 01:06:52,280 Në anën e djathtë, e ndarë 1 nga 10 dhe vendos se 1638 01:06:52,280 --> 01:06:54,370 përgjigjen brenda të ndryshueshme. 1639 01:06:54,370 --> 01:06:56,410 Tani, kjo linjë duket pak më i fshehtë. 1640 01:06:56,410 --> 01:06:59,440 Por vëreni disa tipare të njohura. % Do të thotë këtu vjen një 1641 01:06:59,440 --> 01:07:00,490 placeholder. 1642 01:07:00,490 --> 01:07:03,230 f thotë këtu është një vlerë lundrues pikë, vetëm një e vërtetë 1643 01:07:03,230 --> 01:07:05,490 numër, diçka me një pikë dhjetore. 1644 01:07:05,490 --> 01:07:07,330 0.2 Mjetet çfarë? 1645 01:07:07,330 --> 01:07:10,740 Çdokush e di nga përvoja e mëparshme? 1646 01:07:10,740 --> 01:07:12,010 Dy numra pas presjes dhjetore. 1647 01:07:12,010 --> 01:07:14,050 Pra, ne nuk e kemi parë këtë më parë, por kjo është vetëm një mënyrë për të 1648 01:07:14,050 --> 01:07:16,360 ushtruar një kontroll pak më shumë mbi printf dhe 1649 01:07:16,360 --> 01:07:20,840 duke thënë se nuk më japin 30 pikë pas presjes dhjetore, 1650 01:07:20,840 --> 01:07:22,490 vend jepni vetëm 2. 1651 01:07:22,490 --> 01:07:23,960 >> Dhe pastaj le të shkojë përpara dhe të drejtuar këtë. 1652 01:07:23,960 --> 01:07:30,160 Pra, të bëjë matematikë 3, dhe tani më lejoni të kandidojë matematikë 3, Enter. 1653 01:07:30,160 --> 01:07:34,630 Dhe kjo nuk është e drejtë. 1654 01:07:34,630 --> 01:07:37,390 Ne duket se kanë hasur bug tonë të parë të mirëfilltë. 1655 01:07:37,390 --> 01:07:39,400 E pra, ndoshta unë nuk jam vetëm në kërkim mjaft të ngushtë. 1656 01:07:39,400 --> 01:07:41,960 Pra më lejoni të shkoj deri këtu, dhe më lejoni të vënë 20 decimal 1657 01:07:41,960 --> 01:07:43,300 Vendet pikë atje. 1658 01:07:43,300 --> 01:07:47,950 Dhe më lejoni të përpilojnë këtë, të bëjë math3, të drejtuar. 1659 01:07:47,950 --> 01:07:50,960 Goxha i sigurt 1 nga 10 e ndarë nuk është 0. 1660 01:07:50,960 --> 01:07:54,270 Pra, çfarë po ndodh? 1661 01:07:54,270 --> 01:07:56,740 E pra në rregull, kështu që në fakt nuk ka të bëjë me këtë. 1662 01:07:56,740 --> 01:07:57,600 Kjo është një mendim i mirë. 1663 01:07:57,600 --> 01:07:59,140 Kjo është me të vërtetë vetëm një rastësi 1664 01:07:59,140 --> 01:08:00,220 se ne jemi bërë këtë. 1665 01:08:00,220 --> 01:08:02,010 Por vetëm për të provuar se kjo nuk është ajo, unë do të 1666 01:08:02,010 --> 01:08:03,160 kthehet diçka të rastit. 1667 01:08:03,160 --> 01:08:05,160 A nuk e bëjnë këtë në shtëpi, sepse ajo është vetëm e gabuar. 1668 01:08:05,160 --> 01:08:08,000 Por të bëjë math3, më lejoni të drejtuar atë. 1669 01:08:08,000 --> 01:08:10,690 Pra, ka të bëjë asgjë me atë që unë jam kthyer, ka të bëjë vetëm 1670 01:08:10,690 --> 01:08:11,940 me atë që unë jam shtypje. 1671 01:08:11,940 --> 01:08:14,150 Por kam dëgjuar atë këtu. 1672 01:08:14,150 --> 01:08:15,270 Çfarë? 1673 01:08:15,270 --> 01:08:17,524 Audienca: Pra, ne kemi nevojë për të shkruar numrat në 1674 01:08:17,524 --> 01:08:19,680 ndarje si - 1675 01:08:19,680 --> 01:08:20,319 >> DAVID Malan: Mirë mirë. 1676 01:08:20,319 --> 01:08:22,810 Pra, ne kemi nevojë për të shkruar numrat pjesëmarrëse në 1677 01:08:22,810 --> 01:08:25,979 Ndarja këtu si pikë lundrues vlerëson veten. 1678 01:08:25,979 --> 01:08:29,359 Pra, problemi këtu është si më parë: C, si me një shumë të 1679 01:08:29,359 --> 01:08:31,819 gjuhë, ka lloje të ndryshme të të dhënave. 1680 01:08:31,819 --> 01:08:34,600 Dhe këto lloje të të dhënave, për shembull, janë këto këtu. 1681 01:08:34,600 --> 01:08:37,430 Dhe llojet e të dhënave në fjalë këtu, kur unë lloji 1 dhe pastaj unë 1682 01:08:37,430 --> 01:08:40,870 lloji 10, ndoshta janë lloje të të dhënave çfarë? 1683 01:08:40,870 --> 01:08:42,170 Pra, kjo është ndoshta një int, e drejtë? 1684 01:08:42,170 --> 01:08:44,149 Kjo nuk është aspak një float, sepse nuk ka asnjë decimal 1685 01:08:44,149 --> 01:08:45,460 pika ose diçka të tillë. 1686 01:08:45,460 --> 01:08:48,270 Pra me të vërtetë, unë kam një int ndarë nga një int. 1687 01:08:48,270 --> 01:08:52,160 >> Pra Gjëja interesante në lidhje matematikë dhe një kompjuter është që 1688 01:08:52,160 --> 01:08:54,840 në qoftë se ju jeni duke bërë ndarje duke përdorur integers - 1689 01:08:54,840 --> 01:08:57,310 1 ndarë nga 10, po është 0.1. 1690 01:08:57,310 --> 01:09:01,420 Megjithatë, kur ju jeni ndarë një numër të plotë nga një numër i plotë, 1691 01:09:01,420 --> 01:09:06,859 Përgjigja duhet të jetë gjithashtu një numër të plotë vetëm për shkak se, tani për tani. 1692 01:09:06,859 --> 01:09:08,630 Dhe çfarë është implikimi pastaj? 1693 01:09:08,630 --> 01:09:13,640 E pra, në qoftë se përgjigja është e ndarë 1 nga 10 e barabartë me 0,1, çfarë 1694 01:09:13,640 --> 01:09:15,680 kompjuteri do të bëjë është që unë nuk kam asnjë ide se si për të 1695 01:09:15,680 --> 01:09:19,270 përfaqësojnë 0,1, sepse kjo është një vlerë lundrues pikë nuk, një 1696 01:09:19,270 --> 01:09:21,910 integer, por do të pres jashtë gjithçka pas 1697 01:09:21,910 --> 01:09:27,470 Pika decimale dhe vetëm ju tregojnë 0 në fillim. 1698 01:09:27,470 --> 01:09:29,540 Dhe fakti se ajo është shtypjen si një pikë lundrues 1699 01:09:29,540 --> 01:09:31,200 vlerë, kjo është vetëm një gjë estetike. 1700 01:09:31,200 --> 01:09:34,279 Kjo është për shkak se unë jam detyruar kompjuter për të shkruar këtë si një 1701 01:09:34,279 --> 01:09:35,229 lundrues vlerë pikë. 1702 01:09:35,229 --> 01:09:37,720 Dhe me të vërtetë unë kam shpallur atë si një float, por është matematikë 1703 01:09:37,720 --> 01:09:39,010 ndodh gjatë këtu. 1704 01:09:39,010 --> 01:09:41,859 >> Pra më lejoni të vërtetë rregullojmë këtë në një mënyrë mjaft të lehtë. 1705 01:09:41,859 --> 01:09:45,250 Pse nuk mundem të bëjë vetëm 10,0 dhe 1,0, edhe pse 1706 01:09:45,250 --> 01:09:47,609 teknikisht unë mund të merrni larg me vetëm duke bërë një nga ato. 1707 01:09:47,609 --> 01:09:50,630 Tani më lejoni të shkoj përpara dhe të bëjë math3. 1708 01:09:50,630 --> 01:09:56,350 Më lejoni të shkojnë përpara dhe tani të drejtuar math3, Enter. 1709 01:09:56,350 --> 01:09:57,500 Dhe tani, oh djali. 1710 01:09:57,500 --> 01:10:00,050 Tani ne kemi një problem të ri krejt. 1711 01:10:00,050 --> 01:10:05,600 Pra, më mirë, e drejtë, ne jemi më afër 0.1, por ajo është e qartë 1712 01:10:05,600 --> 01:10:06,240 gabim këtu? 1713 01:10:06,240 --> 01:10:08,260 Nëse ne kemi qenë të gënjyer për ju për vite me rradhë, e drejtë? 1714 01:10:08,260 --> 01:10:13,660 1 i ndarë nga 10 është në të vërtetë nuk është mjaft 0.1, kështu që çfarë është 1715 01:10:13,660 --> 01:10:14,700 me të vërtetë po ndodh këtu? 1716 01:10:14,700 --> 01:10:16,420 E pra ju mund të lloj arsye nëpërmjet kësaj logjikisht. 1717 01:10:16,420 --> 01:10:19,200 Në qoftë se një kompjuter ka vetëm një sasi e fundme e RAM për të filluar 1718 01:10:19,200 --> 01:10:23,530 me të, dhe në të vërtetë një kompjuter i vetëm është duke përdorur 32 bit për një 1719 01:10:23,530 --> 01:10:26,200 lundrues vlerë pikë, ajo qëndron për arsye se me një 1720 01:10:26,200 --> 01:10:29,870 numër i caktuar i bit, 32 në këtë rast, po, ju mund të 1721 01:10:29,870 --> 01:10:31,050 paraqesin një shumë të gjëra. 1722 01:10:31,050 --> 01:10:33,220 Ajo në fakt është katër miliardë vlera të ndryshme mund të jenë të 1723 01:10:33,220 --> 01:10:38,040 përfaqësuar me 32 bit, 2 të 32, por është ende e fundme. 1724 01:10:38,040 --> 01:10:40,730 Pra, problemi është se ka një numër të pafund të vërtetë 1725 01:10:40,730 --> 01:10:41,370 numra, të drejtë. 1726 01:10:41,370 --> 01:10:43,560 Nëse ju jepni një numër real, unë gjithmonë mund të gjeni ju një 1727 01:10:43,560 --> 01:10:46,080 pak më e madhe, pak më pak, vetëm nga tweaking 1728 01:10:46,080 --> 01:10:47,970 Numrat që janë pas presjes dhjetore. 1729 01:10:47,970 --> 01:10:50,870 Pra, nëse ju nuk keni një numër të pafund të bit, ju 1730 01:10:50,870 --> 01:10:52,940 ndoshta nuk mund të përfaqësojnë një pafund 1731 01:10:52,940 --> 01:10:54,800 Numri i numrave reale. 1732 01:10:54,800 --> 01:10:58,090 >> Pra, nuk është kjo pasaktësi e natyrshme në kompjuterë, dhe 1733 01:10:58,090 --> 01:11:00,930 kjo merr morën gjatë gjithë kohës edhe në thjeshtë e 1734 01:11:00,930 --> 01:11:02,260 Programet e pëlqejnë këtë. 1735 01:11:02,260 --> 01:11:05,640 Por edhe në disa probleme shumë të vërteta të botës si. 1736 01:11:05,640 --> 01:11:07,790 Në fakt, le të marrin një moment për të vetëm të marrin një vështrim në 1737 01:11:07,790 --> 01:11:09,530 diçka që në të vërtetë ka ndodhur në realitet. 1738 01:11:09,530 --> 01:11:11,620 Ne do të shikojnë vetëm nja dy minuta e parë, dhe pastaj 1739 01:11:11,620 --> 01:11:13,270 ne do të postoni online link. 1740 01:11:13,270 --> 01:11:16,700 Por kjo është besëlidhja që vetëm ajo mund të shkojnë keq, shumë 1741 01:11:16,700 --> 01:11:19,680 sinqerisht, në një mënyrë shumë tragjike, kur këto gjëra nuk janë 1742 01:11:19,680 --> 01:11:23,870 vlerësuar ose vetëm ne njerëzit bëjnë gabime kur është fjala për 1743 01:11:23,870 --> 01:11:26,792 këto lloje të dhënat e zbatimit të kompjuterëve modern. 1744 01:11:26,792 --> 01:11:27,284 >> [Duke luajtur VIDEO] 1745 01:11:27,284 --> 01:11:30,730 -Ne tani kthehet në fatkeqësi inxhinierike në mrekulli Moderne. 1746 01:11:30,730 --> 01:11:32,200 Kompjuter. 1747 01:11:32,200 --> 01:11:34,920 Ne kemi ardhur për të pranuar të gjitha problemet shpesh frustruese 1748 01:11:34,920 --> 01:11:36,750 që shkojnë me ta. 1749 01:11:36,750 --> 01:11:40,690 Bugs, viruset, dhe glitches software janë çmime të vogla në 1750 01:11:40,690 --> 01:11:42,550 paguajnë për lehtësi. 1751 01:11:42,550 --> 01:11:45,170 Por në të lartë ushtarake të teknologjisë së lartë dhe me shpejtësi dhe hapësirë 1752 01:11:45,170 --> 01:11:48,450 aplikacionet e programit, problemi më i vogël mund të jetë 1753 01:11:48,450 --> 01:11:52,220 zmadhuar në fatkeqësi. 1754 01:11:52,220 --> 01:11:56,780 Më 4 qershor 1996, shkencëtarët të përgatitur për të nisur një pa pilot 1755 01:11:56,780 --> 01:11:58,430 Ariane 5 raketa. 1756 01:11:58,430 --> 01:12:00,750 Ajo mbante satelitë shkencore të dizajnuara për 1757 01:12:00,750 --> 01:12:03,580 vendosë saktësisht se si fusha magnetike e tokës 1758 01:12:03,580 --> 01:12:06,900 ndërvepron me erërat diellore. 1759 01:12:06,900 --> 01:12:10,330 Raketa u ndërtua për Agjencinë Hapësinore Evropiane dhe 1760 01:12:10,330 --> 01:12:13,450 hiqet nga jashtë objektit të tij në bregdetin e Francës Guajana. 1761 01:12:13,450 --> 01:12:16,970 >> -Në rreth rreth 37 sekonda në fluturimin, ata së pari 1762 01:12:16,970 --> 01:12:19,700 diçka e re po ndodhte gabuar, që ishin nozzles 1763 01:12:19,700 --> 01:12:21,590 swiveling në një mënyrë që ata me të vërtetë nuk duhet. 1764 01:12:21,590 --> 01:12:25,020 Rreth 40 sekonda në fluturimin, në mënyrë të qartë e automjeteve 1765 01:12:25,020 --> 01:12:27,340 ishte në telashe, dhe kjo është kur ata e mori vendimin për 1766 01:12:27,340 --> 01:12:28,136 shkatërrojë atë. 1767 01:12:28,136 --> 01:12:31,450 Një oficer i sigurisë varg me guxim të jashtëzakonshme presion 1768 01:12:31,450 --> 01:12:34,160 button, shpërtheu raketa para se të mund të bëhet një 1769 01:12:34,160 --> 01:12:37,470 rrezik për sigurinë publike. 1770 01:12:37,470 --> 01:12:40,750 >> -Ky ishte udhëtimi i vajzërisë Ariane 5, dhe e saj 1771 01:12:40,750 --> 01:12:43,990 Shkatërrimi u zhvillua për shkak të një krisje të ngulitura në 1772 01:12:43,990 --> 01:12:45,480 software Rocket së. 1773 01:12:45,480 --> 01:12:47,660 >> -Problemi në Ariane ishte se ka pasur një numër që 1774 01:12:47,660 --> 01:12:51,245 kërkon 64 bit për të shprehur dhe ata donin ta kthyer atë 1775 01:12:51,245 --> 01:12:53,010 tek një numër 16 bit. 1776 01:12:53,010 --> 01:12:54,900 Ata supozohet se numri nuk ishte 1777 01:12:54,900 --> 01:12:56,280 do të jetë shumë i madh, 1778 01:12:56,280 --> 01:12:59,920 se shumica e këtyre shifrave në numrin e bit 64 ishin 0s. 1779 01:12:59,920 --> 01:13:01,860 Ata ishin të gabuara. 1780 01:13:01,860 --> 01:13:04,550 >> -Paaftësia e një program software për të pranuar 1781 01:13:04,550 --> 01:13:07,730 lloj i numrit të krijuara nga një tjetër ishte në rrënjë të 1782 01:13:07,730 --> 01:13:08,930 dështim. 1783 01:13:08,930 --> 01:13:11,490 Software zhvillimit kishte bërë një pjesë shumë e kushtueshme e 1784 01:13:11,490 --> 01:13:13,280 teknologji e re. 1785 01:13:13,280 --> 01:13:16,530 E 4 rocket Ariane kishte qenë shumë i suksesshëm. 1786 01:13:16,530 --> 01:13:19,100 Pra, shumë prej programeve të krijuar për të është përdorur edhe 1787 01:13:19,100 --> 01:13:21,050 në Ariane 5. 1788 01:13:21,050 --> 01:13:25,530 >> -Problemi themelor ishte se Ariane 5 ka qenë i shpejtë, 1789 01:13:25,530 --> 01:13:27,280 përshpejtuar të shpejtë. 1790 01:13:27,280 --> 01:13:30,590 Dhe software nuk e kishte llogaritur për këtë. 1791 01:13:30,590 --> 01:13:33,060 >> -Shkatërrimi i raketave ishte një i madh financiar 1792 01:13:33,060 --> 01:13:37,670 fatkeqësi, të gjitha për shkak të një gabimi software minutë. 1793 01:13:37,670 --> 01:13:40,750 Por kjo nuk ishte hera e parë konvertimit probleme dhënat pasur 1794 01:13:40,750 --> 01:13:43,680 rrënuar teknologji moderne raketash. 1795 01:13:43,680 --> 01:13:44,390 >> DAVID Malan: Ne do të lënë atë në atë. 1796 01:13:44,390 --> 01:13:46,870 Por kjo është testament për të vetëm se sa zbatohen edhe disa nga 1797 01:13:46,870 --> 01:13:48,750 këto detaje të ulët nivelin që ne kemi filluar të 1798 01:13:48,750 --> 01:13:50,040 shqyrtuar sot janë. 1799 01:13:50,040 --> 01:13:52,510 Pra, edhe si ju merrni pak të hutuar ndoshta nga disa 1800 01:13:52,510 --> 01:13:55,240 Sintaksa dhe arcaneness këtu, të kuptojë se mbi 1801 01:13:55,240 --> 01:13:57,690 termi ne do të fokusohet vetëm në mënyrën se si zbatohet kjo është për 1802 01:13:57,690 --> 01:13:59,530 botëve përtej CS. 1803 01:13:59,530 --> 01:14:00,780 Ne do të shohim se të mërkurën.