1 00:00:00,000 --> 00:00:15,059 >> [MUSIC Duke luajtur] 2 00:00:15,059 --> 00:00:19,170 >> Kjo është CS50-- Harvard Futja universitetit 3 00:00:19,170 --> 00:00:22,070 me intelektuale ndërmarrjet e shkencave kompjuterike 4 00:00:22,070 --> 00:00:23,800 dhe artin e programimit. 5 00:00:23,800 --> 00:00:27,020 Dhe emri im është David Malan, dhe Unë kam qenë vetëm duke menduar këtë mëngjes, 6 00:00:27,020 --> 00:00:33,120 kjo është amazingly 20 vjet sot që unë e kaluar u ul ku ju djema bëni tani. 7 00:00:33,120 --> 00:00:33,840 >> Ajo ishte 1996. 8 00:00:33,840 --> 00:00:37,550 Unë kam qenë një i paedukuar mjaft, dhe unë isha duke marrë CS50 për herë të parë. 9 00:00:37,550 --> 00:00:40,890 Dhe unë nuk e kishte marrë edhe deri nervore për të marrë atë vetë vit fillestar, 10 00:00:40,890 --> 00:00:42,500 pjesërisht për shkak të kohës. 11 00:00:42,500 --> 00:00:44,782 shkenca kompjuterike për mua është lloj i pëlqen, meh. 12 00:00:44,782 --> 00:00:46,990 Unë kam qenë pak e një geek në rritje up, por nuk e kam me të vërtetë 13 00:00:46,990 --> 00:00:49,180 kanë ndonjë intelektual interes në atë që u shfaq 14 00:00:49,180 --> 00:00:51,920 të jetë vetëm një bandë e tërë e njerëzit e programimit të gjithë kohën. 15 00:00:51,920 --> 00:00:53,904 >> Dhe unë u frikësuar që të jetë i sinqertë. 16 00:00:53,904 --> 00:00:56,820 Kursi dhe kompjuter shkenca më shumë në përgjithësi ka pasur dhe në një farë mase, 17 00:00:56,820 --> 00:01:01,230 ende ka këtë reputacionin e një fushe për kini kujdes, në qoftë se vetëm për shkak se kaq shumë prej nesh 18 00:01:01,230 --> 00:01:04,410 janë të panjohura me të dhe të sigurtë për të. 19 00:01:04,410 --> 00:01:08,480 Dhe me të vërtetë nuk ishte deri sa unë shopped kjo klasë që i paedukuar mjaft fall-- 20 00:01:08,480 --> 00:01:10,880 dhe madje edhe atëherë, I regjistruar vetëm sepse professor-- 21 00:01:10,880 --> 00:01:13,950 një nga mentorëve të mi të parë, Brian Kernighan tani në Princeton-- 22 00:01:13,950 --> 00:01:15,700 lejohet mua për të marrë të kalojë klasës dështojnë. 23 00:01:15,700 --> 00:01:18,020 Dhe me të vërtetë, kjo është arsyeja pse sot ne lejojnë dhe inkurajojnë 24 00:01:18,020 --> 00:01:20,030 studentët për të marrë këtë klasë ul / unsat. 25 00:01:20,030 --> 00:01:22,040 >> Dhe vetëm atëherë, nga fundi i semestrit 26 00:01:22,040 --> 00:01:24,870 nuk e kuptoj si, wow, kjo nuk ka qenë një fushë të tillë të panjohur. 27 00:01:24,870 --> 00:01:26,850 Në të vërtetë, kjo ishte një shumë fuqizimin fushë, 28 00:01:26,850 --> 00:01:28,970 dhe më shumë excitingly, sidomos më vonë, 29 00:01:28,970 --> 00:01:32,809 ashtu siç ia kam kurse në Arts Dramatike 101 dhe latine A 30 00:01:32,809 --> 00:01:34,600 dhe pastaj në fund arkeologjia shkollë grad, 31 00:01:34,600 --> 00:01:37,860 nuk kam me të vërtetë të fillojë për të parë kryqëzimet e kësaj fushë, kompjuter 32 00:01:37,860 --> 00:01:41,979 shkenca, me humane, shkencat natyrore, artet, mjekësi, 33 00:01:41,979 --> 00:01:42,520 dhe si. 34 00:01:42,520 --> 00:01:44,420 Dhe kështu kjo është ajo që është vetëm në mënyrë të zoti për shkenca kompjuterike 35 00:01:44,420 --> 00:01:46,930 në fund të fundit, si ne shpresojmë se ju do të see-- është zbatueshmëria e saj 36 00:01:46,930 --> 00:01:50,280 në këto fusha të tjera, dhe se si ju mund të marrë disa sotme dhe semestri-së 37 00:01:50,280 --> 00:01:53,070 idetë dhe aftësitë praktike përsëri në domenin tuaj, 38 00:01:53,070 --> 00:01:58,200 dhe në fakt të eksplorojnë këtë ndërprerje i arteve liberale dhe shkencat. 39 00:01:58,200 --> 00:02:02,690 >> Pra, 73% prej jush, në qoftë se kaluar vit është ndonjë shenjë, 40 00:02:02,690 --> 00:02:04,390 asnjëherë nuk kanë marrë një kurs CS para. 41 00:02:04,390 --> 00:02:06,389 Pra, nëse, si unë, ju jeni ndjenja pak 42 00:02:06,389 --> 00:02:09,190 frikësuar, apo sinqerisht ju nuk jeni të vërtetë të sigurtë se pse ju jeni edhe këtu. 43 00:02:09,190 --> 00:02:11,510 Ndoshta ju vetëm ndjekur disa miqtë e mbi të Sanders tani. 44 00:02:11,510 --> 00:02:12,490 Kjo është krejtësisht në rregull. 45 00:02:12,490 --> 00:02:15,059 Qëllimi këtu është që të lidh ju dhe për të siguruar të 46 00:02:15,059 --> 00:02:17,100 se në qoftë se ju do të shikoni për të majtë dhe në të djathtë, 47 00:02:17,100 --> 00:02:21,480 ju jeni duke shkuar për të parë shokët e klasës me sa pak apo sa shumë përvojë 48 00:02:21,480 --> 00:02:22,890 që ju vetë mund të ketë. 49 00:02:22,890 --> 00:02:25,280 Dhe me të vërtetë, ne do të ndajnë disa statistika sot më vonë 50 00:02:25,280 --> 00:02:28,120 për çfarë demografia e klasa tipike të duken si. 51 00:02:28,120 --> 00:02:31,440 >> Dhe si shtuar reassurance-- dhe këtë ne do të thotë që kam marrë gjatë 52 00:02:31,440 --> 00:02:33,252 Disa vite ago-- në Syllabusi kursit të 53 00:02:33,252 --> 00:02:35,460 është this-- se ajo që në fund të fundit çështje në këtë kurs 54 00:02:35,460 --> 00:02:38,040 nuk është aq shumë ku ju deri në fund deri në lidhje me shokët e klasës tuaj, 55 00:02:38,040 --> 00:02:43,110 por ku në javën e 11, fundi i semester, përfundojnë në krahasim me veten 56 00:02:43,110 --> 00:02:46,280 në javë 0, që është ku jemi sot këtu. 57 00:02:46,280 --> 00:02:48,704 Dhe kjo është ajo që e kuptova të gjitha ato vite më parë. 58 00:02:48,704 --> 00:02:50,620 Dhe unë e di shumë Klasat e them këtë, por është e 59 00:02:50,620 --> 00:02:52,450 veçanërisht e vërtetë në shkenca kompjuterike. 60 00:02:52,450 --> 00:02:55,320 Ne fund te ditës, kjo fushë është e panjohur si ajo ishte për mua 61 00:02:55,320 --> 00:02:58,590 dhe mund të jetë për ju, është me të vërtetë vetëm për zgjidhjen e problemeve. 62 00:02:58,590 --> 00:03:01,324 Dhe si e tillë, ajo e ka këtë zbatueshmëria për të marrë fusha të tjera. 63 00:03:01,324 --> 00:03:03,490 Dhe në fakt, nëse kemi provuar të gjej se çfarë do të thotë kjo, 64 00:03:03,490 --> 00:03:06,897 kjo është zgjidhja e problemeve në thelbin e saj, unë guxoj të them. 65 00:03:06,897 --> 00:03:09,480 Ka input-- kështu që çdo gjë është është se ju jeni duke u përpjekur për të zgjidhur. 66 00:03:09,480 --> 00:03:12,264 Ka prodhimi, e cila është shpresë zgjidhje për këtë problem. 67 00:03:12,264 --> 00:03:14,180 Dhe pastaj, si ne do të thonë në shkenca kompjuterike, 68 00:03:14,180 --> 00:03:17,310 ka kjo kuti e zezë në mesme që ju nuk domosdoshmërisht 69 00:03:17,310 --> 00:03:19,450 duhet të kujdesen për mënyrën se si funksionon. 70 00:03:19,450 --> 00:03:22,230 Ju vetë përfundimisht fuqinë zbatojë atë që është brenda asaj kutie. 71 00:03:22,230 --> 00:03:25,194 Por, për qëllimet e sotme e më shumë në përgjithësi në jetë, të gjithë ju intereson 72 00:03:25,194 --> 00:03:26,610 është se këto probleme të zgjidhen. 73 00:03:26,610 --> 00:03:29,340 >> Dhe ajo që ky kurs është në fund të fundit për të është eksploruar 74 00:03:29,340 --> 00:03:31,700 kryqëzimin e këto hyrjet dhe daljet, 75 00:03:31,700 --> 00:03:34,410 dhe këto të ashtuquajturat Algoritmet, si ne do të shohim së shpejti, 76 00:03:34,410 --> 00:03:37,450 që të zbatojë atë që është e nën atje, individualitet. 77 00:03:37,450 --> 00:03:40,487 Por këto inputet dhe këto outputs-- çfarë do të vërtetë do të thotë? 78 00:03:40,487 --> 00:03:43,570 E pra, në fund të ditës, ne kemi nevojë ndonjë mënyrë të përfaqësojnë informacion. 79 00:03:43,570 --> 00:03:46,660 Kjo është veçanërisht e vërtetë në një kompjuter, e cila si dashuroj dhe komplekse si ajo 80 00:03:46,660 --> 00:03:48,160 mund të duket, është një pajisje shumë e memec. 81 00:03:48,160 --> 00:03:52,240 Ajo merr electricity-- qoftë nga një kabëll ose një bateri si input-- 82 00:03:52,240 --> 00:03:55,820 dhe pastaj ajo prodhon disa Përgjigjet preprogramed në ekran. 83 00:03:55,820 --> 00:03:57,970 >> Por si nuk kemi marrë nga të fillojë për të përfunduar atje? 84 00:03:57,970 --> 00:03:59,470 E pra, çfarë është një problem për t'u zgjidhur? 85 00:03:59,470 --> 00:04:01,050 E pra, ndoshta ne mund të, në fillimi i çdo semestër, 86 00:04:01,050 --> 00:04:02,841 të përpiqet të marrë frekuentimin në një dhomë si kjo. 87 00:04:02,841 --> 00:04:04,750 Kështu që unë mund të bëjë si një, dy, tre. 88 00:04:04,750 --> 00:04:07,060 Ose ndoshta, në qoftë se unë e bëri atë për të lloj të mbajtur nën kontroll 89 00:04:07,060 --> 00:04:10,560 e myself-- të mbajnë gjurmët e things-- Unë mund të shpejt të drejtuar nga gishtat. 90 00:04:10,560 --> 00:04:14,650 Kështu që unë vetëm mund të hash një marks-- personi, dy, tre, katër, pesë, gjashtë, 91 00:04:14,650 --> 00:04:15,431 shtatë, tetë. 92 00:04:15,431 --> 00:04:17,930 Dhe të gjithë ne kemi ndoshta bërë këtë, qoftë në duart tuaja 93 00:04:17,930 --> 00:04:19,680 ose në një copë letër. 94 00:04:19,680 --> 00:04:22,140 Dhe kjo është në fakt vetëm diçka që quhet notation-- unary 95 00:04:22,140 --> 00:04:26,130 ku në qoftë se ju keni vetëm një letër në alfabetit tuaj, një ose hash 96 00:04:26,130 --> 00:04:29,440 shenjë në këtë rast, për çdo input ju doni për të numëruar, 97 00:04:29,440 --> 00:04:32,330 ju duhet të vënë poshtë një nga këto letters-- një nga këto shenja. 98 00:04:32,330 --> 00:04:32,510 >> Në rregull. 99 00:04:32,510 --> 00:04:34,790 Kjo është e gjitha mirë dhe të mirë dhe jo të gjithë se e komplikuar. 100 00:04:34,790 --> 00:04:37,800 Por kompjutera nuk janë të gjithë se shumë më e komplikuar. 101 00:04:37,800 --> 00:04:40,770 Në të vërtetë, shumica prej jush ndoshta e di edhe nëse ju nuk e keni me të vërtetë 102 00:04:40,770 --> 00:04:44,080 konsiderohet se çfarë do të thotë kjo, se kompjuterat e kuptojnë vetëm zero 103 00:04:44,080 --> 00:04:45,870 dhe ones-- të ashtuquajturin sistemin binar. 104 00:04:45,870 --> 00:04:49,390 Ne njerëzit, nga ana tjetër, janë aq shumë më të sofistikuara për aq 105 00:04:49,390 --> 00:04:51,770 si ne e kuptojmë zero nëpërmjet numër nëntë. 106 00:04:51,770 --> 00:04:55,740 >> Por edhe në qoftë se është binar, në fillim shikim, jo ​​të gjithë që të njohur, 107 00:04:55,740 --> 00:05:00,330 kjo rezulton se është ashtu si sistemet dhe idetë që ne tashmë e dimë. 108 00:05:00,330 --> 00:05:02,420 Kështu për shembull, e konsiderojnë këtë. 109 00:05:02,420 --> 00:05:03,896 Kjo është vetëm një sekuencë e simboleve. 110 00:05:03,896 --> 00:05:05,770 Dhe të gjithë ju, kur glancing në atë, ndoshta 111 00:05:05,770 --> 00:05:09,380 mendoj 123-- asgjë me të vërtetë interesante atje. 112 00:05:09,380 --> 00:05:11,940 Por, pse është ky numër, 123? 113 00:05:11,940 --> 00:05:14,440 Këto janë vetëm glyphs në screen-- vetëm modelet 114 00:05:14,440 --> 00:05:16,387 që dikush mund të ketë tërhequr ose të shtypur. 115 00:05:16,387 --> 00:05:18,970 Por në qoftë se ju jeni si unë, ju ndoshta kujtoni nga klasën e shkollës 116 00:05:18,970 --> 00:05:21,610 se ka lloj kolona apo vende këtu. 117 00:05:21,610 --> 00:05:25,340 Ka vend të dikujt dhe vendi i dhjetë për dhe vendin e njëqind së. 118 00:05:25,340 --> 00:05:29,820 Dhe arsyeja që kjo është 123 dhe jo vetëm një model i tre simboleve 119 00:05:29,820 --> 00:05:33,090 është për shkak se, natyrisht, në qoftë se ne kanë një një në radhën e qindësheve, 120 00:05:33,090 --> 00:05:36,610 ju bëni matematikë e 100 herë një, dhe pastaj të dy në vend të të dhjetëve. 121 00:05:36,610 --> 00:05:41,390 Pra, kjo është 10 herë 2, dhe pastaj tre në Vendi i dikujt dhe kjo është 1 herë 3. 122 00:05:41,390 --> 00:05:45,670 Dhe kur ju të shtoni të gjithë ata lart, të Sigurisht, ju merrni 100 plus 20 plus 3. 123 00:05:45,670 --> 00:05:48,220 >> Pra, kemi filluar me vetëm një model e symbols-- një alphabet-- 124 00:05:48,220 --> 00:05:51,670 por pastaj ne plotësisht kuptimin onto ajo me anë të këtyre kolona. 125 00:05:51,670 --> 00:05:54,450 E pra, ajo rezulton se kompjuterët nuk janë me të vërtetë 126 00:05:54,450 --> 00:05:56,300 të gjitha që të ndryshme nga ju dhe mua. 127 00:05:56,300 --> 00:06:01,840 Por, në vend të përdorimit kompetencat e 10, në mënyrë të speak-- 1, 10, 100, 1000, 128 00:06:01,840 --> 00:06:04,330 10.000 vendi dhe kështu me forth-- ata në fakt 129 00:06:04,330 --> 00:06:08,930 vetëm përdorin kompetencat e 2-- kështu një, 2, 4, dhe pastaj 130 00:06:08,930 --> 00:06:12,810 në qoftë se ne kemi vënë më shumë shifra, 8, 16, 32, 64, 128, e kështu me radhë. 131 00:06:12,810 --> 00:06:16,050 Dhe kështu kjo është se si një kompjuter do të përfaqësojnë numrin 0, 132 00:06:16,050 --> 00:06:17,300 ashtu si ne njerëzit. 133 00:06:17,300 --> 00:06:21,660 >> 0, 0, 0-- dhe ju ndoshta mund të mendoj çfarë modeli i zero dhe ato, 134 00:06:21,660 --> 00:06:24,610 në qoftë se një kompjuter mund vetëm flasin 0 ose 1-- çfarë 135 00:06:24,610 --> 00:06:29,110 model do të përfaqësojë se numri ne njerëzit e dinë si 1? 136 00:06:29,110 --> 00:06:30,590 Yeah-- 0, 0, 1. 137 00:06:30,590 --> 00:06:31,090 Në rregull. 138 00:06:31,090 --> 00:06:35,900 Pra 0, 0, 1 është se si ne përfaqësojmë 1, kështu që ju mund të jenë të prirur atëherë 139 00:06:35,900 --> 00:06:39,510 të përfaqësojnë numrin 2, në qoftë se ju keni Vendi Katër-së dhe vendi të dy së 140 00:06:39,510 --> 00:06:48,290 si një vend, ju mund të thoni, mirë, në qoftë se kemi pasur një 1 në vend të dikujt, 141 00:06:48,290 --> 00:06:50,430 dhe tani ne duam të numëruar deri në 2, ju mund të 142 00:06:50,430 --> 00:06:53,310 bëni këtë dhe të lënë që kjo të jetë një zero. 143 00:06:53,310 --> 00:06:56,397 Por sigurisht kjo nuk është se si sistemi decimal punon ose. 144 00:06:56,397 --> 00:06:58,230 Nëse ju vendosni një shifër në të dy këto kolona, 145 00:06:58,230 --> 00:06:59,563 ju keni marrë për të bërë aritmetikë. 146 00:06:59,563 --> 00:07:01,930 Pra, çfarë numri nuk kam aksidentalisht vetëm përfaqësojnë? 147 00:07:01,930 --> 00:07:06,710 >> Pra, kjo është 3, sepse 2 herë 1 plus 1 herë 1, natyrisht, na jep tre. 148 00:07:06,710 --> 00:07:08,340 Pra, kjo do të jetë dy. 149 00:07:08,340 --> 00:07:12,730 Pak lloj flips, si të thuash, si 0 të bëhet një, ashtu si një 9 role mbi 150 00:07:12,730 --> 00:07:14,840 dhe bëhet 0 kur mbani 1. 151 00:07:14,840 --> 00:07:16,510 Kjo pastaj do të jetë tre natyrisht. 152 00:07:16,510 --> 00:07:20,170 Four-- një tjetër gjë interesante ndodh, ku ata rrokulliset mbi 153 00:07:20,170 --> 00:07:21,750 dhe ju mbajnë 1, kështu që të flasin. 154 00:07:21,750 --> 00:07:23,320 Kështu që kjo, natyrisht, është 4. 155 00:07:23,320 --> 00:07:25,160 >> Por nëse ju përpara të shpejtë tani, çfarë është numri më i madh do 156 00:07:25,160 --> 00:07:26,660 të jetë që një kompjuter mund të përfaqësojë? 157 00:07:26,660 --> 00:07:30,420 158 00:07:30,420 --> 00:07:32,380 Pra, kjo është vetëm shtatë në këtë rast, apo jo? 159 00:07:32,380 --> 00:07:35,570 Sepse ju keni një një në katër, një në dy, një në një. 160 00:07:35,570 --> 00:07:36,900 Pra, kjo është 4 plus 2 plus 1. 161 00:07:36,900 --> 00:07:37,972 Kështu që ju jep shtatë. 162 00:07:37,972 --> 00:07:39,680 Dhe me të vërtetë, ajo do të duket në shikim të parë 163 00:07:39,680 --> 00:07:43,750 se kompjuterat mund të llogarisë jo më të larta se sa kjo. 164 00:07:43,750 --> 00:07:45,210 >> Por kjo sigurisht nuk është e vërtetë. 165 00:07:45,210 --> 00:07:48,243 Çfarë bëjmë ne njerëzit, kur ne duam për të numëruar më e lartë se si 999? 166 00:07:48,243 --> 00:07:51,000 167 00:07:51,000 --> 00:07:53,900 Vetëm mbajnë një të tillë dhe vetëm shtoni një shifër e katërt në të majtë. 168 00:07:53,900 --> 00:07:55,070 Dhe kështu në të vërtetë ne mund. 169 00:07:55,070 --> 00:07:57,900 Ne mund të kemi një tetë-së vendin dhe vendin e një 16-së, 170 00:07:57,900 --> 00:08:02,000 dhe vendi i një 32-së, 64, dhe ju 128-- vetëm mund të mbajë në deri në pafundësi. 171 00:08:02,000 --> 00:08:04,640 Kështu këto zero dhe ones-- e ashtuquajtura system-- binary 172 00:08:04,640 --> 00:08:10,290 janë ato që një shkencëtar kompjuteri do në përgjithësi e quajnë pak, ose shifra binar. 173 00:08:10,290 --> 00:08:13,590 >> Por tani, si nuk kemi marrë nga Koncepti ose grafika e këtyre gjërave 174 00:08:13,590 --> 00:08:14,620 për një kompjuter të vërtetë? 175 00:08:14,620 --> 00:08:17,170 Ne duket se skipping një hap këtu. 176 00:08:17,170 --> 00:08:20,210 E pra, vetëm input në fund e ditës, për laptop tim këtu 177 00:08:20,210 --> 00:08:22,060 është kjo rrjedha e energjisë elektrike. 178 00:08:22,060 --> 00:08:24,560 Edhe në qoftë se kjo është një kohë të gjatë Koha që keni menduar për 179 00:08:24,560 --> 00:08:26,580 ose kurrë nuk menduan për si energji elektrike punon, 180 00:08:26,580 --> 00:08:30,909 ka elektronet rrjedhin ose jashtë, dhe kjo është lloj ime e input. 181 00:08:30,909 --> 00:08:34,659 >> Pra, nëse kjo është e gjitha që ne jemi duke marrë si të dhëna këtu, 182 00:08:34,659 --> 00:08:36,830 çfarë mund të bëjmë me këtë informacion? 183 00:08:36,830 --> 00:08:40,040 E pra, ne mund të mendojnë për një zero si vetëm një mungesë të energjisë elektrike. 184 00:08:40,040 --> 00:08:42,540 Asgjë nuk është flowinw, asgjë nuk është lëviz, asgjë nuk po ndodh. 185 00:08:42,540 --> 00:08:44,690 Kjo është vetëm default state-- zero. 186 00:08:44,690 --> 00:08:48,200 Por nëse nuk ka energji elektrike rrjedh, pse jo ne vetëm në mënyrë arbitrare, por globalisht 187 00:08:48,200 --> 00:08:50,250 vazhdimisht, e quajnë atë një të. 188 00:08:50,250 --> 00:08:54,760 >> Pra, thjesht duke pasur asnjë pushtet, ne kemi një zero, po pushtet, 189 00:08:54,760 --> 00:08:57,520 ne kemi një one-- pa pushtet, po pushtet. 190 00:08:57,520 --> 00:09:01,520 Dhe në këtë mënyrë, duke përdorur diçka më shumë fizike ose elektronike 191 00:09:01,520 --> 00:09:05,340 ne fillojmë për të zbatuar këtë nocion të diçka ose duke qenë një ose një zero. 192 00:09:05,340 --> 00:09:07,230 Në të vërtetë, ne mund vetëm të bëjë atë mbi këtu. 193 00:09:07,230 --> 00:09:10,590 Kështu që këtu, unë kam jo tre, por tetë llamba, secila prej të cilave 194 00:09:10,590 --> 00:09:11,810 ka kaloni vet. 195 00:09:11,810 --> 00:09:15,760 >> Dhe kështu që nëse kam kërkuar për të përfaqësuar numri shtatë këtu, 196 00:09:15,760 --> 00:09:18,510 Unë mund të kthehet në këto tre llamba. 197 00:09:18,510 --> 00:09:21,470 Dhe me të vërtetë, brenda kompjuteri im është miliona, 198 00:09:21,470 --> 00:09:25,650 miliarda gjërave që janë vetëm më e vogël se kaq, të quajtur transistorëve, 199 00:09:25,650 --> 00:09:27,330 çelsin, që ju vetëm të kthehet në dhe jashtë. 200 00:09:27,330 --> 00:09:30,420 Pra, këto janë relativisht të big-- çelsin big-- brenda laptop-- tim 201 00:09:30,420 --> 00:09:32,150 shumë, shumë, shumë, shumë çelsin më shumë. 202 00:09:32,150 --> 00:09:35,160 Por të gjithë ata bëjnë është pikërisht that-- kthehet diçka në, të kthehet off diçka. 203 00:09:35,160 --> 00:09:38,076 Dhe si të tillë, një kompjuter mund të përfaqësojë, me ato miliona apo miliarda 204 00:09:38,076 --> 00:09:40,480 e transistorëve, shumë dhe shumë zero dhe ato. 205 00:09:40,480 --> 00:09:43,160 Dhe nuk ka pajisje të tjera ende se ju lejon të ruani të informacionit afatgjatë, 206 00:09:43,160 --> 00:09:45,243 kështu që kur ju tërheq plug, ju nuk do ta humbasin atë. 207 00:09:45,243 --> 00:09:46,900 Por kjo është një histori për një ditë tjetër. 208 00:09:46,900 --> 00:09:51,170 >> Pra, çfarë mund të bëjmë me këto copa? 209 00:09:51,170 --> 00:09:54,309 Mund ne vetëm për të marrë presioni off e me-- 210 00:09:54,309 --> 00:09:56,600 mund dikush duan të vijnë këtu dhe të ofrojnë një demo? 211 00:09:56,600 --> 00:09:57,516 Unë pashë këtë dorë të parë. 212 00:09:57,516 --> 00:09:58,709 Si e ke emrin? 213 00:09:58,709 --> 00:09:59,250 MADAY: MADAY. 214 00:09:59,250 --> 00:10:00,542 DAVID Malan: MADAY, eja up. 215 00:10:00,542 --> 00:10:01,250 Gëzohem që u njohëm. 216 00:10:01,250 --> 00:10:02,390 MADAY: Gëzohem që u njohëm. 217 00:10:02,390 --> 00:10:02,930 >> DAVID Malan: Ejani në këtë mënyrë. 218 00:10:02,930 --> 00:10:04,182 Unë nuk do të duhet të cik ju lart. 219 00:10:04,182 --> 00:10:04,682 Në rregull. 220 00:10:04,682 --> 00:10:11,090 Kështu që këtu, ne kemi, notice-- një, two-- ne do të redaktoni se out-- një, dy, katër, 221 00:10:11,090 --> 00:10:13,350 tetë, 16, 32, 64, 128. 222 00:10:13,350 --> 00:10:14,220 Kjo është e qëllimshme. 223 00:10:14,220 --> 00:10:17,370 Ka tetë bit here-- binary zero digits-- dhe ato. 224 00:10:17,370 --> 00:10:21,460 Dhe pak është një njësi e dobishme e measure-- jo si të dobishme një njësi e masës 225 00:10:21,460 --> 00:10:21,999 mbi veten. 226 00:10:21,999 --> 00:10:24,290 Zakonisht doni të paktën tetë nga këto gjëra, alias 227 00:10:24,290 --> 00:10:24,790 një bajt. 228 00:10:24,790 --> 00:10:26,230 Pra, ne kemi një bajt të bit këtu. 229 00:10:26,230 --> 00:10:31,130 >> Pra, nëse ne të kërkuar për të sfiduar ju me, për shembull, duke përcaktuar, në binar, 230 00:10:31,130 --> 00:10:33,230 kjo vlerë here-- 42. 231 00:10:33,230 --> 00:10:35,140 Dëshironi të marrë një goditje me thikë në këtë? 232 00:10:35,140 --> 00:10:36,034 >> MADAY: [padëgjueshme]. 233 00:10:36,034 --> 00:10:38,700 DAVID Malan: Yeah, vetëm të shtyjë pak çelsin bardhë përpara. 234 00:10:38,700 --> 00:10:41,290 Dhe ju doni për të përcaktuar nga 42, dhe e mundshme 235 00:10:41,290 --> 00:10:44,061 është ky stres CS50 topin në qoftë se ju merrni këtë. 236 00:10:44,061 --> 00:10:44,560 Në rregull. 237 00:10:44,560 --> 00:10:46,420 Kështu që ju duhet 32. 238 00:10:46,420 --> 00:10:48,430 Ne do të duhet 42. 239 00:10:48,430 --> 00:10:51,410 Pra, kjo është një tetë, kështu që kjo është 40. 240 00:10:51,410 --> 00:10:54,160 Dhe bërë excellent-- shumë të bukur. 241 00:10:54,160 --> 00:10:55,186 Faleminderit. 242 00:10:55,186 --> 00:10:58,790 >> [DUARTROKITJE] 243 00:10:58,790 --> 00:10:59,290 Në rregull. 244 00:10:59,290 --> 00:11:00,623 Pra, ne kemi një top shumë të stresit. 245 00:11:00,623 --> 00:11:03,595 Le ta bëjmë këtë edhe një herë në qoftë se ne mund të. 246 00:11:03,595 --> 00:11:05,368 Një vullnetar tjetër? 247 00:11:05,368 --> 00:11:07,970 Top pa pagesë stresi, ball pa stres. 248 00:11:07,970 --> 00:11:08,470 NE RREGULL. 249 00:11:08,470 --> 00:11:11,640 Mbi këtu në mes, nuk ju duan të zbritur? 250 00:11:11,640 --> 00:11:14,100 Në rregull. 251 00:11:14,100 --> 00:11:15,552 E di. 252 00:11:15,552 --> 00:11:16,360 Atje shkojmë. 253 00:11:16,360 --> 00:11:20,818 >> Kështu që numrat here-- vijnë më poshtë. 254 00:11:20,818 --> 00:11:21,567 Si e ke emrin? 255 00:11:21,567 --> 00:11:21,984 >> Davey: Davey. 256 00:11:21,984 --> 00:11:22,820 >> DAVID Malan: Davey. 257 00:11:22,820 --> 00:11:23,320 NE RREGULL. 258 00:11:23,320 --> 00:11:24,810 Eja up, Davey. 259 00:11:24,810 --> 00:11:25,890 Gëzohem që u njohëm. 260 00:11:25,890 --> 00:11:28,639 Dhe ajo që ne do të kemi të spell-- nëse ju mund të zgjatem atje 261 00:11:28,639 --> 00:11:32,810 për vetëm një moment-- është numri 50. 262 00:11:32,810 --> 00:11:36,293 Por, por, por, por, por, këto janë magnet shkollave klasën për një arsye. 263 00:11:36,293 --> 00:11:39,370 264 00:11:39,370 --> 00:11:43,327 Mori vetëm pak më e vështirë, të gjithë të drejtë? 265 00:11:43,327 --> 00:11:44,160 Ka ende tetë. 266 00:11:44,160 --> 00:11:46,820 267 00:11:46,820 --> 00:11:47,320 Në rregull. 268 00:11:47,320 --> 00:11:48,486 Pra, çfarë kemi atje? 269 00:11:48,486 --> 00:11:51,356 Ne kemi 32. 270 00:11:51,356 --> 00:11:54,344 Bukur. 271 00:11:54,344 --> 00:11:58,610 32 plus 16 na jep 48-- në mënyrë të ngushtë. 272 00:11:58,610 --> 00:12:00,390 Dhe e mrekullueshme. 273 00:12:00,390 --> 00:12:02,831 Urime për Davey si. 274 00:12:02,831 --> 00:12:05,720 >> [DUARTROKITJE] 275 00:12:05,720 --> 00:12:06,516 >> Në rregull. 276 00:12:06,516 --> 00:12:09,390 Pra, ne mund të bëjmë këtë të gjithë ditën e gjatë, dhe ajo nuk ka marrë të gjitha që më shumë 277 00:12:09,390 --> 00:12:10,800 interesante dhe më sfiduese. 278 00:12:10,800 --> 00:12:13,250 Por kjo është me të vërtetë point-- është se si relativisht e thjeshtë 279 00:12:13,250 --> 00:12:16,930 është, në fund të ditës, atë që një kompjuter ka për të ruajtur informacione, 280 00:12:16,930 --> 00:12:21,740 për të ruajtur inputeve dhe në fund të fundit ruajtur ose përfaqësojnë këto rezultate. 281 00:12:21,740 --> 00:12:23,750 Por numrat vetëm nuk janë të gjitha që interesante. 282 00:12:23,750 --> 00:12:26,069 >> Pra njerëzit, disa vite më parë, vendosur, ju e dini se çfarë? 283 00:12:26,069 --> 00:12:27,860 Ajo do të jetë mirë në qoftë se kompjuterat nuk ishin vetëm 284 00:12:27,860 --> 00:12:31,030 calculators për aritmetikë operacionet, por në fakt mund të 285 00:12:31,030 --> 00:12:35,209 të bëjë gjëra të tilla si përpunim teksti, ose email, ose incarnations më moderne 286 00:12:35,209 --> 00:12:36,500 këto lloje të teknologjive. 287 00:12:36,500 --> 00:12:40,680 Dhe kështu që bota ka vendosur në mënyrë arbitrare, por universale, 288 00:12:40,680 --> 00:12:44,380 se në qoftë se ju doni të ruajtur kapitalin Letra Një në një kompjuter, ju e dini se çfarë? 289 00:12:44,380 --> 00:12:47,730 Le të vetëm të gjithë janë dakord për të ruajtur disa model i zero dhe ones-- 290 00:12:47,730 --> 00:12:52,422 bits-- se në fund të fundit përfaqëson numrin dhjetore 65. 291 00:12:52,422 --> 00:12:53,630 Ne vetëm do të të gjithë janë dakord me këtë. 292 00:12:53,630 --> 00:12:56,620 >> 66 do të përfaqësojë B, 67 do të përfaqësojë C, 293 00:12:56,620 --> 00:13:00,210 dhe ka bunches e modeleve të tjera të zero dhe ato, ose numrat themelor, 294 00:13:00,210 --> 00:13:02,224 që do të përfaqësojë letra të tjera ende. 295 00:13:02,224 --> 00:13:04,390 Pra, nëse ju lloj i mentalisht absorbuar këtë për një moment, 296 00:13:04,390 --> 00:13:10,900 Unë qëllimisht vënë A me anë të I, ku H a 72 dhe I është 73. 297 00:13:10,900 --> 00:13:15,830 Në qoftë se një kompjuter, atëherë, në kontekstin e një program word processing ose një e-mail, 298 00:13:15,830 --> 00:13:19,620 zbuloi nën kapuç të ketë këto modele të modelit bits-- 299 00:13:19,620 --> 00:13:22,500 i bit përfaqësojnë 72, pastaj 73, pastaj 33-- 300 00:13:22,500 --> 00:13:26,640 çfarë mund të shkruhet kjo në këtë program? 301 00:13:26,640 --> 00:13:28,150 >> Pra hi, dhe pastaj diçka. 302 00:13:28,150 --> 00:13:31,460 Ne nuk domosdoshmërisht e di, por në të vërtetë 33-- jo në tabelë earlier-- 303 00:13:31,460 --> 00:13:33,170 ishte thjesht një pikë thirrje. 304 00:13:33,170 --> 00:13:38,870 Pra, 72 është H, 73 është I, 33 ndodh të jetë një pikë thirrje ende. 305 00:13:38,870 --> 00:13:41,719 Por kjo është e gjitha mirë dhe të mirë, dhe në fakt në ditët e sotme, në vend se 306 00:13:41,719 --> 00:13:43,760 përdorni vetëm shtatë ose tetë bit, në sajë të diçkaje 307 00:13:43,760 --> 00:13:46,530 quajtur Unicode në krahasim për ascii mbrapa në ditë, 308 00:13:46,530 --> 00:13:50,010 ne fakt mund të përfaqësojë edhe më shumë karaktere interesante se vetëm 309 00:13:50,010 --> 00:13:52,980 këto English origjinale njëanshëm letra. 310 00:13:52,980 --> 00:13:56,030 Por ne gjithashtu mund të përfaqësojnë edhe gjëra neater si ngjyra. 311 00:13:56,030 --> 00:13:59,750 >> Nëse ju keni dëgjuar ndonjëherë akronim RGB, e kuqe, jeshile, blu, që 312 00:13:59,750 --> 00:14:03,510 thjesht do të thotë se një kompjuter zakonisht përdor tre grupe të bits-- 313 00:14:03,510 --> 00:14:06,760 disa numri i bit që përfaqësojnë një numër për sa kuqe doni, 314 00:14:06,760 --> 00:14:08,940 një tjetër grup i bit për sa green doni, 315 00:14:08,940 --> 00:14:11,430 dhe një numër tjetër të vendosur për sa blu që ju dëshironi. 316 00:14:11,430 --> 00:14:14,457 Kështu që një numër i madh do të thotë shumë red, numër i vogël do të thotë nuk ka të kuqe. 317 00:14:14,457 --> 00:14:16,290 Dhe kështu këto janë lloj të vlerave të mesme këtu. 318 00:14:16,290 --> 00:14:20,180 >> Pra, më jepni disa të kuqe, më jepni disa gjelbër, dhe më jepni pak blu. 319 00:14:20,180 --> 00:14:24,260 Dhe në qoftë se ju përzierje e këtyre tre hije të ngjyrës së bashku, në këtë rast, 320 00:14:24,260 --> 00:14:26,850 që ju të merrni këtë hije vrazhdë e verdhë ose ngjyrë kafe. 321 00:14:26,850 --> 00:14:32,330 Por model i tetë plus tetë plus eight-- deri 24 bits-- 322 00:14:32,330 --> 00:14:36,550 majta në të djathtë, është si një kompjuter do të prezantojnë atë ngjyrë të veçantë. 323 00:14:36,550 --> 00:14:38,090 Tani kjo është vetëm një pikë në një ekran. 324 00:14:38,090 --> 00:14:42,230 Nëse ju shikoni të vërtetë afër në TV tuaj kompjuter, ju do të shihni pika ose pixels. 325 00:14:42,230 --> 00:14:45,420 Dhe në qoftë se ju keni një rrjet të tërë të pixels, horizontalisht dhe vertikalisht, 326 00:14:45,420 --> 00:14:46,630 ju keni imazhe. 327 00:14:46,630 --> 00:14:49,029 Dhe pastaj nëse ju merrni një imazh dhe pastaj të lajë 328 00:14:49,029 --> 00:14:52,070 sillu një tjetër imazh, një tjetër image, një tjetër imazh, një tjetër imazh, 329 00:14:52,070 --> 00:14:54,760 të vërtetë të shpejtë, ju sigurisht keni filma. 330 00:14:54,760 --> 00:14:56,109 >> Dhe kështu që vini re ku kemi filluar. 331 00:14:56,109 --> 00:14:57,650 Ne kemi filluar me këto zero dhe ato. 332 00:14:57,650 --> 00:15:00,570 Ne kemi punuar nga atje për të decimal numra, si ne përfaqësojnë ata. 333 00:15:00,570 --> 00:15:02,070 Tani ne kemi shkronjat e alfabetit. 334 00:15:02,070 --> 00:15:05,664 Por në kontekste të tjera presin, ne mund të përdorim disa më shumë copa dhe përfaqësojnë ngjyra. 335 00:15:05,664 --> 00:15:07,830 Sa më shpejt që ju keni Aftësia për të përfaqësuar ngjyrat, 336 00:15:07,830 --> 00:15:11,200 ju keni mundësinë për të përfaqësuar fotografi dhe gifs animuar 337 00:15:11,200 --> 00:15:13,780 dhe karaktere të tjera të tilla në ekran. 338 00:15:13,780 --> 00:15:17,160 Dhe kur ju keni një bandë e tërë e images fluturuar nga njeriu në të njëjtën kohë, 339 00:15:17,160 --> 00:15:21,480 kjo duket si filma, dhe kështu që ju të merrni video si. 340 00:15:21,480 --> 00:15:23,460 >> Pra, duke përdorur këto shumë primitives thjeshta bëjmë ne 341 00:15:23,460 --> 00:15:28,070 kanë rrugën e përfaqësuar në fund të fundit të gjitha këto forma të mediave. 342 00:15:28,070 --> 00:15:30,450 Dhe ne kemi përhumbur përsëri dhe përsëri dhe përsëri, deri ne 343 00:15:30,450 --> 00:15:33,467 marrë nga nivelin më të ulët në këtë nivel më të lartë. 344 00:15:33,467 --> 00:15:35,550 Kështu që na jep ky Ideja e përgjithshme e abstraksionit. 345 00:15:35,550 --> 00:15:36,990 Por, kemi filluar këtu. 346 00:15:36,990 --> 00:15:38,790 >> Këtu tani, ne fuqi paraqesin në një kompjuter 347 00:15:38,790 --> 00:15:41,920 inputet tona me zero dhe ato, Rezultatet tona në zero dhe ato, 348 00:15:41,920 --> 00:15:43,640 por ajo që shkon brenda kutisë? 349 00:15:43,640 --> 00:15:46,080 Kjo është ku kompjuter shkenca merr interesante. 350 00:15:46,080 --> 00:15:49,770 Kjo është ajo ku ju mund të vërtetë të sjellë tuaj mendjet e veta të mbajnë për të zgjidhur problemet. 351 00:15:49,770 --> 00:15:52,590 Ne tani mund të përcaktojë, për Pjesa tjetër e semestrit, po. 352 00:15:52,590 --> 00:15:53,870 Unë e di se si punon binare. 353 00:15:53,870 --> 00:15:57,942 Mbaj mend se si ASCII ose Unicode-- hartës për letters-- vepra. 354 00:15:57,942 --> 00:15:59,650 Dhe kjo sigurisht qëndron për arsye se ne 355 00:15:59,650 --> 00:16:03,470 mund të përfaqësojë të kuqe dhe të gjelbër dhe blu, dhe përfaqësojnë multimedia si. 356 00:16:03,470 --> 00:16:05,390 Por kjo është një temë interesante. 357 00:16:05,390 --> 00:16:09,790 Kjo është ajo që e bën dikë të aftë për zgjidhjen e problemeve. 358 00:16:09,790 --> 00:16:11,980 >> Dhe një problem i tillë ne si për të bërë, në të vërtetë, 359 00:16:11,980 --> 00:16:15,345 po pjesëmarrjen, ose bërë këtë algorithmically. 360 00:16:15,345 --> 00:16:16,470 Dhe përsëri, unë mund të bëjë këtë. 361 00:16:16,470 --> 00:16:19,580 Unë mund të bëjë një, dy, tre, katër pesë, gjashtë, shtatë, tetë nëntë. 362 00:16:19,580 --> 00:16:21,520 Dhe unë mund të shkruaj atë poshtë për të mbajtur gjurmët e saj. 363 00:16:21,520 --> 00:16:23,769 Por kjo është vetëm se si unë do të paraqesin informacionin. 364 00:16:23,769 --> 00:16:27,550 Ose unë mund të bëjë këtë faster-- dy, katër, gjashtë, tetë, dhjetë, 12, 14, 16, 18, 20, 365 00:16:27,550 --> 00:16:30,380 22-- ai ndjehet si dy herë sa më shpejtë por është ende 366 00:16:30,380 --> 00:16:32,050 do të marrë një të tërë shumë kohë. 367 00:16:32,050 --> 00:16:35,990 >> Por kjo rezulton, në qoftë se ne levave ende edhe kompjutera resource-- dhe vërtet 368 00:16:35,990 --> 00:16:38,940 këto ditë kanë CPUs të shumëfishta apo trurin. 369 00:16:38,940 --> 00:16:41,970 Ajo rezulton kompjutera mund të bëjë shumë gjëra në të njëjtën kohë, 370 00:16:41,970 --> 00:16:44,460 dhe në të vërtetë ne, në këtë dhomë, mund të paraqesin pikërisht këtë. 371 00:16:44,460 --> 00:16:47,130 >> Pra, kjo është pak e shoqërore vështirë, por në qoftë se ju do të më humor 372 00:16:47,130 --> 00:16:51,550 për vetëm një proces tre-hap, le pyes të gjithë në vend ka vetëm 373 00:16:51,550 --> 00:16:54,640 të ngriteni për një moment. 374 00:16:54,640 --> 00:16:57,380 Ngrihu. 375 00:16:57,380 --> 00:17:01,580 Pra, mendoni për veten, numri one-- kështu që të gjithë në këtë dhomë, 376 00:17:01,580 --> 00:17:05,010 me përjashtim të njerëzve të cilët nuk i kanë detyrojnë, janë duke menduar numër një. 377 00:17:05,010 --> 00:17:06,510 Kështu që është numri juaj tani. 378 00:17:06,510 --> 00:17:09,399 Ky është hapi i parë, ose si një shkencëtar kompjuteri ose një programues 379 00:17:09,399 --> 00:17:11,827 zakonisht do të bëjmë, ne jemi duke shkuar të fillojë numërimi në zero. 380 00:17:11,827 --> 00:17:14,410 Në qoftë se numri më i vogël që mund të përfaqësuar me këto llamba 381 00:17:14,410 --> 00:17:17,410 është zero, thjesht duke lënë ato të gjitha off, unë mund edhe vetëm 382 00:17:17,410 --> 00:17:19,271 të fillojë numërimi nga zero është në vend të një. 383 00:17:19,271 --> 00:17:21,020 Dhe kështu kjo është ajo Shkencëtarët kompjuterike bërë. 384 00:17:21,020 --> 00:17:23,750 Pra hap zero, ngrihen dhe mendoj për numrin një. 385 00:17:23,750 --> 00:17:26,339 Hapi tjetër është this-- palë off me dikë këmbë 386 00:17:26,339 --> 00:17:27,660 dhe shtoni numrat tuaj së bashku. 387 00:17:27,660 --> 00:17:30,660 388 00:17:30,660 --> 00:17:32,850 E mrekullueshme. 389 00:17:32,850 --> 00:17:37,640 >> Pra, në këtë moment në kohë, fjalë për fjalë të gjithë të marrin pjesë 390 00:17:37,640 --> 00:17:41,930 është duke menduar të numrit 2, me përjashtim të për një person i rastësishëm në qoftë se ne kemi 391 00:17:41,930 --> 00:17:43,450 një numër i rastësishëm i njerëzve në dhomë. 392 00:17:43,450 --> 00:17:50,640 Dhe tani hapi i tretë këtu do të të this-- njëri prej jush duhet të ulen. 393 00:17:50,640 --> 00:17:54,490 Njëri prej ju duhet të ulen, dhe në qoftë se ju jeni ende në këmbë, 394 00:17:54,490 --> 00:17:56,590 kthehemi të hap një të tillë. 395 00:17:56,590 --> 00:18:44,799 396 00:18:44,799 --> 00:18:45,790 Në rregull. 397 00:18:45,790 --> 00:19:00,760 398 00:19:00,760 --> 00:19:01,650 Në rregull. 399 00:19:01,650 --> 00:19:03,880 Pra gjithnjë e më shumë njerëz duhet të ulur poshtë. 400 00:19:03,880 --> 00:19:08,280 Vini re se kjo ka shkaktuar një loop-- një lloj cikli. 401 00:19:08,280 --> 00:19:11,983 Disa nga ju duhet të jetë awkwardly mbërthyer, duke shkuar mbrapa dhe me radhë në mes të një hap 402 00:19:11,983 --> 00:19:14,180 dhe dy, një dhe dy, një dhe dy. 403 00:19:14,180 --> 00:19:21,190 404 00:19:21,190 --> 00:19:21,810 Eshte ne rregull. 405 00:19:21,810 --> 00:19:22,630 bug ynë i parë. 406 00:19:22,630 --> 00:19:24,740 Ne do të merremi me këtë. 407 00:19:24,740 --> 00:19:25,320 Në rregull. 408 00:19:25,320 --> 00:19:27,370 Më lejoni të përpiqemi për të nxitur gjërat së bashku. 409 00:19:27,370 --> 00:19:31,454 >> Në teori, vetëm një person është në këmbë si të gjithë vazhdon të çiftuar off. 410 00:19:31,454 --> 00:19:33,870 Por më lejoni të shpejtuar gjërat me njerëzit ende në këmbë. 411 00:19:33,870 --> 00:19:35,480 Çfarë numri jeni duke menduar për të? 412 00:19:35,480 --> 00:19:36,070 46. 413 00:19:36,070 --> 00:19:36,570 NE RREGULL. 414 00:19:36,570 --> 00:19:37,820 Shkoni përpara dhe të ulen. 415 00:19:37,820 --> 00:19:39,190 Ju djema janë ende në këmbë. 416 00:19:39,190 --> 00:19:42,130 Kush është ende në këmbë? 417 00:19:42,130 --> 00:19:45,240 Çfarë numri jeni duke menduar për të? 418 00:19:45,240 --> 00:19:46,160 NE RREGULL. 419 00:19:46,160 --> 00:19:47,900 >> Pra, ne do të kthehet tek ju. 420 00:19:47,900 --> 00:19:49,630 Në pjesën e prapme? 421 00:19:49,630 --> 00:19:50,790 Cfare eshte ajo? 422 00:19:50,790 --> 00:19:53,100 22. 423 00:19:53,100 --> 00:19:56,540 OK dikush tjetër deri top-- vërtet? 424 00:19:56,540 --> 00:19:57,720 34. 425 00:19:57,720 --> 00:19:58,300 NE RREGULL. 426 00:19:58,300 --> 00:20:02,780 Mbi këtu në right-- time deri këtu? 427 00:20:02,780 --> 00:20:06,820 132, shumë e bukur. 428 00:20:06,820 --> 00:20:08,380 22? 429 00:20:08,380 --> 00:20:08,990 >> NE RREGULL. 430 00:20:08,990 --> 00:20:10,031 Dhe i cili është ende në këmbë? 431 00:20:10,031 --> 00:20:11,000 Ketu? 432 00:20:11,000 --> 00:20:14,520 46, shumë e bukur. 433 00:20:14,520 --> 00:20:16,890 72. 434 00:20:16,890 --> 00:20:18,220 Unë nuk mund të ngecë shumë më të gjatë. 435 00:20:18,220 --> 00:20:20,520 Po? 436 00:20:20,520 --> 00:20:22,490 30, e bukur. 437 00:20:22,490 --> 00:20:24,120 Ketu? 438 00:20:24,120 --> 00:20:26,200 23? 439 00:20:26,200 --> 00:20:27,270 23. 440 00:20:27,270 --> 00:20:30,920 >> Dhe unë mendoj se është e të gjithë me përjashtim të ju djema, nuk ka presion. 441 00:20:30,920 --> 00:20:32,860 Oh, prisni. 442 00:20:32,860 --> 00:20:33,360 28? 443 00:20:33,360 --> 00:20:37,500 444 00:20:37,500 --> 00:20:38,281 Vetëm tetë. 445 00:20:38,281 --> 00:20:38,780 NE RREGULL. 446 00:20:38,780 --> 00:20:41,030 Vetëm tetë. 447 00:20:41,030 --> 00:20:42,580 Ketu poshte? 448 00:20:42,580 --> 00:20:44,570 30. 449 00:20:44,570 --> 00:20:47,344 23. 450 00:20:47,344 --> 00:20:47,843 24. 451 00:20:47,843 --> 00:20:50,810 452 00:20:50,810 --> 00:20:52,310 18. 453 00:20:52,310 --> 00:20:54,690 Ky është zbatimi i keq i këtij algoritmi ndonjëherë. 454 00:20:54,690 --> 00:20:55,190 NE RREGULL. 455 00:20:55,190 --> 00:20:59,760 Pra, dikush tjetër? 456 00:20:59,760 --> 00:21:00,421 Ndonje tjeter? 457 00:21:00,421 --> 00:21:00,920 NE RREGULL. 458 00:21:00,920 --> 00:21:03,300 Nje me shume. 459 00:21:03,300 --> 00:21:04,400 16? 460 00:21:04,400 --> 00:21:04,900 NE RREGULL. 461 00:21:04,900 --> 00:21:05,510 16. 462 00:21:05,510 --> 00:21:06,010 Në rregull. 463 00:21:06,010 --> 00:21:09,070 Pra, nëse unë nuk kam humbur dikush në shoh me inat këtu, kur unë hit Enter, 464 00:21:09,070 --> 00:21:13,091 ne do të shohim, algorithmically, numri i përgjithshëm i njerëzve në Sanders. 465 00:21:13,091 --> 00:21:16,340 Për shkak se një herë, është sikur të gjithë si ju ul, kaloi numrin tuaj off 466 00:21:16,340 --> 00:21:19,215 dikujt tjetër, dikujt tjetër, dikujt tjetër, në mënyrë që në teori, 467 00:21:19,215 --> 00:21:22,304 në fund të fundit, vetëm një i vështirë Personi duhet të lënë në këmbë. 468 00:21:22,304 --> 00:21:22,970 Por kjo është në rregull. 469 00:21:22,970 --> 00:21:24,290 Ne ankorua gjërat me dorë. 470 00:21:24,290 --> 00:21:27,590 Kjo është veçanërisht e vështirë për të parë në këtë hapësirë ​​të veçantë. 471 00:21:27,590 --> 00:21:34,200 >> Dhe numri i përgjithshëm i njerëzve ne mendojmë se ka këtu është 546. 472 00:21:34,200 --> 00:21:37,330 Numri i përgjithshëm i ishte dorëzuar nga miqtë e mësimdhënies, 473 00:21:37,330 --> 00:21:40,660 kush e bëri atë të vjetër Shkolla mënyrë të ngadaltë, ishte 820. 474 00:21:40,660 --> 00:21:43,660 >> [Duke qeshur] 475 00:21:43,660 --> 00:21:47,170 >> [DUARTROKITJE] 476 00:21:47,170 --> 00:21:48,670 >> Eshte ne rregull. 477 00:21:48,670 --> 00:21:50,740 Pra me siguri pra, nuk janë këto mete. 478 00:21:50,740 --> 00:21:51,460 Dhe kjo është në rregull. 479 00:21:51,460 --> 00:21:53,810 Dhe kështu që mendoj se përsëri në këtë diçka e hera e parë 480 00:21:53,810 --> 00:21:55,420 ju shkruani nuk do të punojnë. 481 00:21:55,420 --> 00:21:57,620 Kjo ka ndodhur me mua si edhe këtu. 482 00:21:57,620 --> 00:22:00,844 Por le të shqyrtojmë se si ne fuqi aplikojnë këtë ide të njëjtë për diçka 483 00:22:00,844 --> 00:22:03,760 ju mund të keni parë më parë, e cila është kjo e vjetër e shkollës teknologji here-- 484 00:22:03,760 --> 00:22:05,130 një libër me të vërtetë e madhe e telefonit. 485 00:22:05,130 --> 00:22:09,380 Dhe mendoj se këtë libër e telefonit ka 1000 faqe dhe 1000 emra 486 00:22:09,380 --> 00:22:11,360 dhe numrat alfabetike në brendësi të saj. 487 00:22:11,360 --> 00:22:14,860 >> E pra, ne mund të lloj të zbatohet një të ngjashme Ideja për këtë problem shumë fizike, 488 00:22:14,860 --> 00:22:16,270 vetëm duke përdorur më. 489 00:22:16,270 --> 00:22:18,810 Unë vetëm lloji i mashtruar nga leveraging të gjithë ju 490 00:22:18,810 --> 00:22:23,240 me shumë dhe shumë e CPU të ndryshme ose truri ekzekutimin e ndonjë algorithm. 491 00:22:23,240 --> 00:22:25,440 Por në qoftë se kjo është vetëm pak vjetër me, unë ende mund 492 00:22:25,440 --> 00:22:29,630 levave të njëjtin thelbin e një ideje e ndarjes dhe pushtimit këtë problem 493 00:22:29,630 --> 00:22:32,970 përsëri dhe përsëri, ku gjysma prej jush, gjysma prej jush, gjysma prej jush, gjysma prej jush, 494 00:22:32,970 --> 00:22:35,830 teorikisht mbajtur ulur poshtë, deri sa ne u lanë, teorikisht, 495 00:22:35,830 --> 00:22:36,990 me vetëm një person. 496 00:22:36,990 --> 00:22:39,810 >> Pra, në këtë shkollë të vjetër technology-- ne nuk 497 00:22:39,810 --> 00:22:43,030 nevojë për këtë dalin nga harta këtë teknologji të vjetër e shkollës, 498 00:22:43,030 --> 00:22:47,300 ne mund të fillojmë të shikojmë për dikë si Mike Smith, një faqe në një kohë. 499 00:22:47,300 --> 00:22:49,410 Dhe unë shoh se jo, Mike nuk është këtu. 500 00:22:49,410 --> 00:22:51,110 Unë jam ende në seksionin A. 501 00:22:51,110 --> 00:22:53,900 Përfundimisht, unë gjej veten në seksionin B. 502 00:22:53,900 --> 00:22:56,910 Dhe kjo është një algorithm-- hap pas hapi udhëzim. 503 00:22:56,910 --> 00:22:59,890 Fillojnë në faqen e fillimit dhe të një në një kohë, shikoni për Mike Smith. 504 00:22:59,890 --> 00:23:03,410 A është kjo correct-- këtë algorithm apo qasje? 505 00:23:03,410 --> 00:23:04,550 >> Po, kjo është e saktë. 506 00:23:04,550 --> 00:23:06,840 Nëse Mike është këtu, në fund Unë do të merrni për të. 507 00:23:06,840 --> 00:23:08,139 Por kjo nuk është efikas. 508 00:23:08,139 --> 00:23:09,180 Është padyshim shumë i ngadalshëm. 509 00:23:09,180 --> 00:23:11,340 Kështu që unë mund të levave twosies njëjta qasje. 510 00:23:11,340 --> 00:23:15,350 Unë mund të bëj lloj të dy, katër, gjashtë, tetë, 10, 12. 511 00:23:15,350 --> 00:23:16,330 Kjo është dy herë më shpejt. 512 00:23:16,330 --> 00:23:18,290 Unë jam duke shkuar për të marrë të Mike më i shpejtë në qoftë se ai është atje. 513 00:23:18,290 --> 00:23:20,770 Është ajo e saktë? 514 00:23:20,770 --> 00:23:22,320 Po, por dëgjova një No little--. 515 00:23:22,320 --> 00:23:24,200 Tani kam dëgjuar A nr. 516 00:23:24,200 --> 00:23:24,700 Po. 517 00:23:24,700 --> 00:23:26,190 Ka një bug potencialisht. 518 00:23:26,190 --> 00:23:29,374 Ndoshta Mike vetëm aksidentalisht merr sandviç në mes dy faqe, 519 00:23:29,374 --> 00:23:31,290 sepse unë jam duke fluturuar me anë të ky dy në një kohë. 520 00:23:31,290 --> 00:23:33,580 Pra, të paktën ne kemi nevojë për disa lloj fix kushtëzuar. 521 00:23:33,580 --> 00:23:35,330 Unë kam nevojë për të thënë, hej, në qoftë se kam goditur dikë të cilit 522 00:23:35,330 --> 00:23:39,190 Emri i fillon me një T në vend të një S, Unë më mirë të dyfishtë përsëri të paktën një faqe. 523 00:23:39,190 --> 00:23:40,767 Pra, buggy në fillim, por ndreqshëm. 524 00:23:40,767 --> 00:23:43,850 Por askush prej nesh janë duke shkuar për të kërkuar Mike Smith me anë të një telefoni 1,000 faqe 525 00:23:43,850 --> 00:23:45,290 libër një faqe në një kohë. 526 00:23:45,290 --> 00:23:48,486 Çfarë është një person normal do të bëni? 527 00:23:48,486 --> 00:23:50,860 Ju jeni duke shkuar për të shkuar në S-së, në qoftë se ju e dinte se ku S-së. 528 00:23:50,860 --> 00:23:54,230 Ju mund të shkoni afërsisht në mes ose pak anon kah fundi. 529 00:23:54,230 --> 00:23:56,850 Dhe unë shoh këtu poshtë dhe Jam në seksionin M. 530 00:23:56,850 --> 00:23:58,952 Por çfarë do të dini në lidhje me këtë problem tani, 531 00:23:58,952 --> 00:24:02,160 se ne nuk domosdoshmërisht të dini para me të gjithë ne vetëm duke numëruar veten 532 00:24:02,160 --> 00:24:03,030 ekuivalente? 533 00:24:03,030 --> 00:24:06,010 E pra, Mike është në mënyrë të qartë do të jetë Kjo pjesë e librit 534 00:24:06,010 --> 00:24:07,920 në qoftë se ai është këtu në të gjitha, sepse është e renditura. 535 00:24:07,920 --> 00:24:10,160 >> Dhe kështu që ju mund shumë dramatically-- 536 00:24:10,160 --> 00:24:11,250 >> [Gulçues] 537 00:24:11,250 --> 00:24:12,300 >> E di. 538 00:24:12,300 --> 00:24:16,940 >> [DUARTROKITJE] 539 00:24:16,940 --> 00:24:19,450 >> Është e vërtetë me të vërtetë e lehtë në qoftë se ju bëni atë poshtë shpinë atje. 540 00:24:19,450 --> 00:24:22,070 Por atëherë ju mund të hedhin gjysma e problemit larg. 541 00:24:22,070 --> 00:24:25,950 Tani, unë jam i lënë me të njëjtin problem-- gjeni Mike Smith në një telefon book-- 542 00:24:25,950 --> 00:24:29,610 por tani libri telefoni fillon në M dhe shkon tek Z, por kjo është gjysma aq i madh. 543 00:24:29,610 --> 00:24:30,890 >> Por kjo është ajo që është mbresëlënëse. 544 00:24:30,890 --> 00:24:34,170 Ashtu si në teori, ju djema, kur ju të gjithë u ul vetëm gjysmën në një kohë, 545 00:24:34,170 --> 00:24:37,150 problemi mori gjysmën aq i madh, gjysma aq i madh, përsëri dhe përsëri. 546 00:24:37,150 --> 00:24:40,260 Pra, është bërë ky problem njëjtin problem por gjysma aq i madh. 547 00:24:40,260 --> 00:24:42,670 Tani kjo është një problem 250 faqe. 548 00:24:42,670 --> 00:24:45,340 Sa më shpejt që unë të kuptojë, oh, unë jam në seksionin T rastësisht. 549 00:24:45,340 --> 00:24:46,590 Unë kam shkuar shumë larg. 550 00:24:46,590 --> 00:24:48,500 Unë mund të hedhin se gjysma e librit të telefonit larg. 551 00:24:48,500 --> 00:24:50,410 Tani, unë jam deri në një katërta e problemit. 552 00:24:50,410 --> 00:24:53,910 >> Dhe ju mund të përsëris, e përsëris, të përsëritur deri në, në teori, ju jeni 553 00:24:53,910 --> 00:24:55,460 lënë me vetëm një faqe. 554 00:24:55,460 --> 00:24:59,010 Dhe në qoftë se Mike është në atë faqe, Unë tani mund të zgjidhin këtë problem. 555 00:24:59,010 --> 00:25:00,810 Por, sa shpejt e kam zgjidhur atë? 556 00:25:00,810 --> 00:25:05,420 Në rastin e parë, ajo mori mua si ndoshta 1.000 hapa për të gjetur Mike Smith. 557 00:25:05,420 --> 00:25:09,260 Ajo mund të ketë marrë me-- I kap librin e telefonit 558 00:25:09,260 --> 00:25:11,440 dhe unë fillova të kërkoj një faqe në një kohë, 559 00:25:11,440 --> 00:25:13,480 dhe Mike mund të jetë 1,000 faqe më vonë. 560 00:25:13,480 --> 00:25:16,020 >> Qasja e dytë ndoshta merr mua 500 hapa, 561 00:25:16,020 --> 00:25:17,960 sepse unë jam duke fluturuar përmes dy në një kohë. 562 00:25:17,960 --> 00:25:21,082 Dhe qasja e tretë edhe pse, kjo është veçanërisht e fuqishme. 563 00:25:21,082 --> 00:25:23,790 Por le të marrin në konsideratë se çfarë ne fakt bëri me këtë qasje të tretë. 564 00:25:23,790 --> 00:25:27,590 Unë do të keni atë që unë do të thërrasë vetëm këto Deklaratat këtu, një në një kohë. 565 00:25:27,590 --> 00:25:28,560 Pick up një libër telefoni. 566 00:25:28,560 --> 00:25:30,130 Të hapur në mes të librin e telefonit. 567 00:25:30,130 --> 00:25:31,419 Shikoni në emrat. 568 00:25:31,419 --> 00:25:33,960 Dhe pastaj gjërat merrni pak më intelektualisht interesante, 569 00:25:33,960 --> 00:25:35,170 nëse ende të thjeshta. 570 00:25:35,170 --> 00:25:38,350 Nëse Smith është ndër më të emrat në atë faqe të tanishme, 571 00:25:38,350 --> 00:25:40,170 pastaj të bëjë diçka me kusht. 572 00:25:40,170 --> 00:25:41,840 Është si një pirun në rrugë. 573 00:25:41,840 --> 00:25:42,660 Call Mike. 574 00:25:42,660 --> 00:25:44,930 Nëse Mike është në mesin e emrave në këtë faqe, të quajtur Mike. 575 00:25:44,930 --> 00:25:49,720 Por vetëm të bëjë vijën katër në qoftë linjë pemë, në qoftë se ju do të, është e vërtetë. 576 00:25:49,720 --> 00:25:51,590 Përgjigja për këtë pyetje është po. 577 00:25:51,590 --> 00:25:55,520 >> Tjetër në qoftë se Smith është parë në book-- me fjalë të tjera, në qoftë se unë jam në seksionin M 578 00:25:55,520 --> 00:25:58,540 dhe unë jam duke kërkuar për dikë që të e majta, atëherë çfarë duhet të bëj 579 00:25:58,540 --> 00:26:00,300 është diçka shumë e ngjashme. 580 00:26:00,300 --> 00:26:03,440 Atëherë unë duhet të hapur në mes i gjysmës së majtë të librit. 581 00:26:03,440 --> 00:26:07,930 Kështu që të shkojnë majtë, dhe pastaj të kthehemi në hap dy. 582 00:26:07,930 --> 00:26:09,290 Shikoni në emrat atje. 583 00:26:09,290 --> 00:26:12,779 >> Pra, me fjalë të tjera, të bëjë të njëjtën gjë, por në një problem që i është përgjysmuar. 584 00:26:12,779 --> 00:26:13,570 Ti e di se çfarë tjetër? 585 00:26:13,570 --> 00:26:16,470 Nëse Smith është vonë në libër bazuar në faqen e unë jam duke kërkuar në, 586 00:26:16,470 --> 00:26:18,790 e hapur në mes të të gjysma e djathtë e librit 587 00:26:18,790 --> 00:26:22,050 dhe pastaj të kthehemi përsëri të hap dy, else-- 588 00:26:22,050 --> 00:26:24,000 ka një mundësi katërt këtu. 589 00:26:24,000 --> 00:26:28,830 Mike-së ose këtu apo në të majtë ose në të djathtë apo jo atje. 590 00:26:28,830 --> 00:26:30,570 Dhe këtu kemi mirë parasysh këtë. 591 00:26:30,570 --> 00:26:33,360 Dhe në fakt, në qoftë se ju keni pasur ndonjëherë kompjuteri juaj vetëm të rrëzuar në ju, 592 00:26:33,360 --> 00:26:36,822 që nganjëherë, por jo gjithmonë, Rezultati i vetëm një programues njerëzore nuk 593 00:26:36,822 --> 00:26:39,280 kuptuar, oh xhiruar, nuk ka fakt ky skenar katërt. 594 00:26:39,280 --> 00:26:41,650 Dhe në qoftë se ju nuk shkruani kodin për të trajtuar këtë skenar, 595 00:26:41,650 --> 00:26:43,220 ndonjëherë ju nuk e dini çfarë mund të bëjë kompjuteri. 596 00:26:43,220 --> 00:26:44,770 Dhe me të vërtetë një program mund të rrëzimit. 597 00:26:44,770 --> 00:26:47,550 >> Por në këtë rast, kam menduar në lidhje me të, dhe unë i thashë, tjetër lë, 598 00:26:47,550 --> 00:26:49,850 sepse kjo është e katërta Skenari logjike e mundur. 599 00:26:49,850 --> 00:26:51,950 Tani, le të vetëm të shtoni disa fjalori kështu ne 600 00:26:51,950 --> 00:26:55,320 mund të fillojë të hedh rreth kushte që janë ndryshe mjaft intuitive. 601 00:26:55,320 --> 00:26:57,870 Të gjitha gjërat që unë kam vetëm theksuar në të verdhë këtu, 602 00:26:57,870 --> 00:27:00,140 Unë jam vetëm duke shkuar për të funksione ose procedura. 603 00:27:00,140 --> 00:27:01,590 Ata janë vetëm lloji i veprimeve. 604 00:27:01,590 --> 00:27:04,900 Pra marr, e hapur për të, shikoni në, e quajnë, të hapur, të hapur, 605 00:27:04,900 --> 00:27:09,170 quit-- këto janë vetëm veprime, ose ne do të thirrjen e tyre më formalisht, funksione. 606 00:27:09,170 --> 00:27:11,410 >> Ndërkohë, tani në të verdhë, Unë e kam theksuar gjëra 607 00:27:11,410 --> 00:27:14,084 that-- le të vetëm të fillojnë duke e quajtur ato kushte ose degët. 608 00:27:14,084 --> 00:27:16,750 Këto janë pikat ku vendim ju mund të shkoni në këtë mënyrë, në këtë mënyrë, 609 00:27:16,750 --> 00:27:18,100 apo ndonjë drejtim tjetër akoma. 610 00:27:18,100 --> 00:27:19,430 Pra, ata do të jenë kushtet. 611 00:27:19,430 --> 00:27:20,930 Dhe tani kjo është pak njohës. 612 00:27:20,930 --> 00:27:24,600 Le të quajmë këto pyetje shprehjet Boolean, 613 00:27:24,600 --> 00:27:26,530 pas dikë me një mbiemër bool. 614 00:27:26,530 --> 00:27:28,340 >> Dhe një shprehje Boolean është vetëm diçka 615 00:27:28,340 --> 00:27:30,290 që është ose e vërtetë ose e rreme, po ose jo. 616 00:27:30,290 --> 00:27:35,870 Pra, kjo është pyetja të cilës përgjigje intereson, në mënyrë që të në një gjendje 617 00:27:35,870 --> 00:27:39,210 të bëjë një decision-- të kthehet një përgjigje, dhe pastaj të shkojnë majtas ose djathtas, ose diçka 618 00:27:39,210 --> 00:27:40,450 tjetër krejt. 619 00:27:40,450 --> 00:27:42,860 >> Dhe pastaj në fund, këto Linjat here-- kthehemi 620 00:27:42,860 --> 00:27:44,737 të hap dy, të shkojnë prapa të hap two-- ne mund të 621 00:27:44,737 --> 00:27:46,320 zbatuar këtë ide në mënyra të ndryshme. 622 00:27:46,320 --> 00:27:49,028 Dhe pastaj ata prej jush me përvojë programore mund të ketë bërë 623 00:27:49,028 --> 00:27:50,670 ose mund ta imagjinoj duke bërë këtë në mënyra të ndryshme. 624 00:27:50,670 --> 00:27:53,170 Por, për qëllimet e sotme, është e vetëm ideja që ka rëndësi. 625 00:27:53,170 --> 00:27:55,400 Kjo është ajo që inducing ne përgjithësi do të thërrasë 626 00:27:55,400 --> 00:28:00,110 një loop-- një lloj cikli, sepse ajo është bërë me të bërë diçka përsëri. 627 00:28:00,110 --> 00:28:03,340 >> Pra, tani, le të vetëm të marrin në konsideratë sa i mirë ky algoritëm është. 628 00:28:03,340 --> 00:28:03,899 Eshte e sakte. 629 00:28:03,899 --> 00:28:06,940 Nëse Mike-së në libër, është një nga ata katër scenarios-- përsëri dhe përsëri 630 00:28:06,940 --> 00:28:08,023 dhe përsëri, ne do të gjeni atë. 631 00:28:08,023 --> 00:28:08,890 Por, sa i mirë është ajo? 632 00:28:08,890 --> 00:28:10,150 E pra, ne nuk kemi të jetë shumë formal këtu. 633 00:28:10,150 --> 00:28:12,066 Por, le të vetëm komplot diçka, x dhe y, për të marrë 634 00:28:12,066 --> 00:28:14,470 një ndjenjë e formës së këtij problemi. 635 00:28:14,470 --> 00:28:17,160 >> Në boshtin x këtu është madhësia e problemit tim. 636 00:28:17,160 --> 00:28:20,256 Dhe ata një y-aks këtu do të jetë koha për të zgjidhur. 637 00:28:20,256 --> 00:28:21,630 Kështu që ndoshta kjo është numri i faqeve. 638 00:28:21,630 --> 00:28:24,400 Ndoshta kjo është e sekonda ose faqe turns-- çfarëdo. 639 00:28:24,400 --> 00:28:27,290 Megjithatë ju doni për të numëruar është ajo që kjo foto do të përfaqësojë. 640 00:28:27,290 --> 00:28:30,630 Dhe kjo algorithm pari, unë jam duke shkuar për të përshkruar si vetëm një vijë të drejtë. 641 00:28:30,630 --> 00:28:33,120 Nëse ka n faqe në libri telefon, atëherë ai 642 00:28:33,120 --> 00:28:36,010 mund të marrë mua sa më shumë si hapa n për të gjetur Mike. 643 00:28:36,010 --> 00:28:38,930 Nëse Verizon ose kompani telefonike shton një faqe më shumë vitin e ardhshëm, 644 00:28:38,930 --> 00:28:42,170 ajo mund të marrë më një shumë step-- edhe një njësi të kohës për të gjetur Mike. 645 00:28:42,170 --> 00:28:44,230 Pra, nuk është vetëm ky në një raport. 646 00:28:44,230 --> 00:28:45,970 Kjo është një vijë e drejtë shpat. 647 00:28:45,970 --> 00:28:49,110 >> Ndërkohë, që të dytë algorithm-- në qoftë se unë jam 648 00:28:49,110 --> 00:28:51,570 duke shkuar dy në një dy time--, katër, gjashtë, tetë apo double-- 649 00:28:51,570 --> 00:28:54,550 duke shkuar nëpër faqet dy herë në një kohë, dy në një kohë, 650 00:28:54,550 --> 00:28:55,710 është ende vijë e drejtë. 651 00:28:55,710 --> 00:28:58,720 Ka tani një njeri të dy raporti, por pak më poshtë. 652 00:28:58,720 --> 00:29:02,240 Pra, nëse ka këtë shumë faqe në tabelë këtu në të verdhë, 653 00:29:02,240 --> 00:29:04,800 që mund të marrë më këtë shumë hapa ose sekonda, 654 00:29:04,800 --> 00:29:07,980 përndryshe ajo do të marrë mua dy herë më shumë në vijën e kuqe. 655 00:29:07,980 --> 00:29:10,190 >> Por vija e gjelbër është takeaway vërtetë. 656 00:29:10,190 --> 00:29:12,290 Kjo është ajo që ne në përgjithësi thërrasë një regjistër logorithm-- 657 00:29:12,290 --> 00:29:13,840 nga n, ku n është numri i faqeve. 658 00:29:13,840 --> 00:29:16,450 Por kjo është forma që ka rëndësi sot, për shkak se ne nuk kemi 659 00:29:16,450 --> 00:29:17,950 të mendoj edhe për komplot pikë. 660 00:29:17,950 --> 00:29:19,830 >> Mendoni për një skenar ekstreme. 661 00:29:19,830 --> 00:29:23,070 Supozoni Verizon nesër dyfishon numri i faqeve në atë librin e telefonit, 662 00:29:23,070 --> 00:29:24,900 nga 1,000 deri në 2,000. 663 00:29:24,900 --> 00:29:28,440 Në algorithm parë, unë mund të humbni një shtesë 1,000 664 00:29:28,440 --> 00:29:32,080 hapat e kërkuar për Mike, vetëm për shkak se Verizon dyfishuar madhësinë e librit. 665 00:29:32,080 --> 00:29:34,740 E dyta algorithm-- të fuqisë kap për mua një shtesë 500 hapa. 666 00:29:34,740 --> 00:29:38,370 1000 faqet e më shumë, shkoj dy në një time-- 500 hapa më shumë për të gjetur Mike. 667 00:29:38,370 --> 00:29:41,020 >> Por kjo algorithm tretë është lloj i magjike. 668 00:29:41,020 --> 00:29:44,270 Verizon dyfishon numrin i faqeve nga 1,000 deri në 2,000, 669 00:29:44,270 --> 00:29:47,730 por sa shumë më tepër hapa bën të marrë mua për të kërkuar Mike? 670 00:29:47,730 --> 00:29:51,220 Kjo është vetëm një, sepse unë mund vetëm heq Libri i telefonit një më shumë kohë 671 00:29:51,220 --> 00:29:55,280 nga një problem 2,000 faqe në një 1000 Problemi faqe, dhe voila. 672 00:29:55,280 --> 00:29:57,030 Unë kam marrë një pickim masive nga ajo. 673 00:29:57,030 --> 00:29:59,405 >> Dhe në qoftë se ju shkoni me të vërtetë ekstreme, supozojmë se librin e telefonit 674 00:29:59,405 --> 00:30:03,600 Kompania kishte diçka të çmendur si një libër telefoni 4 miliardë faqe. 675 00:30:03,600 --> 00:30:07,020 Dhe sa hapa mund të marrë për të gjetur Mike Smith në 4 miliardë 676 00:30:07,020 --> 00:30:09,990 faqe Libri i telefonit? 677 00:30:09,990 --> 00:30:16,450 Është një numër i madh, por vetëm 4 miliardë 2 miliardë për 1 miliard 500 milionë, 678 00:30:16,450 --> 00:30:18,720 250 million-- ende tingëllon si një numër të madh, 679 00:30:18,720 --> 00:30:20,980 por unë jam shumë shpejt marrjen e vlerave më të vogla. 680 00:30:20,980 --> 00:30:24,790 >> Dhe në fakt, në qoftë se unë bëj matematikë drejtë, unë mund të ndajnë vetëm 4 miliardë 681 00:30:24,790 --> 00:30:28,750 nga rreth 32 herë më parë I marrë poshtë për të vetëm një. 682 00:30:28,750 --> 00:30:31,640 Pra, nëse ai libër telefoni ishin 4 miliardë faqe e gjatë, ndonjë gjë e madhe. 683 00:30:31,640 --> 00:30:35,270 Brenda disa sekonda, ndoshta 32 sekonda, unë mund të ndajnë atë në gjysmë 684 00:30:35,270 --> 00:30:39,560 dhe përfundimisht të gjeni Mike ose në përfundimin se ai nuk është aty. 685 00:30:39,560 --> 00:30:42,219 Dhe kjo është esenca e një algorithm-- një algoritmi të mirë. 686 00:30:42,219 --> 00:30:44,260 Dhe kjo është një nga më të Qëllimet e një klase si kjo, 687 00:30:44,260 --> 00:30:47,350 është duke u përpjekur të kuptoj se si mund ta zgjidhjen e problemit jo vetëm të saktë, 688 00:30:47,350 --> 00:30:52,360 si unë gjithmonë e dinte se si për të bërë atë një faqe në një time--, por në mënyrë korrekte dhe të mirë. 689 00:30:52,360 --> 00:30:55,034 Si mund të projektimit të mirë zgjidhje për problemet? 690 00:30:55,034 --> 00:30:57,200 Pra, le të marrin një moment këtu dhe do t'ju japë një kuptim tani 691 00:30:57,200 --> 00:31:00,260 i CS50 kurs vetvetiu më të futur Anëtarët e stafit të një kurs disa të. 692 00:31:00,260 --> 00:31:02,010 Vetëm para 2:00, ne do të të marrë një pushim të shkurtër 693 00:31:02,010 --> 00:31:03,520 në mënyrë që ato prej jush të cilët janë të pazar 694 00:31:03,520 --> 00:31:05,130 duck dhe të marrë një shikoni në një klasë tjetër 695 00:31:05,130 --> 00:31:06,580 dhe ndiqte vazhdimin e këtij online. 696 00:31:06,580 --> 00:31:09,250 Por tani për tani, më lejoni të prezantoj CS50, klasa vetë, 697 00:31:09,250 --> 00:31:11,330 dhe në veçanti ajo që është e re. 698 00:31:11,330 --> 00:31:13,960 >> Pra pranverë kaluara, ne kaloi mjaft e time-- 699 00:31:13,960 --> 00:31:17,911 Stafi i kursit dhe I-- menduarit në lidhje me atë që është e duam CS50 të jetë, 700 00:31:17,911 --> 00:31:19,910 dhe do të kthehet në para parime, kështu që të flasin, 701 00:31:19,910 --> 00:31:22,760 për t'u marrë parasysh se çfarë është ajo që ne duam ky kurs të duken si dhe të jenë të 702 00:31:22,760 --> 00:31:23,740 si për studentët e vet. 703 00:31:23,740 --> 00:31:26,480 Dhe kështu që ju do të shihni në problemin vendosur zero, si dhe, një ftesë 704 00:31:26,480 --> 00:31:28,780 për të marrë një vështrim në atë URL e cila përmbledh 705 00:31:28,780 --> 00:31:33,270 disa nga motivet prapa pas karakteristikat e rënies 2016. 706 00:31:33,270 --> 00:31:35,570 >> Kështu si ju mund të keni mbledhur nga TL: prospekt DR, 707 00:31:35,570 --> 00:31:39,060 syllabus sot, si dhe nga katalogu Natyrisht, këtë vit në CS50, 708 00:31:39,060 --> 00:31:42,540 ju jeni duke pritur vetëm për të marrë pjesë today-- kështu punë të mirë done-- 709 00:31:42,540 --> 00:31:45,960 dhe leksion fundit më 21 nëntor. 710 00:31:45,960 --> 00:31:49,150 Dhe ju jeni të mirëpritur, por jo pritet të të marrë pjesë në këto ligjërata në mes, 711 00:31:49,150 --> 00:31:51,180 sepse ajo që ne jemi duke bërë këtë vit, është qitje 712 00:31:51,180 --> 00:31:52,661 në kohë reale materiale kurs të. 713 00:31:52,661 --> 00:31:54,660 Pra, çdo gjë do të qëndrojë aktuale dhe të përfshihet 714 00:31:54,660 --> 00:31:57,410 sa më mirë që can-- ngjarjet aktuale dhe bisedat që folks fuqisë 715 00:31:57,410 --> 00:32:00,400 të ketë në industri në bota, por duke e bërë atë material 716 00:32:00,400 --> 00:32:03,892 në dispozicion, si rezultat, edhe earlier-- plotë me transkriptet plota tekst 717 00:32:03,892 --> 00:32:05,850 dhe searchability dhe lidhjet me burime të tjera. 718 00:32:05,850 --> 00:32:07,930 >> Dhe me të vërtetë, ne kemi qenë duke pretenduar për disa kohë 719 00:32:07,930 --> 00:32:10,830 dhe ne tani e besojnë këtë, se ne mund të krijojë, digjitale, 720 00:32:10,830 --> 00:32:15,170 një më të immersive, a më bindëse përvoja arsimore, në krahasim 721 00:32:15,170 --> 00:32:19,110 për të mbledhur këtu disa 23 herë në person, dikush dëgjuar si unë 722 00:32:19,110 --> 00:32:22,925 thjesht flasim për shkenca kompjuterike, në krahasim me të angazhohen në mënyrë më aktive. 723 00:32:22,925 --> 00:32:25,800 Pra, ju do të shihni në planin mësimor të kursit një skicë e semestrit këtu, 724 00:32:25,800 --> 00:32:27,840 së bashku me të, kur ligjërata do të filmuar, për të cilën ju jeni të 725 00:32:27,840 --> 00:32:29,710 mirëpritur, por nuk pritet, dhe kur ata do të 726 00:32:29,710 --> 00:32:31,640 të jetë lëshuar në faqen e internetit të kursit. 727 00:32:31,640 --> 00:32:34,300 >> Dhe ajo që ne do të bëjmë këtu në Të mërkurën duke filluar javën e ardhshme, 728 00:32:34,300 --> 00:32:37,362 është shumë më e ngushtë, me vetëm ata folks që duan të marrin pjesë, 729 00:32:37,362 --> 00:32:39,820 është një shëtitje të ashtuquajtur anë, ku unë dhe kokat e rrjedhës së 730 00:32:39,820 --> 00:32:41,730 në të vërtetë do të bëjë gjëra pak më intime 731 00:32:41,730 --> 00:32:44,313 këtu poshtë në orkestër seksioni, ende kanë disa teknologji 732 00:32:44,313 --> 00:32:46,365 dhe ecin përmes set Problemi jave aktual, 733 00:32:46,365 --> 00:32:50,020 dhe ju ofrojnë particularly-- nëse në mesin e ata pak comfortable-- të gjithë më shumë 734 00:32:50,020 --> 00:32:52,790 udhëzime që ju mund të dëshironi ose nevojë për sfidën e javës së. 735 00:32:52,790 --> 00:32:55,820 Dhe në mënyrë të ngjashme, për ata që nuk mund të marrin pjesë ato në person, ndonjë gjë e madhe. 736 00:32:55,820 --> 00:32:58,486 Nuk do të udhëhiqet në mënyrë të ngjashme nga një prej stafit të lartë të kursit, 737 00:32:58,486 --> 00:33:02,650 Zamalya, të njëjtën mundësi e ngulitur në problemin e përcakton vetë. 738 00:33:02,650 --> 00:33:04,960 >> Problem vendos këtë vit do të dalë të premteve 739 00:33:04,960 --> 00:33:08,080 dhe nuk do të më shtatë ditë më vonë, por 10 ditë later-- qëllimisht 740 00:33:08,080 --> 00:33:10,910 mbivendosje me çdo problem vendosur, në mënyrë që të akomoduar mirë, 741 00:33:10,910 --> 00:33:13,050 ne shpresojmë, dobësim dhe rrjedhën e në oraret e studentëve, 742 00:33:13,050 --> 00:33:16,550 sidomos kur midterms ose atletikë apo akademikë ose extracurriculars 743 00:33:16,550 --> 00:33:18,465 priren të vijnë e të shkojnë sidomos në mes të semestër. 744 00:33:18,465 --> 00:33:21,340 Kjo duhet të ju jap një më të vogël diskrecioni nëse ju front 745 00:33:21,340 --> 00:33:25,690 ngarkesës javën tuaj me CS50 ose ngarkesë mbrapa ajo në fundjavë në vijim në vend. 746 00:33:25,690 --> 00:33:28,817 Kështu që shikoni për planin mësimor të kursit këtu për orarin e tij. 747 00:33:28,817 --> 00:33:30,900 Dhe ju do të vëreni edhe në mesin e ndryshimet e këtij viti, 748 00:33:30,900 --> 00:33:34,082 për ata më të njohur me programimit në të kaluarën, 749 00:33:34,082 --> 00:33:36,290 ne do të fillojnë semestrin si ne do sot në Scratch, 750 00:33:36,290 --> 00:33:39,730 të përqëndrohet veçanërisht në gjuhën quajtur C, dhe pastaj nuk e tranzicionit 751 00:33:39,730 --> 00:33:43,430 për PHP, por me një gjuhë të quajtur Python në fund të semestrit 752 00:33:43,430 --> 00:33:46,565 në kontekstin e programimit web, së bashku me SQL dhe JavaScript, 753 00:33:46,565 --> 00:33:48,930 HTML, CSS, dhe edhe më shumë. 754 00:33:48,930 --> 00:33:51,790 >> Dhe në përgjigje të një FAQ, kjo është me të vërtetë rasti 755 00:33:51,790 --> 00:33:55,520 se CS nuk është aq e frikshme sa unë herë mendonin se ishte, por ajo është aq shumë punë 756 00:33:55,520 --> 00:33:57,280 pasi kisha dëgjuar se mund të jetë. 757 00:33:57,280 --> 00:34:03,210 Por kjo është të themi se këtu janë disa Statistikat nga rënia 2015 trupit studentor, 758 00:34:03,210 --> 00:34:06,460 ku vijat horizontale blu përfaqësojnë numrin mesatar të orëve 759 00:34:06,460 --> 00:34:06,960 raportuar. 760 00:34:06,960 --> 00:34:10,570 Dhe ju do të shihni një mesatare prej gjashtë deri në 10 për 12-- ndoshta 16 761 00:34:10,570 --> 00:34:14,580 apo më shumë e kështu me radhë, por me grindje të lartë të jetë e qartë. 762 00:34:14,580 --> 00:34:18,570 Dhe kështu të kuptojë se nuk është vetëm studentët më të rehatshme dhe më pak 763 00:34:18,570 --> 00:34:22,150 të rehatshme gjatë, por një mbështetje i korrespondon 764 00:34:22,150 --> 00:34:25,699 Struktura për të marrë ata studentë përmes semestrit sukses. 765 00:34:25,699 --> 00:34:29,409 >> Në të vërtetë, në përgjigje të një FAQ, duhet ju të marrë CS50 si vitin e parë? 766 00:34:29,409 --> 00:34:30,139 Absolutisht. 767 00:34:30,139 --> 00:34:32,690 Dhe në fakt, unë nuk pendohem nuk ka gjetur rrugën time 768 00:34:32,690 --> 00:34:35,170 ose gjetur një fushë të re se viti i parë si. 769 00:34:35,170 --> 00:34:39,149 Dhe duhet të marrë CS50 me kurse të tjera, sigurisht si well-- 770 00:34:39,149 --> 00:34:41,940 dhe këshilla të përgjithshme të fuqisë japin studentëve, që CS50 është ndoshta 771 00:34:41,940 --> 00:34:44,929 jo lloji i klasës apo klase intro që ju duhet të marrë me tre 772 00:34:44,929 --> 00:34:47,199 tjetër ose katër të tjerë klasa p-set. 773 00:34:47,199 --> 00:34:50,583 Por në qoftë se ju jeni duke marrë dy të tjera p-grup klasa, diçka tjetër, dhe CS50, 774 00:34:50,583 --> 00:34:51,499 absolutisht të dëgjueshëm. 775 00:34:51,499 --> 00:34:54,900 Unë kam pasur shumë studentë në kaluara bërë kështu mjaft sukses. 776 00:34:54,900 --> 00:34:57,490 >> Dhe për të marrë ju në drejtim që përfundojë linjë me sukses, 777 00:34:57,490 --> 00:35:00,260 ka sigurisht kanë sections-- këngë të ndryshme për studentët 778 00:35:00,260 --> 00:35:03,100 më të rehatshme, më të rehatshme, dhe diku në mes, 779 00:35:03,100 --> 00:35:04,850 ku në kursin e grupi i parë problem, 780 00:35:04,850 --> 00:35:06,360 ju do të kërkohet për të përshkruar veten. 781 00:35:06,360 --> 00:35:09,151 Dhe nëse ju jeni në mesin e atyre më pak të të rehatshme, kjo është lloj gjë 782 00:35:09,151 --> 00:35:10,420 që ju vetëm e di vend. 783 00:35:10,420 --> 00:35:13,010 Dhe me të vërtetë, kjo është qenë rritje demografike në CS50 784 00:35:13,010 --> 00:35:14,090 për mjaft për disa vjet. 785 00:35:14,090 --> 00:35:17,680 >> Që nga vjeshta e kaluar për shkalles, 58% të klasës 786 00:35:17,680 --> 00:35:20,560 e përshkroi veten si në mesin e atyre më pak të rehatshme, 787 00:35:20,560 --> 00:35:23,210 me 9% në mesin e atyre më shumë të rehatshme, dhe pastaj 788 00:35:23,210 --> 00:35:25,900 nxënësit e tjerë atje në red përshkruar veten 789 00:35:25,900 --> 00:35:27,890 si diku në mes. 790 00:35:27,890 --> 00:35:31,980 Dhe ju do të shihni këtu temat e përgjithshme dhe orar e seksioneve, të gjithë nga të cilat 791 00:35:31,980 --> 00:35:34,820 janë të ofruara në person, në kohë reale, me kursin e 792 00:35:34,820 --> 00:35:38,320 Stafi mahnitshme të shokëve të mësimdhënies dhe asistentë kurs, disa prej të cilëve 793 00:35:38,320 --> 00:35:39,660 ju do të takohen në një moment të vetëm. 794 00:35:39,660 --> 00:35:42,993 >> Seksionet veten, si ju do të shihni, do të të jenë të hënën dhe të martën dhe të mërkurën, 795 00:35:42,993 --> 00:35:45,910 në mënyrë që të lejojë që të zhyten në pas të angazhohen, në qoftë se ju në mënyrë 796 00:35:45,910 --> 00:35:48,110 të zgjedhur, në kursin e leksion parë atë javë. 797 00:35:48,110 --> 00:35:51,420 Dhe pastaj orarit të punës, të cilat sigurisht, me kalimin e çdo viti, 798 00:35:51,420 --> 00:35:54,110 kanë qenë jo më pak e një sfiduar për kursin. 799 00:35:54,110 --> 00:35:57,040 Dhe këtë vit, ne nuk jemi duke planifikuar vetëm për të mbajtur zyra hours-- një 800 00:35:57,040 --> 00:36:00,300 në një mundësi për ndihmë për Studentët të mërkurave enjteve 801 00:36:00,300 --> 00:36:03,790 dhe të dielave, e fundit e atyre qenë në pasdite me dizajn 802 00:36:03,790 --> 00:36:06,910 për të zvogëluar disa nga stresi që pa ndryshim lind me natën vonë 803 00:36:06,910 --> 00:36:10,180 p-settting me një afat looming-- por orarit të punës do të ofrohen 804 00:36:10,180 --> 00:36:14,920 hënën dhe të martën dhe të Të mërkurën, dhe të premten dhe të shtunave, 805 00:36:14,920 --> 00:36:17,080 falë miqve tanë në HSA. 806 00:36:17,080 --> 00:36:20,330 >> CS50 tani ka hapësirë ​​të vet për studentët dhe stafin CS50, 807 00:36:20,330 --> 00:36:23,070 në majë të 67 Mount Auburn Rruga, të drejtë ka në Harvard Square. 808 00:36:23,070 --> 00:36:26,340 Vizioni për të cilin është se CS50-së NGP dhe AK gjatë gjithë javës, 809 00:36:26,340 --> 00:36:29,052 shumë e shumë të gjithë më ditë, do të jetë atje për mbështetje. 810 00:36:29,052 --> 00:36:30,760 Pra, nëse ju keni marrë disa Pyetja në një p-grup 811 00:36:30,760 --> 00:36:33,093 ose ju jeni ndjeheni pak bllokuar ose pak i hutuar, 812 00:36:33,093 --> 00:36:35,640 dhe dreq, ju keni marrë një orë ose gjysmë ore në mes të klasave, 813 00:36:35,640 --> 00:36:38,920 sidomos në square-- mund të pop në dhe të ketë këtë pyetje u përgjigj 814 00:36:38,920 --> 00:36:41,720 e kanë atë konfuzion clarified-- shumë në shpirt, 815 00:36:41,720 --> 00:36:45,490 ju jeni të njohur, i math vetë qendra pyetje matematikës departamentit, 816 00:36:45,490 --> 00:36:49,300 por shumë e shumë rreth orën për [? Gcal?] Se ne do të postoni online. 817 00:36:49,300 --> 00:36:52,400 >> Tutoring është gjithashtu në dispozicion për ata i studentëve, të lirë nga rruga e 818 00:36:52,400 --> 00:36:54,750 Stafi i vet, nëse ju do të donte më intime një për një, 819 00:36:54,750 --> 00:36:58,940 ose dy ose tre shokët e klasës vetëm, duke punuar me një nga anëtarët e stafit të kursit. 820 00:36:58,940 --> 00:37:02,320 Dhe me të vërtetë, këto këtu janë vetëm disa nga anëtarët e stafit të kursit, 821 00:37:02,320 --> 00:37:04,120 disa prej të cilëve ju do takohen në një moment të vetëm. 822 00:37:04,120 --> 00:37:07,440 Në fakt, CS50 e vet Mësimi shokët kreu, 823 00:37:07,440 --> 00:37:09,790 dhe sigurisht kokë asistent, dhe preceptor, 824 00:37:09,790 --> 00:37:12,998 mund të vijë në dorë, të lejojë që ata të thonë hello. 825 00:37:12,998 --> 00:37:22,498 >> [DUARTROKITJE] 826 00:37:22,498 --> 00:37:23,456 Kryetari 1: [padëgjueshme]. 827 00:37:23,456 --> 00:37:51,842 828 00:37:51,842 --> 00:37:57,856 >> [DUARTROKITJE] 829 00:37:57,856 --> 00:37:58,814 SPEAKER 2: [padëgjueshme]. 830 00:37:58,814 --> 00:38:17,240 831 00:38:17,240 --> 00:38:27,238 >> [DUARTROKITJE] 832 00:38:27,238 --> 00:38:28,196 Kryetari 3: [padëgjueshme]. 833 00:38:28,196 --> 00:38:58,951 834 00:38:58,951 --> 00:39:03,120 >> [DUARTROKITJE] 835 00:39:03,120 --> 00:39:06,740 >> DAVID Malan: Dhe na lejojë të të sjellë në bordin e dytë të CS50-së më 836 00:39:06,740 --> 00:39:09,730 stafi i lartë, Rob dhe Zamayla si. 837 00:39:09,730 --> 00:39:15,120 >> [DUARTROKITJE] 838 00:39:15,120 --> 00:39:17,226 >> Në të vërtetë, si Rob dhe Zamayla kanë qenë me ne 839 00:39:17,226 --> 00:39:19,940 për kaq shumë kohë, që unë kam qenë në gjendje për të shkuar në arkivat CS50-së 840 00:39:19,940 --> 00:39:22,470 dhe për të gjetur këtë SD shumë pamjet e tyre të marrin pjesë 841 00:39:22,470 --> 00:39:25,402 në skenë vetë disa vite më parë. 842 00:39:25,402 --> 00:39:26,110 ROB: [padëgjueshme]. 843 00:39:26,110 --> 00:39:53,660 844 00:39:53,660 --> 00:39:59,247 >> [DUARTROKITJE] 845 00:39:59,247 --> 00:40:00,080 ZAMAYLA: [padëgjueshme] 846 00:40:00,080 --> 00:40:50,888 847 00:40:50,888 --> 00:40:52,467 >> [DUARTROKITJE] 848 00:40:52,467 --> 00:40:53,425 DAVID Malan: Ju faleminderit. 849 00:40:53,425 --> 00:40:56,160 850 00:40:56,160 --> 00:40:58,030 Pra, përveç këtyre Anëtarët e ekipit këtu, 851 00:40:58,030 --> 00:41:01,662 CS50 ka një ekip prej rreth 100 anëtarë të stafit, të gjithë prej të cilëve 852 00:41:01,662 --> 00:41:04,370 do të jetë në dispozicion për seksionet dhe të orarit të punës dhe shumë më tepër. 853 00:41:04,370 --> 00:41:06,920 Dhe siç thotë edhe Rob, kjo është rregullim më i rëndësishëm 854 00:41:06,920 --> 00:41:09,534 e CS50 në 10 vitet që Unë kam qenë në [padëgjueshme]. 855 00:41:09,534 --> 00:41:12,200 [Padëgjueshme] fokusuar sidomos në sigurimin e një strukture mbështetëse, 856 00:41:12,200 --> 00:41:14,050 zvogëlimin larg shumë pjesa më e madhe që ka qenë 857 00:41:14,050 --> 00:41:16,870 akumuluar në 10 vjet Zhvillimet e Përsëritës 858 00:41:16,870 --> 00:41:18,120 në grupe me probleme kurs së. 859 00:41:18,120 --> 00:41:21,470 >> Pra këtë vit, jo vetëm në klasë, por gjithashtu në formë të problemit të kursit 860 00:41:21,470 --> 00:41:24,800 grupe, ju duhet të gjeni gjëra të të jetë më i efektshëm, makinë prerëse, shumë 861 00:41:24,800 --> 00:41:26,700 më i dëgjueshëm se në vitet e kaluara, si ne 862 00:41:26,700 --> 00:41:31,330 derdhur një pjesë të bagazhit që është zhvilluar nga natyra e zhvillim vitit 863 00:41:31,330 --> 00:41:32,970 pas viti dhe iterating. 864 00:41:32,970 --> 00:41:35,110 Kështu reja dhe të përmirësuara fillon sot. 865 00:41:35,110 --> 00:41:37,860 >> Ju do të takohet me disa më shumë nga Stafi kurs të dalë në [e padëgjueshme] 866 00:41:37,860 --> 00:41:40,186 në 2:30, ku ne të shërbejë, si një traditë, tortë. 867 00:41:40,186 --> 00:41:42,060 Ka një tortë pak më shumë se kaq, por ju do të 868 00:41:42,060 --> 00:41:44,690 takohen Erin dhe Tobias dhe të tjerët ende. 869 00:41:44,690 --> 00:41:46,470 Dhe më lejoni t'ju jap një turne para se të dëgjojmë 870 00:41:46,470 --> 00:41:49,600 nga disa punonjës të tjerë në klasë, e atë që i pret si. 871 00:41:49,600 --> 00:41:52,730 Në fakt, ne gjithmonë të fillojë CS50-së Semestri kjo vjen shtunën, 872 00:41:52,730 --> 00:41:54,330 me atë që quhet Dita e CS50 Puzzle. 873 00:41:54,330 --> 00:41:56,710 >> Ajo nuk ka të bëjë me shkenca kompjuterike në vetvete, 874 00:41:56,710 --> 00:41:58,669 por me rreth problemit zgjidhjen më në përgjithësi. 875 00:41:58,669 --> 00:42:01,210 Dhe në qoftë se ju në mënyrë të zgjidhni për të marrë pjesë, per disa nga ftesat, 876 00:42:01,210 --> 00:42:03,460 ju mund të keni parë derën rënë ose në skenë këtu, 877 00:42:03,460 --> 00:42:05,830 kjo është një mundësi në ekipe e dy ose tre ose katër, 878 00:42:05,830 --> 00:42:10,680 për të marrë pjesë për puzzles dhe pica dhe shpërblime dhe more-- kjo e shtunë, 879 00:42:10,680 --> 00:42:12,560 stay tuned për më shumë. 880 00:42:12,560 --> 00:42:15,082 >> Ju do të gjeni shumë se çdo E premte, në Zjarri dhe Ice, 881 00:42:15,082 --> 00:42:16,790 ka CS50 sjellë një tërë bandë e studentëve 882 00:42:16,790 --> 00:42:19,100 për drekë, për të bërë një pjesë të madhe klasë të ndjehen më intime, 883 00:42:19,100 --> 00:42:21,820 dhe në përgjithësi sjellë së bashku alumni dhe miqtë nga industria 884 00:42:21,820 --> 00:42:24,710 të flasin për atë që ata kanë qenë deri në viti diplomimit. 885 00:42:24,710 --> 00:42:27,820 Në mënyrë të ngjashme, këtë vit, do të kemi përurojë parë ndonjëherë CS50 50 886 00:42:27,820 --> 00:42:31,390 kodim contest-- një mes të semestër mundësi për të lejuar të gjithë 887 00:42:31,390 --> 00:42:35,430 në një zgjedhë në bazë, për të patur një Sfida e lajthis kundër shokëve, 888 00:42:35,430 --> 00:42:39,250 përsëri në grupe prej dy apo tre apo katër, duke përdorur vetëm se programimi 889 00:42:39,250 --> 00:42:41,920 tru që pastaj kanë nën rrip tuaj pas vetëm gjashtë apo shtatë 890 00:42:41,920 --> 00:42:44,710 javë e klasës, dhe të marrin pjesë në këtë lloj të konkurrencës 891 00:42:44,710 --> 00:42:50,261 online-- qoftë se ju dëshironi për të grihë tuaj aftësitë e të gjithë më shumë në këtë sfidë. 892 00:42:50,261 --> 00:42:52,760 Në fund të semestrit është e ashtuquajtura CS50 Hackathon-- 893 00:42:52,760 --> 00:42:56,970 një mundësi që fillon në orën 7:00 PM përfundon në 7:00 të mëngjesit dhe gjatë rrugës 894 00:42:56,970 --> 00:43:01,900 12 orë të mbrëmjes, në të cilën të zhyten në project-- përfundimtar të kursit 895 00:43:01,900 --> 00:43:04,820 një mundësi për të hartuar dhe zbatuar më ndonjë gjë me interes 896 00:43:04,820 --> 00:43:06,980 për ju me mësimin tuaj udhëzime shokët e s. 897 00:43:06,980 --> 00:43:09,600 Rreth 9:00 AM bëjmë ne zakonisht shërbejnë pica, 1:00 AM, 898 00:43:09,600 --> 00:43:13,210 Philippe-së, si dhe disa prej nesh të cilët janë ende zgjuar në 5:00 të mëngjesit, 899 00:43:13,210 --> 00:43:16,310 janë dërguar me autobusë anijes poshtë Rruga për IHOP për mëngjes. 900 00:43:16,310 --> 00:43:19,340 >> Dhe pastaj disa ditë më vonë është e ashtuquajtura CS50 fare-- 901 00:43:19,340 --> 00:43:23,450 një fund të ekspozitës semestër në festimi i se sa larg aq shumë 902 00:43:23,450 --> 00:43:28,200 e CS50 studentë kanë ardhur nga Javën zero të gjitha mënyra për javë, 903 00:43:28,200 --> 00:43:32,610 dhe duke mbajtur parasysh se 73% e atyre Shokët e klasës dhe juaji këtë vit kanë 904 00:43:32,610 --> 00:43:34,840 asnjëherë nuk marrë një klasë CS para. 905 00:43:34,840 --> 00:43:39,226 Në fakt, të ritheksoj sa më shumë, këtu është pak fytyrat e më shumë nga stafi CS50 e. 906 00:43:39,226 --> 00:43:40,184 Kryetari 4: [padëgjueshme]. 907 00:43:40,184 --> 00:43:45,909 908 00:43:45,909 --> 00:43:46,867 SPEAKER 5: [padëgjueshme]. 909 00:43:46,867 --> 00:43:51,332 910 00:43:51,332 --> 00:43:52,290 SPEAKER 6: [padëgjueshme]. 911 00:43:52,290 --> 00:43:55,276 912 00:43:55,276 --> 00:43:56,234 SPEAKER 7: [padëgjueshme]. 913 00:43:56,234 --> 00:44:01,727 914 00:44:01,727 --> 00:44:02,643 SPEAKER 8: [padëgjueshme] 915 00:44:02,643 --> 00:44:10,066 916 00:44:10,066 --> 00:44:11,024 Kryetari 9: [padëgjueshme]. 917 00:44:11,024 --> 00:44:14,475 918 00:44:14,475 --> 00:44:15,461 >> Kryetari 4: [padëgjueshme]. 919 00:44:15,461 --> 00:44:16,461 >> SPEAKER 10: [padëgjueshme]. 920 00:44:16,461 --> 00:44:21,456 921 00:44:21,456 --> 00:44:23,438 SPEAKER 11: [padëgjueshme]. 922 00:44:23,438 --> 00:44:24,438 SPEAKER 12: [padëgjueshme]. 923 00:44:24,438 --> 00:44:30,438 924 00:44:30,438 --> 00:44:31,396 SPEAKER 13: [padëgjueshme] 925 00:44:31,396 --> 00:44:37,360 926 00:44:37,360 --> 00:44:40,342 >> SPEAKER 14: [padëgjueshme]. 927 00:44:40,342 --> 00:44:42,863 >> SPEAKER 13: [padëgjueshme]. 928 00:44:42,863 --> 00:44:43,821 SPEAKER 15: [padëgjueshme] 929 00:44:43,821 --> 00:44:48,785 930 00:44:48,785 --> 00:44:49,785 SPEAKER 16: [padëgjueshme]. 931 00:44:49,785 --> 00:44:53,761 932 00:44:53,761 --> 00:44:55,252 >> SPEAKER 11: [padëgjueshme] 933 00:44:55,252 --> 00:44:57,773 934 00:44:57,773 --> 00:44:58,731 SPEAKER 5: [padëgjueshme]. 935 00:44:58,731 --> 00:45:11,250 936 00:45:11,250 --> 00:45:15,130 DAVID Malan: Një pjesë e ekipit janë vetë pazar klasa. 937 00:45:15,130 --> 00:45:17,760 Por nëse ata anëtarë e stafit CS50 këtu, 938 00:45:17,760 --> 00:45:19,230 mund të vijnë në për vetëm një moment. 939 00:45:19,230 --> 00:45:23,450 CS50-së NGP dhe AK dhe [? Stafi?] Anëtarët here-- këto janë vetëm disa 940 00:45:23,450 --> 00:45:28,880 e një faces-- për të cilin ju vetëm pa, dhe një other-- disa dhe disa të tjerë 941 00:45:28,880 --> 00:45:30,020 akoma. 942 00:45:30,020 --> 00:45:33,242 Pse nuk shkojmë përpara dhe të lejojë ju djema një pushim pesë minuta. 943 00:45:33,242 --> 00:45:35,450 Nëse keni nevojë për të rosë jashtë për klasa dyqan, kjo është në rregull. 944 00:45:35,450 --> 00:45:38,900 Dhe në pesë minuta, ne do të rifillojë, duke marrë një vështrim në Scratch-- ku e para 945 00:45:38,900 --> 00:45:42,420 e gjuhës sonë të programimit, takohen Stafi i kursit këtu disa më shumë, 946 00:45:42,420 --> 00:45:45,020 dhe të përqëndrohet në fund të fundit në problemin vendosur zero. 947 00:45:45,020 --> 00:45:46,710 Pra, ne do të kthehet në pesë minuta. 1 00:45:46,864 --> 00:45:47,370 >> Në rregull. 2 00:45:47,370 --> 00:45:48,590 Pra, ne jemi të kthyer. 3 00:45:48,590 --> 00:45:51,330 Dhe në e mbetur tonë koha sot, qëllimi 4 00:45:51,330 --> 00:45:54,320 është për të nivelit fushën e lojës për sa i përket disa terminologjisë, 5 00:45:54,320 --> 00:45:55,297 për sa i përket disa ide. 6 00:45:55,297 --> 00:45:57,380 Sepse në të vërtetë, sipas disa nga Listat e mëparshme, 7 00:45:57,380 --> 00:46:00,130 atje do të jetë një varg i nivelet e përvojës në klasë, 8 00:46:00,130 --> 00:46:03,210 disa prej të cilëve studentë kanë marrë disa programe më parë, 9 00:46:03,210 --> 00:46:04,200 disa prej të cilëve nuk kanë. 10 00:46:04,200 --> 00:46:07,430 Dhe kështu me këtë problem parë vendosur dhe me këtë gjuhë e parë 11 00:46:07,430 --> 00:46:10,830 nuk kemi një mundësi për të filluar për të marrë për të dhënë, pasi sot 12 00:46:10,830 --> 00:46:12,960 disa të fjalorit të përbashkët dhe ide. 13 00:46:12,960 --> 00:46:15,590 >> Dhe ne do të bëjmë këtë me anë të languages-- parë kursit të 14 00:46:15,590 --> 00:46:21,070 përveç C dhe Python dhe JavaScript dhe SQL dhe HTML dhe CSS, 15 00:46:21,070 --> 00:46:24,450 ne do të jetë duke u përqëndruar fillimisht dhe vetëm për problemin vendosur zero 16 00:46:24,450 --> 00:46:28,160 në këtë gjuhë grafike, të quajtur Scratch, zhvilluar nga Media Lab MIT'S 17 00:46:28,160 --> 00:46:30,880 poshtë rrugës, për të ndihmuar studentët dhe fëmijët në veçanti 18 00:46:30,880 --> 00:46:35,070 shprehin veten e tyre algorithmically-- në një mënyrë më të qëndrueshme me atë 19 00:46:35,070 --> 00:46:37,300 mund ta quajmë të menduarit kompjuterike. 20 00:46:37,300 --> 00:46:40,985 >> Dhe kjo është një gjuhë e dobishme për shkak se shumë shpejt javën e ardhshme në javën e parë, 21 00:46:40,985 --> 00:46:44,360 nuk kemi kalimin në një më të gjuha tradicionale dhe misterioze të quajtur 22 00:46:44,360 --> 00:46:46,370 C, e cila është e pastër tekstuale. 23 00:46:46,370 --> 00:46:48,930 Ju vetëm përdorni tastierën tuaj në Për të shkruar udhëzimet 24 00:46:48,930 --> 00:46:50,230 si këto në ekran. 25 00:46:50,230 --> 00:46:52,840 Por edhe në qoftë se ju kurrë nuk kam parë një gjuhë programimi më parë, 26 00:46:52,840 --> 00:46:55,170 në vetëm glancing në kjo, të gjithë të jenë të fshehtë, 27 00:46:55,170 --> 00:47:00,010 ju ndoshta mund të mendoj se ndoshta printime Hello World. 28 00:47:00,010 --> 00:47:02,050 Por ka shumë të overhead sintaktik atje. 29 00:47:02,050 --> 00:47:05,770 Nuk është e pazakontë hash simboli apo hash tag up krye. 30 00:47:05,770 --> 00:47:08,900 Ka kllapa kënd, disa kllapa, formatimin e teksteve kaçurrel, gjysmë-colon-- 31 00:47:08,900 --> 00:47:11,880 ka vetëm aq shumë vizuale Sintaksa që merr në mënyrë. 32 00:47:11,880 --> 00:47:13,940 Ne fillim kursin me Scratch në mënyrë që të merrni 33 00:47:13,940 --> 00:47:17,600 kaluar të gjithë ata intelektuale jointeresant distractions, 34 00:47:17,600 --> 00:47:20,290 dhe në vend të kësaj të përqëndrohet në idetë. 35 00:47:20,290 --> 00:47:22,540 >> Në fakt, kjo mund të jetë përpara. 36 00:47:22,540 --> 00:47:24,830 Kjo, për këtë, javë do të jetë pas. 37 00:47:24,830 --> 00:47:26,760 Kjo, në këtë grafik Scratch gjuhës, 38 00:47:26,760 --> 00:47:29,870 është se si ju do të zbatojë të njëjtën program-- një program që kur të të drejtuar, 39 00:47:29,870 --> 00:47:31,340 thjesht thotë Hello World. 40 00:47:31,340 --> 00:47:34,740 Dhe çfarë është e mirë për Scratch është se është ky program grafike 41 00:47:34,740 --> 00:47:38,780 Mjedisi që përdor copa mister ose blloqe, se vetëm bashkoj së bashku 42 00:47:38,780 --> 00:47:40,440 nëse kjo ka kuptim logjik për ta bërë këtë. 43 00:47:40,440 --> 00:47:43,810 Dhe me Scratch mund të zhvilloni animacione dhe lojra interaktive 44 00:47:43,810 --> 00:47:47,270 dhe art, dhe çdo numër të gjërave që ju mund të imagjinoni në mendjen tuaj, 45 00:47:47,270 --> 00:47:51,200 dhe zbatimin e tyre thjesht duke zvarritur dhe duke rënë copa mister. 46 00:47:51,200 --> 00:47:54,265 >> Dhe me të vërtetë, ne do të kemi mundësinë për të shprehur disa nga të njëjtat ide 47 00:47:54,265 --> 00:47:56,890 që sapo përmenda një moment më parë në kontekstin e Mike Smith 48 00:47:56,890 --> 00:48:00,670 dhe të kërkoni një telefon book-- gjëra si funksionon, vetëm veprimet, 49 00:48:00,670 --> 00:48:03,070 gjëra të tilla si sythe që bëjnë gjëra përsëri dhe përsëri, 50 00:48:03,070 --> 00:48:05,170 variabla, e cila është diçka që ne do të prezantoj, 51 00:48:05,170 --> 00:48:08,086 por kjo është e njohur mbase nga algebra-- vetëm një lloj placeholder 52 00:48:08,086 --> 00:48:10,840 për të ruajtur disa vlera që ju mund të nevojë për shprehje Boolean later--, 53 00:48:10,840 --> 00:48:13,720 ku ata po jo apo e vërtetë pyetje të rremë nga para. 54 00:48:13,720 --> 00:48:17,117 Kushtet janë ato forks në road-- ato degë në mënyrë që të flasin. 55 00:48:17,117 --> 00:48:19,700 Dhe pastaj ka disa njohës Karakteristika ne do të shohim edhe sot, 56 00:48:19,700 --> 00:48:22,850 quajtur vargjeve dhe temat e ngjarje, që ne pastaj do të rishqyrtojnë gjatë 57 00:48:22,850 --> 00:48:24,460 Koha në gjuhë të ndryshme. 58 00:48:24,460 --> 00:48:26,790 Por Scratch na lejon për të shqyrtuar të gjitha këto. 59 00:48:26,790 --> 00:48:30,779 Kështu që këtu në Scratch, kjo purple bllok është ajo që një funksion është zakonisht 60 00:48:30,779 --> 00:48:31,570 do të duken si. 61 00:48:31,570 --> 00:48:35,620 Kjo pjesë mister purple se ka disa fjala si të themi, që është veprim, 62 00:48:35,620 --> 00:48:38,490 dhe pastaj ajo mund të ketë një Argumenti ose një parameter-- ndonjë mënyrë 63 00:48:38,490 --> 00:48:41,140 i këtij lloji të customizing ajo që e bën block 64 00:48:41,140 --> 00:48:45,182 në mënyrë që ajo nuk është para-përcaktuar nga MIT çfarë thotë ky bllok purple. 65 00:48:45,182 --> 00:48:47,390 Në fakt, ju do të shihni në një moment që unë jam në gjendje të tipit 66 00:48:47,390 --> 00:48:49,931 fjalët si botë përshëndetje, ose Përshëndetje David, apo përshëndetje Zamayla, 67 00:48:49,931 --> 00:48:53,750 apo çdo gjë që unë dua, në argumentin në atë mister piece-- kuti e bardhë 68 00:48:53,750 --> 00:48:54,251 atje. 69 00:48:54,251 --> 00:48:57,166 Ndërkohë, në qoftë se unë dua një lak, ne do të shihni se ka puzzle copë që 70 00:48:57,166 --> 00:48:58,640 shikoni një portokalli të vogël si kjo. 71 00:48:58,640 --> 00:49:01,690 Dhe forma e tyre lloj sugjeron se diçka ndodh përsëri dhe përsëri 72 00:49:01,690 --> 00:49:02,680 në një cikël. 73 00:49:02,680 --> 00:49:06,800 >> Pra, nëse unë të përfundojë një bllok thonë hello botë me një bllok përgjithmonë në Scratch, 74 00:49:06,800 --> 00:49:10,307 ajo është vetëm do të mbajë thënë përshëndetje Bota përgjithmonë, mjaft fjalë për fjalë. 75 00:49:10,307 --> 00:49:12,390 Ndërkohë, ka një tjetër lloj lak në Scratch 76 00:49:12,390 --> 00:49:14,348 se ne do të see-- një përsëritje block-- ku, në qoftë se ju 77 00:49:14,348 --> 00:49:17,940 ditur paraprakisht se sa herë ju dëshironi lak për të ekzekutuar 78 00:49:17,940 --> 00:49:21,850 një numër i caktuar i kohës në fact-- ju mund të specifikoni se nga shtypja në një numër 79 00:49:21,850 --> 00:49:25,380 apo edhe mbylljen në një variabël, si x apo y si ne do të shohim. 80 00:49:25,380 --> 00:49:27,690 >> Në të vërtetë, variabla si i në këtë rast, e cila 81 00:49:27,690 --> 00:49:30,109 është një emër i përbashkët për një variabël integer që 82 00:49:30,109 --> 00:49:31,900 vetëm ruan një number-- një numër të plotë mund të jetë, 83 00:49:31,900 --> 00:49:35,470 për të përdorur këtë bllok portokalli këtu për vendosur një ndryshore si i zeros. 84 00:49:35,470 --> 00:49:38,900 Ja një shembull në të gjelbër e një shprehje Boolean në Scratch. 85 00:49:38,900 --> 00:49:43,700 Edhe pse kjo duket si një matematikë formula, pabarazitë matematikës si kjo 86 00:49:43,700 --> 00:49:45,320 me të vërtetë janë shprehje Boolean. 87 00:49:45,320 --> 00:49:46,570 Kjo është ose e vërtetë apo e rreme. 88 00:49:46,570 --> 00:49:48,300 I është më pak se 50. 89 00:49:48,300 --> 00:49:51,815 Kjo është ose një po ose jo përgjigje ose përgjigje të vërtetë apo e rreme. 90 00:49:51,815 --> 00:49:53,940 Dhe ne në përgjithësi do të thërrasë këto shprehje Boolean. 91 00:49:53,940 --> 00:49:55,148 Dhe kjo nuk duhet të jetë 50. 92 00:49:55,148 --> 00:49:57,970 Ajo mund të jetë më pak se x y, më i madh se y, e barabartë me y-- 93 00:49:57,970 --> 00:50:00,020 çdo numër të tjera Pyetjet mund të kërkohet. 94 00:50:00,020 --> 00:50:03,250 >> Tani, në shikim të parë, kjo mund të duket papritmas mjaft të guximshme këtu, dhe kjo është. 95 00:50:03,250 --> 00:50:06,540 Por koncepti i mençur, është e mjaft të njohur nga më parë. 96 00:50:06,540 --> 00:50:09,370 Nëse x është më pak se y, se thonë se sa më shumë. 97 00:50:09,370 --> 00:50:12,230 Tjetër në qoftë se x është më i madh se y, pastaj të thotë sa më shumë. 98 00:50:12,230 --> 00:50:14,260 Tjetër të thënë x është i barabartë me y. 99 00:50:14,260 --> 00:50:17,220 Pra, ne kemi një shembull ka një scenario-- tretë 100 00:50:17,220 --> 00:50:20,600 e vetmja tretë possibility-- x është ose madhe se, më pak se, ose e barabarte me. 101 00:50:20,600 --> 00:50:22,420 Pra, ne kemi një pirun me tre mënyra në rrugë. 102 00:50:22,420 --> 00:50:26,290 >> Dhe njoftim se çfarë është e ftohtë Scratch here--, kjo do të duket, ka vetëm një mister 103 00:50:26,290 --> 00:50:28,840 pjesë, në këtë rast, në nëse tjetër bllok. 104 00:50:28,840 --> 00:50:32,090 E megjithatë, kjo do të duket se nënkuptojnë ju mund të vetëm një pirun dy mënyra në rrugë. 105 00:50:32,090 --> 00:50:34,631 Ju mund të shkoni majtas ose djathtas, por çka në lidhje me këtë skenar të tretë? 106 00:50:34,631 --> 00:50:35,760 Po në qoftë se x është e barabartë me y? 107 00:50:35,760 --> 00:50:36,500 Ndonjë gjë e madhe. 108 00:50:36,500 --> 00:50:39,640 Merr një copë mister, vendos një tjetër brenda saj 109 00:50:39,640 --> 00:50:45,759 për të krijuar ekuivalentin semantik e në qoftë se, në qoftë tjetër, else-- dhe tani ju 110 00:50:45,759 --> 00:50:47,300 kanë të tre mënyrë pirun në rrugë. 111 00:50:47,300 --> 00:50:49,091 Dhe si ne do të shohim, copa mister Scratch 112 00:50:49,091 --> 00:50:51,820 mund të shtrirë dhe të rritet, kështu që si për të mbushur më shumë gjëra në to. 113 00:50:51,820 --> 00:50:54,420 Ju nuk keni për të përshtaten çdo gjë në madhësinë e saj default. 114 00:50:54,420 --> 00:50:56,690 >> Kjo është diçka që ne do të shpejt shih quhet një grup. 115 00:50:56,690 --> 00:51:00,880 Është si një list-- disa mënyrë të ruajtjen copa të shumta të informacionit 116 00:51:00,880 --> 00:51:02,886 në një variabël, jo vetëm një numër. 117 00:51:02,886 --> 00:51:05,760 Këto ne do të shohim një përfaqësues të diçka e quajtur multi-fillesë. 118 00:51:05,760 --> 00:51:08,280 Në fakt, të gjithë tuaj Macs dhe PC këto ditë 119 00:51:08,280 --> 00:51:10,810 mbështetur multi-fillesë, që do të thotë se ju mund të vërtetë 120 00:51:10,810 --> 00:51:12,390 bëjë gjëra të shumta në një kohë. 121 00:51:12,390 --> 00:51:15,390 Ju mund të keni Microsoft Word deri në dukshëm, duke punuar në një ese. 122 00:51:15,390 --> 00:51:17,160 Ju mund të keni një shfletues në hapjen sfond 123 00:51:17,160 --> 00:51:18,720 G-mail, ose Facebook, ose si. 124 00:51:18,720 --> 00:51:22,730 Kompjuteri juaj mund të bëjë gjëra të shumta sot, për shkak se ajo është multi-i ndërprerë, 125 00:51:22,730 --> 00:51:26,390 dhe programet e ata janë në në të veçantë janë edhe multi-i ndërprerë. 126 00:51:26,390 --> 00:51:28,970 >> Ka gjëra quajtur ngjarje si edhe në botën e Scratch, 127 00:51:28,970 --> 00:51:32,640 dhe pastaj nuk ka një mënyrë shumë, për të bërë copa tona të puzzle custom nëse gjërat 128 00:51:32,640 --> 00:51:34,810 në fakt nuk ekzistojnë paraprakisht. 129 00:51:34,810 --> 00:51:38,260 Pra, le të motivuar këtë si më poshtë. 130 00:51:38,260 --> 00:51:40,580 Disa vite më parë, kur unë së pari zbuloi Scratch, 131 00:51:40,580 --> 00:51:43,530 kur unë ishte në fakt një Studenti grad në MIT, ne 132 00:51:43,530 --> 00:51:45,640 vetë u ngarkuar për të bërë detyrat e shtëpisë. 133 00:51:45,640 --> 00:51:47,614 Dhe unë implemented-- të cilat, në retrospektivë, 134 00:51:47,614 --> 00:51:50,780 ishte një vendim shumë të varfër për shkak se është kënga më e egërsuar në botë 135 00:51:50,780 --> 00:51:53,321 për të dëgjuar për tetë orë duke punuar në homework-- tuaj 136 00:51:53,321 --> 00:51:57,180 por diçka që unë e thërres Oscar Time, e cila është ndoshta një këngë të njohur. 137 00:51:57,180 --> 00:51:59,820 >> CS50s vetë Jordan Hayashi, një nga më shumë anëtarë të lartë të stafit, 138 00:51:59,820 --> 00:52:03,920 ka përmirësuar atë për vitin 2015 dhe tani 2016 që nga mbrapa në ditë, 139 00:52:03,920 --> 00:52:06,610 Unë kisha çdo gjë vetëm do në Oscar plehra mund. 140 00:52:06,610 --> 00:52:09,320 Tani ne mbështesim riciklimin dhe kompostimin. 141 00:52:09,320 --> 00:52:12,050 >> Por për të pikturuar foto e asaj që ne mund të bëjmë këtu 142 00:52:12,050 --> 00:52:14,130 dhe për të motivuar disa nga shembujt e nivelit më të ulët, 143 00:52:14,130 --> 00:52:16,400 mund të marrim një tjetër vullnetar për të dalë vetëm në dorë 144 00:52:16,400 --> 00:52:18,331 dhe luajnë ime e parë detyrat e shtëpisë caktimi ndonjëherë? 145 00:52:18,331 --> 00:52:18,830 Eja up. 146 00:52:18,830 --> 00:52:19,250 Si e ke emrin? 147 00:52:19,250 --> 00:52:20,030 >> HENRY: Henry. 148 00:52:20,030 --> 00:52:22,660 >> DAVID Malan: Henry, eja up. 149 00:52:22,660 --> 00:52:24,190 Eja up. 150 00:52:24,190 --> 00:52:27,070 Kokë as mënyrë, dhe ju do të shihni në një moment, 151 00:52:27,070 --> 00:52:29,870 Unë jam duke shkuar për të shkuar përpara dhe e goditi flamuri gjelbër në anën e sipërm të djathtë 152 00:52:29,870 --> 00:52:31,100 qoshe, që do të thotë shko. 153 00:52:31,100 --> 00:52:33,320 Shenja ikonë të vogël të ndaluar do të thotë të ndaluar, 154 00:52:33,320 --> 00:52:35,490 dhe kjo është kur ju filloni dhe të ndaluar programin. 155 00:52:35,490 --> 00:52:36,450 Gëzohem që u njohëm. 156 00:52:36,450 --> 00:52:36,950 Në rregull. 157 00:52:36,950 --> 00:52:39,100 Pra, ne jemi duke shkuar për të parë udhëzimet në ekran në një moment të vetëm. 158 00:52:39,100 --> 00:52:41,450 Dhe vetëm duke luajtur këtë lojë për disa seconds-- besimin mua, 159 00:52:41,450 --> 00:52:43,670 ne nuk do të duan të luajnë të gjitha mënyra për të end-- ju do të 160 00:52:43,670 --> 00:52:45,470 të marrë një kuptim të asaj që e bën programi. 161 00:52:45,470 --> 00:52:49,170 Dhe më shumë se vetëm të përqëndrohet në Henry duke qenë i mirë apo i keq në këtë lojë, fokus 162 00:52:49,170 --> 00:52:52,600 dhe si u zbatua nga mua fillimisht dhe më pas nga Jordani. 163 00:52:52,600 --> 00:52:54,640 Me fjalë të tjera, ku janë variablat? 164 00:52:54,640 --> 00:52:55,520 Ku janë sythe? 165 00:52:55,520 --> 00:52:56,520 Ku janë funksionet? 166 00:52:56,520 --> 00:53:00,700 Dhe ne do të shohim nëse ne nuk e shohim ata nën kapuç. 167 00:53:00,700 --> 00:53:03,660 >> Vetëm kliko dhe terhiq plehra në bin e duhur. 168 00:53:03,660 --> 00:54:02,100 >> [MUSIC Duke luajtur] 169 00:54:02,100 --> 00:54:02,600 Në rregull. 170 00:54:02,600 --> 00:54:03,160 Kjo eshte shume e mire. 171 00:54:03,160 --> 00:54:04,286 Pse nuk ndalet atje. 172 00:54:04,286 --> 00:54:04,786 Faleminderit. 173 00:54:04,786 --> 00:54:05,830 Urime për Henry. 174 00:54:05,830 --> 00:54:07,002 Faleminderit. 175 00:54:07,002 --> 00:54:10,690 >> [DUARTROKITJE] 176 00:54:10,690 --> 00:54:12,450 >> Vetëm imagjinoni debugging atë program. 177 00:54:12,450 --> 00:54:15,880 Në qoftë se ka një problem të dy Në song--, por më shumë minuta 178 00:54:15,880 --> 00:54:17,430 çfarë po ndodh këtu me të vërtetë? 179 00:54:17,430 --> 00:54:20,900 Si e komplikuar si ajo mund të të fillojë të duket për të marrë me kalimin e kohës, 180 00:54:20,900 --> 00:54:22,910 vërtetë gjithnjë e më shumë sende filluar në rënie, 181 00:54:22,910 --> 00:54:25,370 çfarë është interesante në lidhje me ky lloj i example-- 182 00:54:25,370 --> 00:54:27,270 dhe ne do të shohim disa others-- është se në qoftë se ju 183 00:54:27,270 --> 00:54:30,416 shikoni kaluara kompleksiteti ose sofistikimi i lojës, 184 00:54:30,416 --> 00:54:33,040 ka një ndërtesë shumë e thjeshtë blloqe që play-- gjitha prej të cilave, 185 00:54:33,040 --> 00:54:35,840 në qoftë se ju gjej ato me ato blloqe ndërtimi, janë shumë të arritshme 186 00:54:35,840 --> 00:54:37,401 dhe të zbatueshme për vete. 187 00:54:37,401 --> 00:54:39,150 Për shembull, është e qenë disa kohë, por unë jam i 188 00:54:39,150 --> 00:54:42,900 goxha i sigurt se çfarë unë fillimisht e bëri kur duke e bërë këtë lojë për herë të parë 189 00:54:42,900 --> 00:54:44,787 ishte I tërësisht si zvarriten. 190 00:54:44,787 --> 00:54:47,120 Unë nuk të përqëndrohet në të gjitha mbi të Logjika apo copa mister, 191 00:54:47,120 --> 00:54:50,810 I fokusuar në grafikë dhe gjetjen post rrugë dhe plehra mund 192 00:54:50,810 --> 00:54:51,540 dhe të gjithë se. 193 00:54:51,540 --> 00:54:53,456 Por ata ishin të nevojshme Përbërësit në fillim. 194 00:54:53,456 --> 00:54:57,220 Dhe një herë kam mbaruar procrastinating dhe hedhjen kornizën gjithëpërfshirës, 195 00:54:57,220 --> 00:55:00,337 I vendosur, më lejoni vetëm të bëjë një të tillë pjesë e rënies plehra nga qielli. 196 00:55:00,337 --> 00:55:02,170 Dhe ne do të shohim Scratch mbështet gjëra të quajtur 197 00:55:02,170 --> 00:55:06,386 karaktere sprites-- që mund të kanë kostume të ndryshme në mënyrë që ata 198 00:55:06,386 --> 00:55:07,010 duken të ndryshme. 199 00:55:07,010 --> 00:55:09,660 >> Dhe kështu që kam vënë një plehra kostum në një sprite tillë. 200 00:55:09,660 --> 00:55:12,007 Dhe unë vetëm nevojë për atë të bien nga qielli. 201 00:55:12,007 --> 00:55:14,590 Dhe kështu kjo rezulton, Scratch, si shumica e gjuhëve të programimit, 202 00:55:14,590 --> 00:55:18,099 mbështet numrat e rastit, ose Numrat teknikisht pseudokod rastit, 203 00:55:18,099 --> 00:55:20,390 në mënyrë që duke e zvarritur dhe duke rënë copa të caktuara mister, 204 00:55:20,390 --> 00:55:22,890 Unë kam qenë në gjendje të ketë plehra vijnë nga e majta në të parë. 205 00:55:22,890 --> 00:55:25,580 Dhe pastaj herën tjetër ajo ra, nga e drejta dhe pastaj nga mesi. 206 00:55:25,580 --> 00:55:28,060 Dhe të gjithë loja e bëri ishte vetëm kanë plehra bie nga qielli. 207 00:55:28,060 --> 00:55:29,770 Ju nuk mund të vënë në atë apo të klikoni mbi të. 208 00:55:29,770 --> 00:55:31,103 Ju nuk mund të hapni plehra mund. 209 00:55:31,103 --> 00:55:32,160 Ju nuk mund të bëjë asgjë. 210 00:55:32,160 --> 00:55:34,450 Por kjo ishte një hap fëmijë drejt vizionit tim përfundimtar. 211 00:55:34,450 --> 00:55:36,720 >> Dhe pas kësaj, unë në fakt zbatuar një lloj 212 00:55:36,720 --> 00:55:41,230 i ndjerë kështu që nëse ju nuk klikoni dhe terhiq në copë plehra 213 00:55:41,230 --> 00:55:44,350 mbi kanaçe plehra, Oscar-së kapak do të hapur dhe të mbyllur. 214 00:55:44,350 --> 00:55:47,650 Asgjë nuk do të ndodhë me plehra, por të paktën kapak do të hapur dhe të mbyllur. 215 00:55:47,650 --> 00:55:49,642 Pra, atëherë kontrolloni, hap dy nga dy. 216 00:55:49,642 --> 00:55:52,100 Dhe kjo është ajo që do të jetë kryesore në të dy problemin vendosur zero 217 00:55:52,100 --> 00:55:55,970 dhe në programimin më në përgjithësi, është që të marrë këto hapa shumë të qëllimshme të fëmijës. 218 00:55:55,970 --> 00:55:59,390 Sepse jo vetëm që e bën atë të ju lejojnë të të ndjehen të arritur sinqerisht më shumë 219 00:55:59,390 --> 00:56:01,250 quickly-- kjo është gjëja më e keqe në botë 220 00:56:01,250 --> 00:56:06,149 në përpjekje për të zbatuar të gjitha Oscar Time, pastaj orë më vonë goditi flamurin e gjelbër, 221 00:56:06,149 --> 00:56:08,440 dhe asgjë nuk punon ashtu siç pritet sepse kur bëni ju edhe 222 00:56:08,440 --> 00:56:11,150 fillojnë të korrigjoj ose troubleshoot atë program? 223 00:56:11,150 --> 00:56:12,470 Është vetëm e madhe. 224 00:56:12,470 --> 00:56:16,792 >> Dhe kështu të vërtetë të përqafuar këtë ide të marrë hapa të fëmijës steps-- përsëri 225 00:56:16,792 --> 00:56:19,000 dhe again-- ndërtimin e diçka që është, në fund të fundit, 226 00:56:19,000 --> 00:56:23,672 me të vërtetë mbresëlënëse dhe komplekse, por në fillim, nuk është gati aq shumë në mënyrë. 227 00:56:23,672 --> 00:56:24,630 Në fakt, le ta bëjmë këtë. 228 00:56:24,630 --> 00:56:28,989 Më lejoni të shkojnë përpara and-- Scratch veten ekziston në internet në Scratch.MIT.edu, 229 00:56:28,989 --> 00:56:30,780 dhe ju do të jetë i tha si shumë herë në problemin 230 00:56:30,780 --> 00:56:34,200 vendosur zero, specifikimet për e cila tashmë është në faqen e internetit CS50 e. 231 00:56:34,200 --> 00:56:35,725 >> Por kjo është ajo që Scratch vetvete është. 232 00:56:35,725 --> 00:56:38,210 Dhe nuk ka të vërtetë vetëm tri fusha kryesore. 233 00:56:38,210 --> 00:56:40,980 Në krye la atje është e ashtuquajtura faza. 234 00:56:40,980 --> 00:56:41,810 Kjo është Scratch. 235 00:56:41,810 --> 00:56:43,710 Kostum parazgjedhur është një mace. 236 00:56:43,710 --> 00:56:46,950 Dhe kjo është bota drejtkëndëshe në të cilat ju mund të move-- lart, poshtë, majtas, 237 00:56:46,950 --> 00:56:48,130 të drejtë dhe disa sende të tjera. 238 00:56:48,130 --> 00:56:51,839 Në mes këtu janë kategoritë tona ose paleta tona të pjesëve puzzle, 239 00:56:51,839 --> 00:56:53,630 dhe ngjyra të ndryshme do të thotë gjëra të ndryshme. 240 00:56:53,630 --> 00:56:56,520 Dhe në qoftë se ju të thes rreth, ju do të shihni gjëra të tilla si sythe dhe kushtet 241 00:56:56,520 --> 00:56:58,160 dhe variablave dhe përbërës të tjerë. 242 00:56:58,160 --> 00:57:00,060 >> Dhe pastaj këtu është zona scripts. 243 00:57:00,060 --> 00:57:03,020 Kjo është ajo ku unë mund të drag and drop ato copa mister për të bërë gjëra. 244 00:57:03,020 --> 00:57:04,690 Pra, le ta bëjmë një gjë të tillë. 245 00:57:04,690 --> 00:57:06,630 Më lejoni të shkojnë përpara and-- dhe unë e di ku është. 246 00:57:06,630 --> 00:57:10,110 Kështu që unë jam duke shkuar për të menjëherë të klikoni në ku di gjërat janë të gatshëm të jenë të, 247 00:57:10,110 --> 00:57:13,140 por duke treguar dhe duke klikuar dhe poking rreth janë të pashmangshme. 248 00:57:13,140 --> 00:57:15,320 Pra, kur flamuri gjelbër klikuar, çfarë unë dua të bëj? 249 00:57:15,320 --> 00:57:17,100 Unë jam duke shkuar për të bërë këtë. 250 00:57:17,100 --> 00:57:20,699 Unë jam duke shkuar për të drag këtë mister purple copë, thonë hello për dy sekonda, 251 00:57:20,699 --> 00:57:21,490 dhe më lejoni të zmadhuar. 252 00:57:21,490 --> 00:57:23,865 >> Dhe unë jam duke shkuar për të ndryshuar këtë të jetë ajo që unë dua që ajo të be-- 253 00:57:23,865 --> 00:57:26,471 Hello World për dy sekonda është e mirë. 254 00:57:26,471 --> 00:57:28,970 Tani, unë jam duke shkuar për të klikoni flamur të gjelbër, ose në qoftë se unë me të vërtetë dua, 255 00:57:28,970 --> 00:57:31,820 Unë mund të të plotë të ekranit dhe pastaj kthehen. 256 00:57:31,820 --> 00:57:34,060 Ajo thjesht do të mbajë çdo gjë në një dritare. 257 00:57:34,060 --> 00:57:36,141 Green world flag-- përshëndetje. 258 00:57:36,141 --> 00:57:36,640 Në rregull. 259 00:57:36,640 --> 00:57:38,789 Jo të gjithë se interesante. 260 00:57:38,789 --> 00:57:40,080 Pra më lejoni të shkoj përpara dhe të bëjë këtë. 261 00:57:40,080 --> 00:57:41,038 Më lejoni të provoni një tjetër. 262 00:57:41,038 --> 00:57:44,740 Kur flamuri gjelbër clicked-- le të bëjë diçka si një tingull. 263 00:57:44,740 --> 00:57:46,880 Dhe vini re se nga kutia falas ju merrni 264 00:57:46,880 --> 00:57:49,910 një zë mace, siç është Sprite default. 265 00:57:49,910 --> 00:57:52,380 Kështu që tani më lejoni të shkoj përpara dhe të goditi flamurin e gjelbër tani. 266 00:57:52,380 --> 00:57:53,224 >> [Meowing] 267 00:57:53,224 --> 00:57:54,490 >> Aw. 268 00:57:54,490 --> 00:57:55,370 Kjo është adorable. 269 00:57:55,370 --> 00:57:57,040 Unë jam programimit. 270 00:57:57,040 --> 00:57:58,550 Pra, çfarë kam bërë? 271 00:57:58,550 --> 00:58:00,430 Kjo është ekuivalente e një programi. 272 00:58:00,430 --> 00:58:01,600 Është padyshim super thjeshtë. 273 00:58:01,600 --> 00:58:05,300 Ajo nuk ka të vërtetë të marrë të gjithë se shumë përpjekje dhe MIT bënë shumica e punës, 274 00:58:05,300 --> 00:58:07,890 por unë ju kam quajtur një funksion. 275 00:58:07,890 --> 00:58:08,940 Unë kam përdorur një funksion. 276 00:58:08,940 --> 00:58:12,480 Unë kam bërë disa veprime, duke përdorur vetëm se një pjesë purple puzzle. 277 00:58:12,480 --> 00:58:15,960 >> E pra, në qoftë se unë dua të bëj tre Meows në një rresht? 278 00:58:15,960 --> 00:58:18,570 Më lejoni të shkojnë përpara dhe të bëjë dy dhe tre. 279 00:58:18,570 --> 00:58:20,910 Dhe vini re se kur ju rri pezull aty pranë një pjesë mister, 280 00:58:20,910 --> 00:58:22,970 një linjë të vogël të bardhë shfaqet lloj magnetically, 281 00:58:22,970 --> 00:58:25,190 dhe ajo do të parakohshme së bashku, kur ju le të shkojnë. 282 00:58:25,190 --> 00:58:26,600 Le të shohim se çfarë ndodh këtu. 283 00:58:26,600 --> 00:58:27,920 >> [Meowing] 284 00:58:27,920 --> 00:58:32,390 285 00:58:32,390 --> 00:58:34,510 >> Ka një bug. 286 00:58:34,510 --> 00:58:35,650 Unë vetëm të dëgjoj një Meow. 287 00:58:35,650 --> 00:58:37,440 Pse mund që të jetë? 288 00:58:37,440 --> 00:58:39,001 Po? 289 00:58:39,001 --> 00:58:39,500 Po. 290 00:58:39,500 --> 00:58:41,650 Ne vërtetë nuk e dëgjoni këtë, por kjo është intuita e mirë. 291 00:58:41,650 --> 00:58:43,400 Ata janë të gjithë duke luajtur në të njëjtën kohë. 292 00:58:43,400 --> 00:58:44,000 Pse? 293 00:58:44,000 --> 00:58:46,587 E pra, kompjuteri është vetëm do të bëni atë që ju them se për të bërë. 294 00:58:46,587 --> 00:58:48,670 Pra, nëse ju thoni, tingull play, luaj tingull, luajnë të shëndoshë, 295 00:58:48,670 --> 00:58:52,887 por ju nuk e thoni atë për të luajtur deri në ju jeni bërë, të luajë derisa ju jeni bërë, 296 00:58:52,887 --> 00:58:54,970 ajo do të hidhte në erë me anë të programi i vërtetë i shpejtë 297 00:58:54,970 --> 00:58:56,830 dhe nuk vetëm atë që ju them se për të bërë. 298 00:58:56,830 --> 00:58:59,040 >> Kështu që unë në fakt kanë nevojë për të rregulluar këtë në disa mënyra. 299 00:58:59,040 --> 00:59:00,623 Unë vetëm mund të bëjë këtë, të shpëtoj prej kësaj. 300 00:59:00,623 --> 00:59:04,180 Më lejoni të provoni këtë mister të tjera piece-- luajnë Meow shëndoshë deri bërë, 301 00:59:04,180 --> 00:59:07,072 dhe pastaj terhiq tre këto dhe kliko Play. 302 00:59:07,072 --> 00:59:09,430 >> [Meowing] 303 00:59:09,430 --> 00:59:13,350 >> Kjo nuk është e vërtetë very-- falënderoj ju, duke filluar shumë e natyrshme. 304 00:59:13,350 --> 00:59:16,590 Pra, pse nuk e le I-- shkoj për të kontrolluar këtu. 305 00:59:16,590 --> 00:59:17,090 Bukur. 306 00:59:17,090 --> 00:59:22,230 Prisni një të dytë, dhe tani më lejoni të kthehem të tingujve, dhe të shëndoshë të luajë deri bërë, 307 00:59:22,230 --> 00:59:24,620 dhe pastaj më lejoni të prisni një të dytë. 308 00:59:24,620 --> 00:59:28,692 Dhe pastaj më lër të shkoj dhe për të marrë një të tillë më të shëndoshë, dhe këtu ne do të shkojmë. 309 00:59:28,692 --> 00:59:31,350 >> [Meowing] 310 00:59:31,350 --> 00:59:35,930 >> Pak më e natyrshme, por kjo nuk është shumë efikas. 311 00:59:35,930 --> 00:59:39,830 Ashtu si unë isha duke u mërzitur, të gjithë të jenë të ai shkurtimisht, duke klikuar mbrapa dhe me radhë 312 00:59:39,830 --> 00:59:42,724 dhe me të vërtetë dublikuar work-- tim shumë e shumë kopjimi dhe pasting. 313 00:59:42,724 --> 00:59:44,640 Në të vërtetë, në qoftë se unë Kontrollit klikuar ose djathtas klikuar, 314 00:59:44,640 --> 00:59:46,500 Unë mund të ketë kopjuar vetëm dhe ngjit. 315 00:59:46,500 --> 00:59:49,870 Çfarë do të jetë një më të mirë të ndërtuar për të përdorur? 316 00:59:49,870 --> 00:59:51,090 Cilat ide para? 317 00:59:51,090 --> 00:59:51,990 >> Yeah, kështu që një lak. 318 00:59:51,990 --> 00:59:54,580 Dhe në fakt, në qoftë se ne poked rreth, ne mund të gjeni pikërisht këtë. 319 00:59:54,580 --> 00:59:57,730 Më lejoni të shkoj në ngjarjet ose më mirë Kontrollit. 320 00:59:57,730 --> 00:59:59,650 Kështu repeat-- Unë nuk duan që ajo të jetë 10 herë. 321 00:59:59,650 --> 01:00:01,370 Kjo do të merrni bezdisshëm shpejt. 322 01:00:01,370 --> 01:00:03,380 Por unë do të të përsëritur tri herë. 323 01:00:03,380 --> 01:00:06,355 Më lejoni të kthehem të shëndosha dhe të luajë zërin derisa ajo është bërë. 324 01:00:06,355 --> 01:00:08,480 Më lejoni të kthehemi në Kontrollin dhe vetëm të presim një të dytë. 325 01:00:08,480 --> 01:00:10,271 Dhe vini re, ju mund të mendoj se kjo nuk i përshtatet, 326 01:00:10,271 --> 01:00:13,520 por përsëri në qoftë se ju le atë magnetike të parakohshme në vend, ajo do të rritet për të mbushur. 327 01:00:13,520 --> 01:00:14,971 Çfarë është ajo luaj tani? 328 01:00:14,971 --> 01:00:18,500 >> [Meowing] 329 01:00:18,500 --> 01:00:19,000 NE RREGULL. 330 01:00:19,000 --> 01:00:19,660 Bukur. 331 01:00:19,660 --> 01:00:22,540 Dhe kjo është ajo që do të quhet një program i cili është gjithashtu i saktë. 332 01:00:22,540 --> 01:00:27,590 Ajo meowed tre herë në mënyrë të drejtë natyrisht, por është e projektuar mirë. 333 01:00:27,590 --> 01:00:29,580 Unë jam duke përdorur më pak tepricë. 334 01:00:29,580 --> 01:00:30,970 Unë nuk kopjoni dhe ngjisni asgjë. 335 01:00:30,970 --> 01:00:32,470 Unë vetëm përdorur një ide më të mirë. 336 01:00:32,470 --> 01:00:35,340 >> Tani, kjo nuk është ende e gjitha që interesante me Scratch nuk ka bërë 337 01:00:35,340 --> 01:00:35,930 çdo gjë. 338 01:00:35,930 --> 01:00:37,388 Pra, le të bëjë diçka tjetër në vend. 339 01:00:37,388 --> 01:00:38,670 Le të bëjmë diçka përgjithmonë. 340 01:00:38,670 --> 01:00:39,420 Dhe ju e dini se çfarë? 341 01:00:39,420 --> 01:00:40,470 Motion duket interesante. 342 01:00:40,470 --> 01:00:45,760 Le të ketë atë të lëvizë 10 hapat dhe goditi luajnë tani. 343 01:00:45,760 --> 01:00:46,570 >> NE RREGULL. 344 01:00:46,570 --> 01:00:49,300 Edhe ne mund të lloj terhiq atë mbrapa, dhe ai është ende 345 01:00:49,300 --> 01:00:51,250 drejtimin për shkak se ai e bën këtë përgjithmonë. 346 01:00:51,250 --> 01:00:53,150 Pra, loop është duke bërë ajo që është thënë për të bërë, 347 01:00:53,150 --> 01:00:54,650 por kjo nuk është e gjitha se interesante. 348 01:00:54,650 --> 01:00:55,310 Le ta bejme kete. 349 01:00:55,310 --> 01:00:59,870 Më lejoni të shtoj një bllok të kontrollit, dhe të përdorin një të tillë e këtyre kushteve për herë të parë. 350 01:00:59,870 --> 01:01:03,119 >> Kështu ajo do të shkojë 10 steps-- 10 pika, 10 pixel në screen-- 351 01:01:03,119 --> 01:01:04,660 atëherë ajo do të kërkoni këtë pyetje. 352 01:01:04,660 --> 01:01:09,340 Nëse diçka është e vërtetë, atëherë bëni diçka brenda këtij blloku. 353 01:01:09,340 --> 01:01:13,060 Pra, ajo rezulton sensing ka një tërësi bandë e expressions-- Boolean 354 01:01:13,060 --> 01:01:16,580 Pyetjet e po jo apo e vërtetë false form-- më lejoni të bëjë këtë. 355 01:01:16,580 --> 01:01:19,260 >> Nëse touching-- dhe pastaj nuk ka kjo rënie e vogël down menu. 356 01:01:19,260 --> 01:01:20,410 Unë mund të parameterize atë. 357 01:01:20,410 --> 01:01:23,010 Nëse prekur edge-- le të bëjë diçka të tillë. 358 01:01:23,010 --> 01:01:27,310 Pra, nëse prekur edge-- më lejoni të shkoj përsëri në lëvizje. 359 01:01:27,310 --> 01:01:32,281 Dhe pse nuk kemi vetëm të kthehet rreth 180 gradë? 360 01:01:32,281 --> 01:01:32,780 Në rregull. 361 01:01:32,780 --> 01:01:35,070 Pra përgjithmonë, lëvizin 10 hapa. 362 01:01:35,070 --> 01:01:37,670 Nëse jeni të prekur edge, të kthehet 180 gradë. 363 01:01:37,670 --> 01:01:39,720 Dhe kjo nuk është fundi i programit sepse ju jeni në një bllok përgjithmonë, 364 01:01:39,720 --> 01:01:42,053 kështu që ajo do të shkojë përsëri dhe përsëri dhe përsëri dhe përsëri. 365 01:01:42,053 --> 01:01:43,980 Pra, le të shohim se çfarë ndodh. 366 01:01:43,980 --> 01:01:44,785 NE RREGULL. 367 01:01:44,785 --> 01:01:48,270 A buggy pak, por lloj i ftohtë. 368 01:01:48,270 --> 01:01:51,710 >> Dhe ne mund të shtoni në këtë disa gjëra pa kuptim që nuk janë të gjitha që intelektualisht 369 01:01:51,710 --> 01:01:52,270 interesante. 370 01:01:52,270 --> 01:01:57,210 Por nëse ne e goditi kjo pak mikrofon button-- ouch. 371 01:01:57,210 --> 01:01:58,480 Më lejoni të pastër këtë ide. 372 01:01:58,480 --> 01:02:01,540 Më lejoni të rritur këtë si ata do të thonë në TV. 373 01:02:01,540 --> 01:02:05,400 Clean up që, Save, dhe tani të shkojnë deri në Scripts. 374 01:02:05,400 --> 01:02:07,500 >> Dhe tani, më lejoni të shkoj të shëndosha. 375 01:02:07,500 --> 01:02:09,002 Më lejoni t'i jepte një emër. 376 01:02:09,002 --> 01:02:12,440 Unë do të thërrasë këtë Ouch. 377 01:02:12,440 --> 01:02:13,840 Dhe tani luajnë Ouch shëndoshë. 378 01:02:13,840 --> 01:02:16,520 Vini re duket në pak drop down menu. 379 01:02:16,520 --> 01:02:17,612 Le të shohim. 380 01:02:17,612 --> 01:02:20,444 >> [OUCH] 381 01:02:20,444 --> 01:02:24,377 >> [Duke qeshur] 382 01:02:24,377 --> 01:02:25,835 Por ne mund të ndryshojmë t tij në të fluturojnë. 383 01:02:25,835 --> 01:02:28,106 Ne mund të jetë dy herë më i bezdisshëm. 384 01:02:28,106 --> 01:02:31,760 >> [OUCH] 385 01:02:31,760 --> 01:02:35,332 >> Ose në qoftë se ne kemi bërë atë si 1.000 hapa në një time-- 386 01:02:35,332 --> 01:02:39,900 387 01:02:39,900 --> 01:02:40,670 >> NE RREGULL. 388 01:02:40,670 --> 01:02:42,295 Pra, ne jemi duke shkuar për të lënë se një i vetëm. 389 01:02:42,295 --> 01:02:45,290 Pra, përsëri, ndërtimi I blocks-- filluar me diçka super të thjeshtë, 390 01:02:45,290 --> 01:02:47,930 dhe pastaj kam shtuar një funksion, shtuar një funksion, ka shtuar një funksion. 391 01:02:47,930 --> 01:02:50,721 Dhe unë nuk duhet të shqetësohen për si e para e ato karakteristika 392 01:02:50,721 --> 01:02:53,690 u zbatua si unë të vazhdojë për shtresë gjëra në krye. 393 01:02:53,690 --> 01:02:55,430 Pra, në fakt, më lejoni të bëj një tjetër këtu. 394 01:02:55,430 --> 01:03:00,580 Më lejoni të shkoj përpara dhe të hapur një skedar që I sollën më parë, të quajtur dele. 395 01:03:00,580 --> 01:03:03,970 >> Pra, ajo ka një pak më të ndryshme karakter që duket si kjo. 396 01:03:03,970 --> 01:03:07,370 Dhe më lejoni të shohim nëse unë nuk mund të të bëjë diçka duke përdorur një kundër 397 01:03:07,370 --> 01:03:09,310 në këtë case-- një ndryshore të ashtuquajtur. 398 01:03:09,310 --> 01:03:15,540 Unë jam duke shkuar për të shkuar përpara dhe nën Events-- më lejoni të merrni një flamur të gjelbër klikuar. 399 01:03:15,540 --> 01:03:19,030 Atëherë më lejoni të shkoj të të dhënave, të cilat unë e di nga vetëm duke luajtur rreth para, 400 01:03:19,030 --> 01:03:20,214 është vendi ku variablat janë. 401 01:03:20,214 --> 01:03:21,880 Dhe unë jam duke shkuar për të shkuar përpara dhe terhiq këtë. 402 01:03:21,880 --> 01:03:25,144 >> Pra, një ndryshore të quajtur kundër, dhe Unë do të nisja atë në zero. 403 01:03:25,144 --> 01:03:27,560 Unë mund të telefononi atë anything-- x ose y ose z--, por në programim, 404 01:03:27,560 --> 01:03:30,410 duke e quajtur diçka në një semantike mënyrë e dobishme, si kundër, 405 01:03:30,410 --> 01:03:34,540 që përshkruan se çfarë është ajo, kjo është një shumë më e lehtë për të lexuar kodin tuaj më vonë. 406 01:03:34,540 --> 01:03:37,460 Më lejoni të shkojnë përpara dhe për të marrë a përgjithmonë bllokojnë këtu. 407 01:03:37,460 --> 01:03:41,289 Dhe më lejoni të shkoj me duket faqe dhe të bëjë një bllok Say. 408 01:03:41,289 --> 01:03:44,330 Por ajo që është e ftohtë në lidhje me variablat është I nuk duhet të shkruani vetëm në diçka 409 01:03:44,330 --> 01:03:47,850 si Hello World, të cilat ne kemi tashmë bërë, unë në vend të kësaj mund të shkojnë në të dhënave 410 01:03:47,850 --> 01:03:50,690 dhe terhiq ndryshueshme tim, dhe madje edhe edhe pse forma nuk mjaft 411 01:03:50,690 --> 01:03:53,000 duket si ajo duhet të përshtatet, ajo do të rritet për të mbushur. 412 01:03:53,000 --> 01:03:58,396 Dhe unë do të them vetëm counter për një spoiler-- second-- ai do të mbështetet. 413 01:03:58,396 --> 01:04:00,380 Ne do të themi atë për një të dytë. 414 01:04:00,380 --> 01:04:02,840 Atëherë unë jam duke shkuar për të shkuar dhe të që ai të presë për një të dytë, 415 01:04:02,840 --> 01:04:04,650 kështu që nuk ka numëruar deri shumë shpejt. 416 01:04:04,650 --> 01:04:08,430 Dhe pastaj në fund, për të ndryshuar kundër nga one-- me fjalë të tjera, 417 01:04:08,430 --> 01:04:13,520 ardhura counter nga një Vlera shtesë dhe të bëjnë këtë përgjithmonë. 418 01:04:13,520 --> 01:04:16,129 >> Kështu delet shumë, si një programues, numëron nga 0. 419 01:04:16,129 --> 01:04:20,350 420 01:04:20,350 --> 01:04:23,740 Dhe në qoftë se ne presim kohë të mjaftueshme, ai do ta bëjë këtë përgjithmonë. 421 01:04:23,740 --> 01:04:27,740 Por kjo nuk është saktësisht e vërtetë, sepse në fakt, si ne do të zbuloni në javën e parë, 422 01:04:27,740 --> 01:04:31,871 integers dhe kompjutera më në përgjithësi, teknikisht kanë vetëm një finite-- mirë, 423 01:04:31,871 --> 01:04:33,829 më tepër kompjutera, kur ato përfaqësojnë integers, 424 01:04:33,829 --> 01:04:35,670 vetëm një numër i caktuar i bit. 425 01:04:35,670 --> 01:04:37,860 Këto llamba atje vetëm mund të mbështeteni aq e lartë 426 01:04:37,860 --> 01:04:39,239 para se ju jeni nga llamba. 427 01:04:39,239 --> 01:04:41,590 Dhe një kompjuter shumë, ka vetëm aq shumë memorie, 428 01:04:41,590 --> 01:04:44,640 vetëm që ka kaq shumë transistorëve, kështu që ajo vetëm mund të mbështeteni aq e lartë. 429 01:04:44,640 --> 01:04:47,409 >> Pra, rezulton se delet, Unë mendoj se, mund të llogarisë në 2 miliardë 430 01:04:47,409 --> 01:04:48,409 apo diçka goxha i madh. 431 01:04:48,409 --> 01:04:50,325 Pra, ne nuk do të presim që kjo të ndodhë. 432 01:04:50,325 --> 01:04:54,850 Por në fund disa bug do të ndodhë që mund të ketë disa botën shumë reale 433 01:04:54,850 --> 01:04:55,970 pasojat. 434 01:04:55,970 --> 01:04:58,861 Por përtej deleve, që vetëm paraqet një ndryshore. 435 01:04:58,861 --> 01:05:01,110 Le të shkojnë përpara dhe të hapur diçka që kam bërë më parë 436 01:05:01,110 --> 01:05:07,430 quajtur këtu Pet Cat-- Pet Cat këtu. 437 01:05:07,430 --> 01:05:10,420 Dhe vini re këtu se është pak blloqe, por kur flamuri gjelbër 438 01:05:10,420 --> 01:05:12,474 klikuar, gjithnjë duke bërë në vijim. 439 01:05:12,474 --> 01:05:15,265 Nëse jeni të prekur miun pointer-- kështu kursorin në ekran, 440 01:05:15,265 --> 01:05:18,529 arrow-- play meow shëndoshë dhe pastaj të presin dy sekonda. 441 01:05:18,529 --> 01:05:19,570 Dhe vetëm të bëjë këtë përgjithmonë. 442 01:05:19,570 --> 01:05:22,619 Vetëm vazhdimisht prisni për të parë nëse të pointer-- 443 01:05:22,619 --> 01:05:24,710 nëse macja është prekur treguesin. 444 01:05:24,710 --> 01:05:26,060 >> Kështu i goditi të luajë. 445 01:05:26,060 --> 01:05:26,920 Asgjë nuk po ndodh. 446 01:05:26,920 --> 01:05:28,980 Por si unë të lëvizur kursorin mbi mace, 447 01:05:28,980 --> 01:05:31,960 >> [Meowing] 448 01:05:31,960 --> 01:05:34,750 >> Dhe në qoftë se unë të lëvizin atë larg, jo petting cat më. 449 01:05:34,750 --> 01:05:38,090 Pra, disa logjika e kushtëzuar mbivendosur brenda një lak. 450 01:05:38,090 --> 01:05:43,070 Si në lidhje me këtë shembull, me qëllim quajtur Mos Pet Cat? 451 01:05:43,070 --> 01:05:45,253 Çfarë është kjo do të bëni? 452 01:05:45,253 --> 01:05:47,880 >> [Meowing] 453 01:05:47,880 --> 01:05:50,215 >> Pse duhet të mos manar cat? 454 01:05:50,215 --> 01:05:59,440 >> [Meowing] 455 01:05:59,440 --> 01:06:00,699 >> NE RREGULL. 456 01:06:00,699 --> 01:06:03,880 Pra, ky është një shembull i një rast tjetër. 457 01:06:03,880 --> 01:06:06,482 Kjo është një pikë e vendimit dhe sepse është e ulur në lak, 458 01:06:06,482 --> 01:06:07,690 ata janë të dy duke u kontrolluar. 459 01:06:07,690 --> 01:06:08,280 A është kjo e vërtetë? 460 01:06:08,280 --> 01:06:08,760 A është kjo e vërtetë? 461 01:06:08,760 --> 01:06:09,250 A është kjo e vërtetë? 462 01:06:09,250 --> 01:06:09,791 A është kjo e vërtetë? 463 01:06:09,791 --> 01:06:11,880 Dhe në fund, një nga ata që do të zbatohen 464 01:06:11,880 --> 01:06:16,480 dhe kështu ju dëgjojnë as Meow ose ulërimë e luanit në këtë rast. 465 01:06:16,480 --> 01:06:21,400 >> E pra, le të bëjmë një të pak më të sofistikuar që kam bërë më parë too-- temat. 466 01:06:21,400 --> 01:06:25,210 Pra, një fije është vetëm një gjë që një kompjuter mund të bëjë. 467 01:06:25,210 --> 01:06:29,349 Pra, një program multi-i ndërprerë është një program që mund të bëjë gjëra të shumta në të njëjtën kohë. 468 01:06:29,349 --> 01:06:31,140 Dhe të gjitha këto shembuj deri tani kanë pasur 469 01:06:31,140 --> 01:06:35,980 vetëm një script, në mënyrë që të speak-- një program si kjo këtu. 470 01:06:35,980 --> 01:06:38,810 Por vini re ky program ka dy sprites, dy karaktere. 471 01:06:38,810 --> 01:06:40,020 Njëra është një zog. 472 01:06:40,020 --> 01:06:40,870 Njëra është një mace. 473 01:06:40,870 --> 01:06:45,080 >> Dhe vini re, kur unë klikoni mbi këto poshtë majtas, ata çdo kanë skenaret e tyre 474 01:06:45,080 --> 01:06:47,120 ose programe të lidhur me to. 475 01:06:47,120 --> 01:06:49,420 Dhe të dy ata programe, njoftim, start 476 01:06:49,420 --> 01:06:52,600 me clicked-- flamurin kur e gjelbër le të shohim në të cat-- 477 01:06:52,600 --> 01:06:54,030 kur flamuri gjelbër klikuar. 478 01:06:54,030 --> 01:06:58,220 Dhe kështu në të vërtetë, kur unë goditi luajnë tani, dy gjëra do të ndodhin në të njëjtën kohë. 479 01:06:58,220 --> 01:07:01,750 Macja dhe të shpendëve janë dy do të veprojnë në të njëjtën kohë 480 01:07:01,750 --> 01:07:03,815 për të krijuar këtë efekt. 481 01:07:03,815 --> 01:07:05,440 Dhe ju mund të imagjinojmë se çfarë po ndodh. 482 01:07:05,440 --> 01:07:08,340 Ka një lak dhe zogun dhe mace janë në një lak. 483 01:07:08,340 --> 01:07:11,270 Zogu është vetëm kërcim si Unë kam qenë më parë kur kam thënë ouch. 484 01:07:11,270 --> 01:07:13,040 Por cat mënyrë të qartë ka një avantazh. 485 01:07:13,040 --> 01:07:16,040 Ka një tjetër bllok ndjerë që tregon cat qëllimisht 486 01:07:16,040 --> 01:07:19,836 të shpendëve në këtë rast këtu. 487 01:07:19,836 --> 01:07:22,960 Pra, ne mund të vë në lojë përveç, duke shikuar nëpër ato blloqe, se çfarë po ndodh. 488 01:07:22,960 --> 01:07:25,460 Por përbërës kyç këtu është një. 489 01:07:25,460 --> 01:07:28,520 Zogu, në mënyrë që kjo lojë nuk është plotësisht boring-- ose kjo animation-- 490 01:07:28,520 --> 01:07:30,060 fillon në një drejtim të rastit. 491 01:07:30,060 --> 01:07:32,890 Dhe kompjuteri po rritet një numër në mes të 90 dhe 180 492 01:07:32,890 --> 01:07:36,110 në thelb, në mënyrë që ajo është një pak më të ndryshe animacion çdo herë. 493 01:07:36,110 --> 01:07:39,480 >> Dhe pastaj vini re këtu, në qoftë se cat po e prek zogun, atëherë 494 01:07:39,480 --> 01:07:42,030 luajtur luan katër sound-- ulërimë. 495 01:07:42,030 --> 01:07:46,330 Por ndërkohë në zog-së paleta, ne kemi këtë. 496 01:07:46,330 --> 01:07:49,229 Forever, nëse nuk është prekur mace, vetëm i mbajnë në lëvizje tre hapa. 497 01:07:49,229 --> 01:07:50,770 Dhe pastaj këtu është një tjetër copë puzzle. 498 01:07:50,770 --> 01:07:52,030 Nëse ju jeni në buzë, fryrje. 499 01:07:52,030 --> 01:07:54,840 Pra zogu është vetëm lloji i minding biznesin e vet, 500 01:07:54,840 --> 01:07:57,330 vetëm fluturues përreth dhe kërcim, dhe kjo është me të vërtetë 501 01:07:57,330 --> 01:08:01,780 macja që kishte logjikën e kushtëzuar për të përcaktuar nëse ajo kishte kapur të shpendëve. 502 01:08:01,780 --> 01:08:02,280 Në rregull. 503 01:08:02,280 --> 01:08:08,800 Pra, le të bëjmë një tjetër këtu, kjo duke u quajtur Hi Hi Hi. 504 01:08:08,800 --> 01:08:15,100 Dhe kjo këtu vetëm e bën këtë në një lak përgjithmonë. 505 01:08:15,100 --> 01:08:18,925 Por notice-- si nuk kemi të ndaluar ky program shumë i bezdisshëm? 506 01:08:18,925 --> 01:08:21,600 507 01:08:21,600 --> 01:08:22,640 Hit space bar. 508 01:08:22,640 --> 01:08:27,990 Sepse në qoftë se unë bëj këtë, program-- dorën e majtë 509 01:08:27,990 --> 01:08:31,550 vini re kjo është vazhdimisht listening-- është shtypi kyç hapësirë. 510 01:08:31,550 --> 01:08:34,090 Nëse bar hapësirë ​​presion, dhe nëse po, çfarë do të bëni? 511 01:08:34,090 --> 01:08:35,980 Ajo ka një teknikë shumë të zakonshme. 512 01:08:35,980 --> 01:08:38,590 Ajo përcakton një ndryshore të barabartë me disa vlera. 513 01:08:38,590 --> 01:08:39,741 Por kjo toggles këtë vlerë. 514 01:08:39,741 --> 01:08:41,490 [? Pra, pamja?] bazuar në I shape-- 515 01:08:41,490 --> 01:08:43,160 kanë një variabël që unë shkroi më parë të quajtur 516 01:08:43,160 --> 01:08:44,770 Mbytur, e cila vetëm thotë po ose jo. 517 01:08:44,770 --> 01:08:45,880 A është mbytur zë apo jo? 518 01:08:45,880 --> 01:08:46,990 E vërtetë apo e gabuar? 519 01:08:46,990 --> 01:08:51,580 Dhe njoftimi, unë jam duke thënë se në qoftë se this-- heshtur është zero, atëherë të ndryshojë për një, 520 01:08:51,580 --> 01:08:53,840 tjetër vendosur memec atë në zero. 521 01:08:53,840 --> 01:08:55,540 Pra, vetëm rrokullisje vlerën nga zero në një. 522 01:08:55,540 --> 01:08:58,320 Unë mund të ketë done-- ndryshojë atë nga dy deri në tre dhe tre në dy 523 01:08:58,320 --> 01:09:00,162 ose katër të pesë ose katër në gjashtë. 524 01:09:00,162 --> 01:09:01,870 Por kjo nuk ka rëndësi çfarë numrat I përdorin, 525 01:09:01,870 --> 01:09:04,090 për sa kohë që unë mbaj ndryshuar atë të kundërtën. 526 01:09:04,090 --> 01:09:07,290 >> Dhe më çdo programues do të vetëm zgjidhni zero dhe one-- rreme dhe të vërtetë, 527 01:09:07,290 --> 01:09:09,510 off dhe on-- për të përfaqësuar këtë. 528 01:09:09,510 --> 01:09:10,930 Dhe kjo është ende running. 529 01:09:10,930 --> 01:09:12,190 Nëse unë goditi space bar përsëri 530 01:09:12,190 --> 01:09:13,590 >> [SEAL SOUNDS] 531 01:09:13,590 --> 01:09:15,440 >> Programi është ende running. 532 01:09:15,440 --> 01:09:18,400 Sepse nuk ka ky dorëshkrim të tjera që thotë se, përgjithmonë të bëjë të mëposhtme. 533 01:09:18,400 --> 01:09:21,390 534 01:09:21,390 --> 01:09:24,770 Nëse ndryshorja mbytur barabartë zero-- kështu që nëse ju nuk jeni të mbytur 535 01:09:24,770 --> 01:09:29,609 është logic-- nëse është e rreme ose jo, atëherë luajnë të shëndoshë, 536 01:09:29,609 --> 01:09:30,650 sepse ju nuk jeni të mbytur. 537 01:09:30,650 --> 01:09:33,358 Ju duhet të luajnë të shëndoshë dhe pastaj mendoj se hi hi hi për dy sekonda 538 01:09:33,358 --> 01:09:35,790 dhe pastaj të presin, dhe të bëjë atë përsëri dhe përsëri dhe përsëri. 539 01:09:35,790 --> 01:09:40,760 >> Dhe kështu në këtë mënyrë do të kemi një rrugë për njerëzit to-- për programet për të bashkëvepruar. 540 01:09:40,760 --> 01:09:43,120 Dhe ata nuk kanë të të si datë të tjerët. 541 01:09:43,120 --> 01:09:46,280 Në fakt, poking around-- nuk ka pun intended-- 542 01:09:46,280 --> 01:09:49,250 dikush shpenzuar një sasi të madhe të kohë në internet implementues 543 01:09:49,250 --> 01:09:51,580 PokemonGo në Scratch. 544 01:09:51,580 --> 01:09:55,440 Kjo edhe ju geolocates në Cambridge ose Allston këtu. 545 01:09:55,440 --> 01:10:03,120 Pra, nëse ju doni të shihni se çfarë shumë njerëz mund të bëni është this-- menu shumë të dashuroj. 546 01:10:03,120 --> 01:10:04,780 Kliko këtu. 547 01:10:04,780 --> 01:10:07,430 >> Kjo është më me arrow çelësat e mia tani. 548 01:10:07,430 --> 01:10:09,446 Unë jam duke shkuar për të shkuar pas kësaj. 549 01:10:09,446 --> 01:10:09,946 Kliko. 550 01:10:09,946 --> 01:10:12,949 551 01:10:12,949 --> 01:10:14,240 Dhe tani ju klikoni PokeBall. 552 01:10:14,240 --> 01:10:17,130 553 01:10:17,130 --> 01:10:20,260 Unë do të thotë, unë mendoj se ju jeni duhet të klikoni PokeBall. 554 01:10:20,260 --> 01:10:20,760 Në rregull. 555 01:10:20,760 --> 01:10:22,680 Kështu që unë e bëri atë. 556 01:10:22,680 --> 01:10:23,950 Unë mund të shkoni këtu. 557 01:10:23,950 --> 01:10:27,790 Dhe ky person zbatuar disa më shumë Pokeballs mbi here-- tre Pokeballs. 558 01:10:27,790 --> 01:10:29,950 >> Ne do të postoj një lidhje në këtë online kështu që ju mund të luajë. 559 01:10:29,950 --> 01:10:32,364 Por njoftimi ka vetëm disa blloqe themelore të ndërtimit. 560 01:10:32,364 --> 01:10:33,780 Ajo duket shumë njohës, dhe kjo është. 561 01:10:33,780 --> 01:10:35,905 Kjo është mbresëlënëse dhe më shumë se ne do zakonisht 562 01:10:35,905 --> 01:10:37,740 presim, sigurisht për problemin e caktuar zero. 563 01:10:37,740 --> 01:10:40,809 Unë nuk kam asnjë ide se si të gjatë ky person shpenzuar online. 564 01:10:40,809 --> 01:10:41,850 Por kjo është e gjitha vetëm një lak. 565 01:10:41,850 --> 01:10:43,180 Ka një playing shëndoshë. 566 01:10:43,180 --> 01:10:44,850 Ka një lloj lak dëgjuar për nëse unë jam 567 01:10:44,850 --> 01:10:47,558 goditur arrow deri ose poshtë shigjetë ose e majtë dhe të djathtë, 568 01:10:47,558 --> 01:10:49,834 dhe pastaj nëse është kështu, ajo është duke lëvizur ajo disa numrin e pixels. 569 01:10:49,834 --> 01:10:51,750 Dhe pastaj në qoftë se unë klikoni në një sprite, ka 570 01:10:51,750 --> 01:10:53,390 një lloj nëse gjendjes atje. 571 01:10:53,390 --> 01:10:54,806 Yeah, kjo po bëhet shumë intensive. 572 01:10:54,806 --> 01:10:56,100 Ne jemi duke shkuar për të ndaluar. 573 01:10:56,100 --> 01:10:57,750 Kjo është e gjitha ato blloqet themelore të ndërtimit. 574 01:10:57,750 --> 01:11:01,530 Nuk ka përbërës të tjerë të tjerë se ato ne i kemi shikuar tashmë. 575 01:11:01,530 --> 01:11:04,670 >> Dhe ende këtu, më lejoni të bëj një grup i fundit i shembujve 576 01:11:04,670 --> 01:11:06,960 që paraqet një tablo shumë të asaj që ju mund të bëni këtu. 577 01:11:06,960 --> 01:11:10,481 Këtu ka një program shumë të thjeshtë që vetëm bën this-- kollë, kollë, kollë. 578 01:11:10,481 --> 01:11:12,480 Dhe vetëm në bazë të asaj që ne i kemi shikuar deri më tani, 579 01:11:12,480 --> 01:11:14,570 ku është e qartë mundësi për përmirësim. 580 01:11:14,570 --> 01:11:15,570 Ky program është i saktë. 581 01:11:15,570 --> 01:11:17,980 Ajo kollitet tri herë, e cila është ajo që unë menduar. 582 01:11:17,980 --> 01:11:19,650 Por është zbatuar dobët. 583 01:11:19,650 --> 01:11:20,600 Është projektuar keq. 584 01:11:20,600 --> 01:11:22,000 Pse? 585 01:11:22,000 --> 01:11:22,500 Po. 586 01:11:22,500 --> 01:11:23,230 Kjo nuk është një lak. 587 01:11:23,230 --> 01:11:24,610 Dhe kjo nuk është aq shumë se kjo nuk është një lak, 588 01:11:24,610 --> 01:11:26,400 është se ka një shumë tepricë. 589 01:11:26,400 --> 01:11:28,830 Nuk është e kopjuar dhe Kodi ngjit, kështu që të flasin. 590 01:11:28,830 --> 01:11:31,830 Dhe zgjidhja ndoshta është me të vërtetë një lak. 591 01:11:31,830 --> 01:11:34,350 Pra më lejoni të shkoj përpara dhe për të përmirësuar mbi atë. 592 01:11:34,350 --> 01:11:36,250 Dhe unë jam duke shkuar për të drag ato këtu. 593 01:11:36,250 --> 01:11:39,986 Më lejoni të shkojnë përpara dhe për të marrë një përsëritje bllok, të ndryshojë kjo në tre. 594 01:11:39,986 --> 01:11:41,860 Unë jam duke shkuar për të hedhur larg disa nga këto blloqe. 595 01:11:41,860 --> 01:11:43,150 >> Dhe ju do të vëreni se është mjaft intuitive. 596 01:11:43,150 --> 01:11:45,691 Ju drag and drop dhe gjëra të shfaqen dhe zhduken përfundimisht. 597 01:11:45,691 --> 01:11:49,170 Dhe unë mund vetëm drag këtë në këtu, dhe tani unë kam një version të pastër ende. 598 01:11:49,170 --> 01:11:50,730 Por ju e dini se çfarë? 599 01:11:50,730 --> 01:11:52,940 Ka kjo mundësi tani për abstraction-- 600 01:11:52,940 --> 01:11:56,350 për të filluar për të përcaktuar fjalor të ri se MIT nuk e parashikojnë. 601 01:11:56,350 --> 01:11:59,110 Ka të presim dhe të përsëritur dhe përgjithmonë dhe në qoftë se, 602 01:11:59,110 --> 01:12:02,590 por çka nëse unë dua të prezantoj fjala kollë si një bllok? 603 01:12:02,590 --> 01:12:06,230 Çka nëse unë dua një pjesë mister qëllimi i të cilit në jetë është që të kollë? 604 01:12:06,230 --> 01:12:10,720 >> E pra, le të shohim në këtë version këtu, që e kam bërë si më poshtë. 605 01:12:10,720 --> 01:12:13,579 Magjike, unë kam krijuar kjo pjesë mister këtu, 606 01:12:13,579 --> 01:12:14,870 i cili Scratch ju lejon të bëni. 607 01:12:14,870 --> 01:12:16,787 Dhe me të vërtetë C dhe Python dhe JavaScript janë 608 01:12:16,787 --> 01:12:18,370 do të ju lejojnë të bëni këtë si. 609 01:12:18,370 --> 01:12:21,830 Ju mund të krijoni porosi tuaj copa që ju të telefononi atë që ju dëshironi. 610 01:12:21,830 --> 01:12:24,890 Në këtë rast, kollë e ndjen si një përkufizim të arsyeshëm. 611 01:12:24,890 --> 01:12:27,880 Dhe pastaj me këto copa poshtë këtu ju mund të përcaktojë se çfarë do të thotë. 612 01:12:27,880 --> 01:12:30,290 >> I zvarritur dhe rënë nga kjo paleta here-- më shumë 613 01:12:30,290 --> 01:12:33,500 blocks-- këtë purple madh bllok, ku kam shtypur në kollë 614 01:12:33,500 --> 01:12:35,290 si emri i copë tim të ri puzzle. 615 01:12:35,290 --> 01:12:39,920 Dhe atëherë unë jam duke thënë se çdo kohë një përdorues e quan këtë pjesë të re mister kollë, 616 01:12:39,920 --> 01:12:41,770 të bëjë një rol dhe një prisni. 617 01:12:41,770 --> 01:12:46,160 Dhe kështu deri këtu në bllokun tim të përsëritur, Unë vetëm mund të nxjerr me kollë tri herë. 618 01:12:46,160 --> 01:12:49,972 >> Dhe unë do të argumentojnë, sidomos në rast se ti më fsheh këtë detaj. 619 01:12:49,972 --> 01:12:51,430 Kush kujdeset se si kollë zbatohet? 620 01:12:51,430 --> 01:12:54,390 Të gjitha që më intereson si programues që unë mund të kollë. 621 01:12:54,390 --> 01:12:56,280 Unë nuk e kujdesit se si thonë zbatohet. 622 01:12:56,280 --> 01:12:58,620 Unë vetëm kujdes se cat mund të them diçka. 623 01:12:58,620 --> 01:13:02,720 Unë mund abstrakte larg se detaje dhe vetëm të përqëndrohet në atë që është në ekran këtu. 624 01:13:02,720 --> 01:13:04,400 Por unë mund të marrë këtë hap më tej. 625 01:13:04,400 --> 01:13:08,070 >> Vini re se këtu, unë kam zbatuar lak tri herë. 626 01:13:08,070 --> 01:13:11,560 Por, çfarë nëse në vend që unë kap këtë version? 627 01:13:11,560 --> 01:13:14,640 Dhe çka nëse në vend në këtë version këtu, 628 01:13:14,640 --> 01:13:18,730 Unë vetëm të ndryshojë copë tim mister për të marrë një argument dhe input vetvete? 629 01:13:18,730 --> 01:13:21,100 Dhe kjo mund të jetë e input një numër si tre. 630 01:13:21,100 --> 01:13:24,580 Deri tani, në qoftë se unë jam duke shkruar një program dhe unë dua macja me kollë, 631 01:13:24,580 --> 01:13:28,270 Unë në fakt mund të them mister copë sa herë të kollë, 632 01:13:28,270 --> 01:13:31,990 për shkak se në fund këtu, një njohës version i këtyre pjesëve puzzle porosi 633 01:13:31,990 --> 01:13:34,500 lejon mua që të specifikojë kollë fakt merr 634 01:13:34,500 --> 01:13:36,951 një input-- merr një argument të tillë. 635 01:13:36,951 --> 01:13:37,700 Dhe ju e dini se çfarë? 636 01:13:37,700 --> 01:13:38,890 Ndoshta e kuptoj, prit një minutë. 637 01:13:38,890 --> 01:13:40,680 Kollitjes është same-- kjo është në thelb 638 01:13:40,680 --> 01:13:42,120 të njëjtën ide si teshtitjes. 639 01:13:42,120 --> 01:13:44,040 Kjo është vetëm një tjetër Fjala në ekran. 640 01:13:44,040 --> 01:13:46,550 Unë mund abstrakte larg më tej dhe të zbatojë 641 01:13:46,550 --> 01:13:48,750 ky version i fundit i një kollë, të cilat në shikim të parë 642 01:13:48,750 --> 01:13:50,660 është mënyra më komplekse në kërkim. 643 01:13:50,660 --> 01:13:52,140 Por vini re atë që kam bërë. 644 01:13:52,140 --> 01:13:55,930 Unë kam tani generalized-- genericized really-- këtë pjesë mister 645 01:13:55,930 --> 01:13:59,900 që do të quhet thonë fjalë n herë. 646 01:13:59,900 --> 01:14:04,410 >> Dhe tani unë kam dy pjesë të reja mister këtu poshtë përcaktojë kollë n herë. 647 01:14:04,410 --> 01:14:06,790 Dhe çfarë bën funksioni kollë? 648 01:14:06,790 --> 01:14:08,420 Çfarë bën puzzle porosi pjesë e mia? 649 01:14:08,420 --> 01:14:11,996 Ajo vetëm kërkon bllok të themi, duke kaluar në fjalë unë dua të them, 650 01:14:11,996 --> 01:14:13,870 kalon në numrin e herë unë dua të them. 651 01:14:13,870 --> 01:14:18,210 Sepse tani unë mund të zbatojë teshtij thjesht thënë achoo, 652 01:14:18,210 --> 01:14:20,320 në këtë rast, një pjesë disa herë. 653 01:14:20,320 --> 01:14:22,360 >> Dhe kështu që unë jam layering dhe layering. 654 01:14:22,360 --> 01:14:25,690 Dhe përsëri, çelësi këtu nuk është si kam zbatuar atë, por fakti 655 01:14:25,690 --> 01:14:28,070 se në qoftë se unë vetëm fjalë për fjalë lëvizin ato jashtë ekranit, 656 01:14:28,070 --> 01:14:31,280 shikoni sa e thjeshtë nuk e nëse goxha programi im tani duket. 657 01:14:31,280 --> 01:14:33,930 Për shkak se ajo çfarë e bën atë thotë, unë kam përhumbur 658 01:14:33,930 --> 01:14:37,640 larg ajo që është brenda asaj kutie të zezë. kjo ndodh të jetë një kuti purple këtu, 659 01:14:37,640 --> 01:14:41,430 por unë e kam penguar larg asaj që është brenda sepse unë nuk e kujdesit se si funksionon. 660 01:14:41,430 --> 01:14:43,650 Unë vetëm kujdes tani që ajo punon. 661 01:14:43,650 --> 01:14:46,375 >> Dhe me të vërtetë, në problemin vendosur zero, kjo është pikërisht 662 01:14:46,375 --> 01:14:49,250 lloji i layering e ideve ju do kanë mundësi për të eksploruar. 663 01:14:49,250 --> 01:14:53,510 Është pikërisht mundësia për aplikojnë zgjidhjen e problemeve teknika, 664 01:14:53,510 --> 01:14:55,550 në atë që është ndoshta një Mjedisi panjohura. 665 01:14:55,550 --> 01:14:57,890 Dhe nëse ju nuk e keni programuar para ose programuar më parë, 666 01:14:57,890 --> 01:14:59,500 ju do të gjeni se ka një diçka të vogël 667 01:14:59,500 --> 01:15:00,874 në këtë mjedis për të gjithë. 668 01:15:00,874 --> 01:15:02,770 Dhe me problemin e ngritur një në kohën e një jave, 669 01:15:02,770 --> 01:15:06,630 ne do të tranzicionit për të fokusuar në një gjuhë të nivelit më të lartë të quajtur 670 01:15:06,630 --> 01:15:09,290 C-- ose më mirë një më të ulët Gjuha e nivelit të quajtur 671 01:15:09,290 --> 01:15:11,347 C-- kjo është edhe më e e fuqishme, edhe pse është e 672 01:15:11,347 --> 01:15:12,930 pak më i fshehtë në shikim të parë. 673 01:15:12,930 --> 01:15:16,740 >> Dhe ju do të kuptojë per TL sotme: DR, se ky problem të vendosur ka një të shkurtër 674 01:15:16,740 --> 01:15:19,880 dritare e kohës se sa ato në të ardhmen, thjesht për shkak se ju duhet të gjeni atë në mënyrë të drejtë 675 01:15:19,880 --> 01:15:20,420 të arritshme. 676 01:15:20,420 --> 01:15:22,211 Dhe mos u shqetësoni nëse të shtoni klasa vonë. 677 01:15:22,211 --> 01:15:23,920 Ne do të trajtojë atë para se të gjatë. 678 01:15:23,920 --> 01:15:28,480 Dhe para se të shtyjë për tortë, le të përfunduar me vetëm një sy dy minuta 679 01:15:28,480 --> 01:15:30,500 se çfarë ju pret këtu në CS50. 680 01:15:30,500 --> 01:15:40,950 681 01:15:40,950 --> 01:17:20,803 [MUSIC Duke luajtur] 682 01:17:20,803 --> 01:17:21,302 Në rregull. 683 01:17:21,302 --> 01:17:22,690 Kjo është ajo për CS50. 684 01:17:22,690 --> 01:17:23,650 Ne do të shohim së shpejti. 685 01:17:23,650 --> 01:17:25,526 Cake është shërbyer tani. 686 01:17:25,526 --> 01:17:28,998 687 01:17:28,998 --> 01:18:14,267 [MUSIC Duke luajtur] 688 01:18:14,267 --> 01:18:16,350 SPEAKER 17: A keni dëgjuar i dielave, shef? 689 01:18:16,350 --> 01:18:29,490 690 01:18:29,490 --> 01:18:31,920 SPEAKER 18: Ndoshta ka më shumë nën kapuç. 691 01:18:31,920 --> 01:18:38,279