1 00:00:00,000 --> 00:00:02,742 >> [CHWARAE CERDDORIAETH] 2 00:00:02,742 --> 00:00:05,030 3 00:00:05,030 --> 00:00:09,090 >> Andi Peng: Mae hwn yn CS50, ac croeso i wythnos dwy adran. 4 00:00:09,090 --> 00:00:11,740 Mae hyn mewn gwirionedd tra wythnos dau o'n class-- mewn gwirionedd, 5 00:00:11,740 --> 00:00:14,550 yr wythnos gyntaf rydym wedi cael adran. 6 00:00:14,550 --> 00:00:18,897 Godi dwylo, faint ohonoch chi i gyd Daeth i adran super wythnos diwethaf? 7 00:00:18,897 --> 00:00:19,480 OK, mae hynny'n iawn. 8 00:00:19,480 --> 00:00:20,020 Mae hynny'n iawn. 9 00:00:20,020 --> 00:00:23,110 Faint ohonoch chi gwylio adran super wythnos diwethaf? 10 00:00:23,110 --> 00:00:23,610 IAWN. 11 00:00:23,610 --> 00:00:25,702 A ydych yn guys a wnaeth iawn ar broblem sefydlu un? 12 00:00:25,702 --> 00:00:28,660 Felly, yr wyf i'n mynd i fynd ag ef fod gennym criw o blant mewn gwirionedd deallus 13 00:00:28,660 --> 00:00:32,310 yn y dosbarth hwn a phethau bydd yn iawn. 14 00:00:32,310 --> 00:00:33,180 IAWN. 15 00:00:33,180 --> 00:00:33,980 Felly first-- 16 00:00:33,980 --> 00:00:37,900 17 00:00:37,900 --> 00:00:41,090 >> Yn gyntaf, rydym yn jyst yn mynd i yn fyr mynd dros yr agenda ar gyfer heddiw. 18 00:00:41,090 --> 00:00:42,700 Byddwn yn siarad am logisteg cwrs. 19 00:00:42,700 --> 00:00:45,480 Mae llawer ohonoch yn ôl pob tebyg gennych gwestiynau ynglŷn â 20 00:00:45,480 --> 00:00:46,920 sut mae pethau'n rhedeg yn y cwrs hwn. 21 00:00:46,920 --> 00:00:47,897 Byddwn yn eu hateb. 22 00:00:47,897 --> 00:00:49,730 Rydym yn mynd i yn fyr mynd dros ddolenni rhag ofn 23 00:00:49,730 --> 00:00:51,410 unrhyw un ohonoch guys a gollwyd adran super. 24 00:00:51,410 --> 00:00:53,240 Byddwn yn siarad am fapio ASCII. 25 00:00:53,240 --> 00:00:56,180 Byddwn yn siarad am araeau, swyddogaethau, dadleuon llinell orchymyn. 26 00:00:56,180 --> 00:01:00,210 Ac yn olaf, yr hyn yr ydych guys yn ôl pob tebyg i gyd wir eisiau i fod yma i ddysgu am, 27 00:01:00,210 --> 00:01:01,270 yw eich pset2. 28 00:01:01,270 --> 00:01:04,209 Bydd gennym rhai triciau n glws ac awgrymiadau ar gyfer sut i wneud hynny. 29 00:01:04,209 --> 00:01:07,910 30 00:01:07,910 --> 00:01:08,690 >> IAWN. 31 00:01:08,690 --> 00:01:11,450 Hefyd, yn ail, yr ydym wedi llawer o candy yma. 32 00:01:11,450 --> 00:01:13,583 Dylai unrhyw un sy'n hoffi Candy, dim ond yn dod i fyny yma. 33 00:01:13,583 --> 00:01:14,430 Gafaelwch rhai. 34 00:01:14,430 --> 00:01:15,100 Mae gen i griw. 35 00:01:15,100 --> 00:01:16,390 Mae gennym tunnell yn y swyddfa. 36 00:01:16,390 --> 00:01:18,230 Dydw i ddim wir eisiau i fwyta Candy drwy'r dydd. 37 00:01:18,230 --> 00:01:20,300 Dylech guys yn bwyta holl Candy, gan fy mod yn dod ag ef yma i chi guys. 38 00:01:20,300 --> 00:01:20,990 Dim ond bwyta Candy. 39 00:01:20,990 --> 00:01:24,080 Bydd yna bob adran Candy. 40 00:01:24,080 --> 00:01:25,330 >> Felly yn gyntaf, pwy ydw i? 41 00:01:25,330 --> 00:01:27,080 Fy enw i yw Andi Peng. 42 00:01:27,080 --> 00:01:30,270 Fi yw pennaeth TA o CS50 yma yn Iâl. 43 00:01:30,270 --> 00:01:32,540 Ac yn ychwanegol at hynny, byddaf hefyd be-- 44 00:01:32,540 --> 00:01:35,600 pe byddai unrhyw un yn like-- eich rhedeg cyfaill, eich ysgwydd i grio ar. 45 00:01:35,600 --> 00:01:39,140 Os bydd y noson cyn oherwydd eich pset yn, nid oes gennych unrhyw syniad beth sy'n digwydd, 46 00:01:39,140 --> 00:01:40,080 taro fi i fyny. 47 00:01:40,080 --> 00:01:42,770 Byddwn yn chydymdeimlo gyda'n gilydd, et cetera. 48 00:01:42,770 --> 00:01:46,100 Dim ond yn gwybod fy mod yma fel adnoddau ar eich cyfer chi fel y llinell flaen 49 00:01:46,100 --> 00:01:51,830 wrth helpu chi guys chyfrif i maes fel i ddatrys problemau mewn CS50 a thu hwnt. 50 00:01:51,830 --> 00:01:54,590 >> Fy e-bost yw andi.peng@yale.edu. 51 00:01:54,590 --> 00:01:58,390 'N annhymerus' hefyd yn anfon unigolyn anfon e-bost gyda fy rhif ffôn ynddo 52 00:01:58,390 --> 00:02:01,860 fel na fydd pawb ar y Gall y rhyngrwyd gweld fy rhif ffôn. 53 00:02:01,860 --> 00:02:03,640 Mae croeso i chi fy ffonio ar unrhyw adeg. 54 00:02:03,640 --> 00:02:07,510 O ddifrif, fy ffôn yw fel arfer ynghlwm wrth fy llaw. 55 00:02:07,510 --> 00:02:10,240 Efallai nad wyf yn ymateb o fewn cwpl o funudau. 56 00:02:10,240 --> 00:02:11,984 Efallai nad wyf yn ymateb o fewn cwpl o oriau. 57 00:02:11,984 --> 00:02:14,400 Ond gallaf warantu chi, os anfon e-bost ataf, os byddwch yn ffonio fi, 58 00:02:14,400 --> 00:02:17,404 testun i mi, byddaf yn ymateb o fewn 24 awr. 59 00:02:17,404 --> 00:02:19,820 Oftentimes, 'n annhymerus' yn ymateb cyn hynny, oherwydd fy mod yn deall 60 00:02:19,820 --> 00:02:23,900 bod pawb yn cael rhai problemau, ac rydych am eich atebion 61 00:02:23,900 --> 00:02:26,110 i gael eu hateb yn gyflym iawn. 62 00:02:26,110 --> 00:02:28,945 >> Fodd bynnag, os byddwch yn ffonio mi 30 munud cyn 63 00:02:28,945 --> 00:02:31,570 y darn sy'n yw dydd Iau ddyledus night-- fod yn debyg, Andi, helpa fi, 64 00:02:31,570 --> 00:02:35,380 Nid wyf wedi started-- efallai y byddaf yn rhoi eich bod yn ysgwydd i grio ar. 65 00:02:35,380 --> 00:02:41,520 Ond gall fod yn amser i feddwl am sut i beidio â gwneud hynny y tro nesaf. 66 00:02:41,520 --> 00:02:44,040 IAWN. 67 00:02:44,040 --> 00:02:44,944 Wps. 68 00:02:44,944 --> 00:02:45,850 Sut ydw i'n mynd yn ôl? 69 00:02:45,850 --> 00:02:48,140 Dyna ni. 70 00:02:48,140 --> 00:02:52,310 >> Felly, yn y cwrs hwn, mae gennym tunnell o gefnogaeth i bawb. 71 00:02:52,310 --> 00:02:54,640 Yn ogystal â dim ond adrannau yma, yr ydych yn 72 00:02:54,640 --> 00:02:57,000 bob wythnos yn treulio 90 cofnodion gwych gyda mi, 73 00:02:57,000 --> 00:02:58,330 mae gennym hefyd oriau swyddfa. 74 00:02:58,330 --> 00:03:01,021 Faint ohonoch chi guys yn barod bod i oriau swyddfa am help? 75 00:03:01,021 --> 00:03:01,520 Great. 76 00:03:01,520 --> 00:03:05,700 Mae hynny'n wir dda gweld, oherwydd ein gennym staff o dros 45 CA a CAs 77 00:03:05,700 --> 00:03:11,780 hyfforddi ar gyfer y cwrs hwn sydd yma am helpu chi guys gyda'ch psets. 78 00:03:11,780 --> 00:03:14,580 >> Dydd Llun maen nhw'n cynnal yn y TEAL ystafell ddosbarth yn 17 Hill House yma 79 00:03:14,580 --> 00:03:15,350 yn Iâl. 80 00:03:15,350 --> 00:03:17,349 Dydd Mawrth a dydd Iau, maen nhw'n cynnal yn dir comin. 81 00:03:17,349 --> 00:03:20,010 8:00-11:00 'n bert lawer bob diwrnod o'r wythnos. 82 00:03:20,010 --> 00:03:21,620 Dewch i mewn, yn dod allan. 83 00:03:21,620 --> 00:03:24,030 Unrhyw broblem, dim problem-- newydd ddod ymlaen yn, 84 00:03:24,030 --> 00:03:26,650 ac yna byddwn yn eich helpu gyda hynny. 85 00:03:26,650 --> 00:03:31,640 >> Yn ail, yn ychwanegol at oriau swyddfa ac adrannau, mae gennym hefyd siorts. 86 00:03:31,640 --> 00:03:35,930 Oes unrhyw un wedi gweld un neu ddau o'r erioed siorts neu walkthroughs yn y fideos 87 00:03:35,930 --> 00:03:36,750 ar y wefan? 88 00:03:36,750 --> 00:03:37,250 IAWN. 89 00:03:37,250 --> 00:03:39,510 Felly, maent yn wirioneddol, yn ddefnyddiol iawn. 90 00:03:39,510 --> 00:03:42,470 Mae ein cynhyrchiad Harvard hyfryd tîm dros yno ar yr ysgol honno 91 00:03:42,470 --> 00:03:47,910 i fyny i'r gogledd, maent wedi ffilmio a chynhyrchu y fideos walkthrough anhygoel. 92 00:03:47,910 --> 00:03:52,290 >> Byddant yn mynd â chi gam wrth gam drwy'r sut i fynd ati i ddatrys problem. 93 00:03:52,290 --> 00:03:56,340 Oftentimes, os ydych yn drysu am yn gysyniad syml, yn gysyniad unigol, 94 00:03:56,340 --> 00:03:59,780 gymryd golwg, oherwydd ein bod yn debygol o gael byr arno yn rhywle ar ein gwefan. 95 00:03:59,780 --> 00:04:03,800 Ac fel arfer mae'n adnodd gwych i chwilio amdano wrth eich bod yn gyntaf 96 00:04:03,800 --> 00:04:06,510 colli ar sut i drin problem. 97 00:04:06,510 --> 00:04:09,750 >> Yn drydydd, rydym hefyd wedi study50 a reference50. 98 00:04:09,750 --> 00:04:15,650 Felly yn astudio 50 ar y gwefan yn unig yw cyswllt. 99 00:04:15,650 --> 00:04:21,500 Mae'n, yr wyf yn meddwl, study.cs50.net neu rywbeth fel 'na. 100 00:04:21,500 --> 00:04:22,860 Dim ond Google ef. 101 00:04:22,860 --> 00:04:24,229 Mae gennym lawer o sleidiau a baratowyd. 102 00:04:24,229 --> 00:04:26,770 Mae gennym lawer o siorts a pethau walkthroughs-- gyd luniwyd 103 00:04:26,770 --> 00:04:31,070 braf ac yn daclus i chi guys i gyd iawn i bori drwy, gweld unrhyw gysyniadau 104 00:04:31,070 --> 00:04:32,860 eich bod yn ddryslyd am. 105 00:04:32,860 --> 00:04:35,920 Id Mae'n debyg yn cael eu cynnwys dros yno yn study50. 106 00:04:35,920 --> 00:04:37,640 >> Reference50-- tebyg. 107 00:04:37,640 --> 00:04:41,510 Mae gennym lawer o amrywiol nodiadau ar gael yn rhwydd ar gyfer eich gwaredu. 108 00:04:41,510 --> 00:04:44,450 Ac yn olaf, mae gennym yr hyn sydd Gelwir CS50 Trafod, 109 00:04:44,450 --> 00:04:48,082 fforwm lle, os bydd y noson cynt eich bod yn gwneud eich problemau, yn dweud, 110 00:04:48,082 --> 00:04:49,880 oes gennych gwestiwn. 111 00:04:49,880 --> 00:04:52,340 Mewngofnodi i CS50 Trafodwch. 112 00:04:52,340 --> 00:04:53,190 Postiwch eich cwestiwn. 113 00:04:53,190 --> 00:04:55,820 Ac yna yn un o'r hundreds-- efallai, thousands-- o gyfoedion 114 00:04:55,820 --> 00:04:57,960 Bydd cymryd y dosbarth hwn ar-lein mewngofnodi. 115 00:04:57,960 --> 00:05:01,182 Ac efallai y gall rhywun gael eich ateb cyn can TA. 116 00:05:01,182 --> 00:05:03,390 Mae'n y bôn dim ond Fforwm ar-lein y gallwn i gyd 117 00:05:03,390 --> 00:05:04,556 defnyddio i drafod ein problemau. 118 00:05:04,556 --> 00:05:06,483 Mae hynny'n cŵl. 119 00:05:06,483 --> 00:05:10,660 120 00:05:10,660 --> 00:05:11,550 >> IAWN. 121 00:05:11,550 --> 00:05:13,220 Felly problem yn gosod. 122 00:05:13,220 --> 00:05:17,840 Rydym yn agos ati yn y drwchus o broblem a osodwyd dau. 123 00:05:17,840 --> 00:05:20,570 Mae llawer ohonom eisoes brwydro drwy problem sefydlu un. 124 00:05:20,570 --> 00:05:24,460 Rydym eisoes yn gwybod bod efallai yn aros am y noson olaf i wneud eich pset 125 00:05:24,460 --> 00:05:28,170 Nid yw'r peth smartest i'w wneud yn CS50. 126 00:05:28,170 --> 00:05:32,380 >> Awgrymiadau ac awgrymiadau yn y bôn ar gyfer llwyddiant yn cael eu darllen y fanyleb gyfan. 127 00:05:32,380 --> 00:05:36,270 Faint ohonoch chi eisoes Darllenwch y spec ar gyfer pset 2? 128 00:05:36,270 --> 00:05:36,770 IAWN. 129 00:05:36,770 --> 00:05:39,840 Dyna swm solet. 130 00:05:39,840 --> 00:05:43,210 Yr wyf yn gwybod eich bod guys yn ôl pob tebyg wedi cydnabod erbyn hyn mae'r specs yn wirioneddol hir. 131 00:05:43,210 --> 00:05:45,700 Maen nhw'n iawn, iawn o amser. 132 00:05:45,700 --> 00:05:49,630 >> Mae'n anodd iawn i ddarllen pob llinell o'r gair ofalus gan air. 133 00:05:49,630 --> 00:05:52,780 Rydych am i ddim ond sgimio i le mae'n dweud wrthych i wneud rhywbeth. 134 00:05:52,780 --> 00:05:54,459 Gallaf warantu chi, peidiwch â gwneud hynny. 135 00:05:54,459 --> 00:05:56,750 Os byddwch yn gwneud hynny, mae'n debyg eich bod mynd i golli rywle 136 00:05:56,750 --> 00:05:58,458 lle mae'n dweud wrthych sut i ddechrau problem 137 00:05:58,458 --> 00:06:01,140 neu ei fod yn dweud wrthych beth i'w enw eich problem neu mae'n dweud wrthych, 138 00:06:01,140 --> 00:06:03,720 mae'n debyg mai dyma'r ffordd orau i ddechrau gwneud eich problem. 139 00:06:03,720 --> 00:06:05,050 Ac yna byddwch yn cael ei golli. 140 00:06:05,050 --> 00:06:08,219 >> Pan fyddwch yn ceisio i ddarllen eich fanyleb hanner ffordd drwy, 141 00:06:08,219 --> 00:06:10,510 mae llawer o'r pwysig information-- yn yr ystyr nad ydych yn 142 00:06:10,510 --> 00:06:12,260 mynd i fod yn gallu mewn gwirionedd mynediad. 143 00:06:12,260 --> 00:06:13,219 Felly darllenwch y fanyleb gyfan. 144 00:06:13,219 --> 00:06:15,468 Ceisiwch ddarllen y fanyleb cyfan cyn i chi ddod i'r adran, 145 00:06:15,468 --> 00:06:17,360 oherwydd wedyn, pan fyddwn yn siarad am y pset, 146 00:06:17,360 --> 00:06:21,070 gallwn ni i gyd gael syniad o'r hyn sy'n digwydd. 147 00:06:21,070 --> 00:06:25,169 >> Yn ail, mae hwn yn gysyniad y byddaf yn hoffi i gyfeirio 148 00:06:25,169 --> 00:06:26,710 llawer drwy gydol y semester cwrs. 149 00:06:26,710 --> 00:06:30,070 Ond yn ei hanfod, gwrdd â ni hanner ffordd, dde? 150 00:06:30,070 --> 00:06:33,970 Me, fel eich TA a Jason fel cwrs rheolwr a Scaz fel eich athro 151 00:06:33,970 --> 00:06:37,120 a David fel eich athro a phob un y cynorthwywyr addysgu hyfryd arall yn y cwrs hwn, 152 00:06:37,120 --> 00:06:39,830 cynorthwywyr yn course-- hwn byddwn yn gwneud ein gorau 153 00:06:39,830 --> 00:06:42,965 i sicrhau eich bod yn cael eu gosod hyd at lwyddo yn y cwrs hwn. 154 00:06:42,965 --> 00:06:43,840 Byddwn yn cadw adran. 155 00:06:43,840 --> 00:06:44,870 Byddwn yn cynnal oriau swyddfa. 156 00:06:44,870 --> 00:06:47,087 Byddwn yn ateb eich ffôn galwadau, ateb eich negeseuon e-bost, 157 00:06:47,087 --> 00:06:49,670 gwneud popeth o fewn ein gallu i wneud yn siŵr bod eich cwestiynau yn cael eu hateb. 158 00:06:49,670 --> 00:06:51,460 >> Fodd bynnag, yn ein helpu allan hefyd. 159 00:06:51,460 --> 00:06:52,450 Dewch i gwrdd â ni hanner ffordd. 160 00:06:52,450 --> 00:06:56,040 Os byddwch yn dod i oriau swyddfa Nid yw wedi mynd i adran, nid 161 00:06:56,040 --> 00:07:02,060 ar ôl gweld y darlithoedd, heb unrhyw syniad beth sy'n digwydd, fod fel, helpa fi. 162 00:07:02,060 --> 00:07:04,350 Rydw i'n mynd i fod fel, yn dda, mae'n ddrwg gen i. 163 00:07:04,350 --> 00:07:06,410 Gall fod yn amser i roi benthyg hynny ysgwydd i grio ar, 164 00:07:06,410 --> 00:07:08,959 oherwydd nid i ddim yn siwr beth y gallaf ei wneud i helpu chi 165 00:07:08,959 --> 00:07:12,000 os nad ydych yn ceisio o leiaf help eich hun ychydig yn y dechrau. 166 00:07:12,000 --> 00:07:12,910 Dewch i gwrdd â ni hanner ffordd. 167 00:07:12,910 --> 00:07:15,020 Rydych yn gwybod, dewch barod i ateb a chael 168 00:07:15,020 --> 00:07:16,353 yn barod i gymryd rhan yn y deunydd. 169 00:07:16,353 --> 00:07:19,342 Mae'n gwneud pethau cymaint yn haws i bawb dan sylw. 170 00:07:19,342 --> 00:07:22,970 Yeah, dyna 'n bert lawer iddo. 171 00:07:22,970 --> 00:07:23,720 >> Graddio. 172 00:07:23,720 --> 00:07:29,250 Felly, ar y maes llafur, mae'n eithaf manwl ynglŷn â sut yr ydym gradd. 173 00:07:29,250 --> 00:07:32,440 Ond yn y bôn, mae'r dadansoddiad yn hyn yw 50% o'ch gradd 174 00:07:32,440 --> 00:07:34,530 fydd y psets, a oedd yn yn hyfryd, oherwydd dyna 175 00:07:34,530 --> 00:07:37,400 ble rydych yn gwario'r helaeth rhan fwyaf o'ch amser dynodedig ar. 176 00:07:37,400 --> 00:07:39,854 Cwisiau 40%, ac yn eich Bydd prosiect terfynol yn 10%. 177 00:07:39,854 --> 00:07:42,520 Bydd dau gwis drwy gydol cwrs y semester. 178 00:07:42,520 --> 00:07:47,050 Rwy'n credu yr amserau a'r dyddiadau rhestru hefyd ar y maes llafur. 179 00:07:47,050 --> 00:07:49,210 >> Mae'r ffordd y byddwn yn fod yn graddio eich psets 180 00:07:49,210 --> 00:07:53,930 yw bod gennym y bôn pedwar gwerthoedd yr ydym yn neilltuo i bob gradd. 181 00:07:53,930 --> 00:07:57,250 Mae gennym werth gwmpas, cywirdeb, dylunio, ac arddull. 182 00:07:57,250 --> 00:08:01,530 Felly, fel y gwelwch, dyna fath o o'n fformiwla ar gyfer cyfrifo psets. 183 00:08:01,530 --> 00:08:03,640 Tri rydym yn rhoi y mwyaf pwysau i Cywirdeb, 184 00:08:03,640 --> 00:08:06,140 oherwydd mae'n amlwg eich hyfforddwr Dylid profi ar gyfer yr achosion 185 00:08:06,140 --> 00:08:08,480 ein bod am iddo i brofi am. 186 00:08:08,480 --> 00:08:11,000 >> Rydych guys i gyd yn cael check50 ar gael i chi. 187 00:08:11,000 --> 00:08:13,730 Mae'n swyddogaeth ddefnyddiol iawn eich bod yn gallu guys i gyd 188 00:08:13,730 --> 00:08:17,560 lwytho eich cod i ein gweinyddion, lle y byddwn yn ei wirio ar eich rhan. 189 00:08:17,560 --> 00:08:20,800 A ydych wedi gweld rhai wynebau frowny, wynebau hapus. 190 00:08:20,800 --> 00:08:22,119 Maen nhw'n iawn, iawn o gymorth. 191 00:08:22,119 --> 00:08:23,910 Peidiwch â bod yn y fyfyrwyr sy'n hoffi geisiau 192 00:08:23,910 --> 00:08:26,230 i hardcode yn yr holl atebion iddynt. 193 00:08:26,230 --> 00:08:30,050 Rwyf yn bendant wedi gweld pset lle Gwelodd rhywun holl werthoedd check50 194 00:08:30,050 --> 00:08:33,429 ac maent yn codio in-- unig galed os rhif hwn, argraffwch y nifer hwn. 195 00:08:33,429 --> 00:08:35,080 Os bydd y nifer, argraffwch y rhif hwnnw. 196 00:08:35,080 --> 00:08:36,090 Peidiwch â gwneud hynny. 197 00:08:36,090 --> 00:08:39,360 >> Hyd yn oed er yn dechnegol check50 yn gywir, 198 00:08:39,360 --> 00:08:41,809 eich ffordd o ddatrys y Nid yw problem yn gywir. 199 00:08:41,809 --> 00:08:45,770 Felly, dim ond yn defnyddio check50 gynnil. 200 00:08:45,770 --> 00:08:48,497 Ond mae hefyd yn gwneud yn siŵr eich bod yn deall sut y mae'n gweithredu, 201 00:08:48,497 --> 00:08:50,580 mae'r rhaglen yn gweithredu yn ychwanegol at check50, 202 00:08:50,580 --> 00:08:53,120 gan na allwn brofi pob achos posibl o check50. 203 00:08:53,120 --> 00:08:55,440 Byddwn yn profi rhai ohonynt. 204 00:08:55,440 --> 00:09:00,390 >> Dylunio yn ei hanfod, sut dylunio'n dda yw eich cod? 205 00:09:00,390 --> 00:09:04,150 Os ydych yn lluosog copi-gludo linellau o god lawer, lawer gwaith. 206 00:09:04,150 --> 00:09:06,960 Efallai nad oes gennych yn eithaf y dyluniad gorau yn eich cod. 207 00:09:06,960 --> 00:09:09,470 Efallai ei bod yn amser i ychwanegu y ddolen. 208 00:09:09,470 --> 00:09:12,090 Yn y bôn, dyma 'i' jyst i gyd am geisio gwneud eich cod, 209 00:09:12,090 --> 00:09:17,010 ceisio ysgrifennu eich cod mor effeithlon ag y bo modd fel bod eich rhaglen yn rhedeg 210 00:09:17,010 --> 00:09:19,630 cyn gynted â phosibl. 211 00:09:19,630 --> 00:09:20,996 >> Yn olaf, yr ydym wedi arddull. 212 00:09:20,996 --> 00:09:24,360 Felly arddull yn fath o fympwyol tymor, goddrychol. 213 00:09:24,360 --> 00:09:27,470 Yr wyf yn gwybod ein bod yn swyddogol gael canllaw arddull 50 ar gyfer CS50, 214 00:09:27,470 --> 00:09:30,050 lle mae'n dweud wrthych, oh chi, Dylai fod â gofod yma. 215 00:09:30,050 --> 00:09:32,220 Dylech fath o fformat eich cod fel hyn. 216 00:09:32,220 --> 00:09:34,070 Dylech enwi pethau fel hyn. 217 00:09:34,070 --> 00:09:38,180 >> Dwi ddim yn poeni, fel y cyfryw, sut byddwch yn dewis arddull eich cod, 218 00:09:38,180 --> 00:09:39,840 yn union cyn belled ag y byddwch yn aros yn gyson. 219 00:09:39,840 --> 00:09:43,732 Er enghraifft, os ydych yn hoffi gadael gofod ar ôl eich pedwar 220 00:09:43,732 --> 00:09:45,690 cyn eich pedair dolen, dim ond gwneud hynny bob tro. 221 00:09:45,690 --> 00:09:46,523 Peidiwch fath o wneud hynny. 222 00:09:46,523 --> 00:09:47,730 Peidiwch â gwneud hynny adegau eraill. 223 00:09:47,730 --> 00:09:51,046 Os ydych yn hoffi cadw cyrliog gofod bresys ffordd arbennig, 224 00:09:51,046 --> 00:09:52,170 dim ond bob amser yn gwneud felly. 225 00:09:52,170 --> 00:09:54,628 Peidiwch fath o wneud yn rhywle yma ac yn rhywle nad oes. 226 00:09:54,628 --> 00:09:57,010 Pan rydym yn graddio, mae'n anodd iawn 227 00:09:57,010 --> 00:09:59,420 os oes gen i ddim syniad sut eich bod yn fformatio eich cod, 228 00:09:59,420 --> 00:10:02,064 pethau'n wacky ac allan o le. 229 00:10:02,064 --> 00:10:04,980 Os ydych dim ond ei gadw yn gyson, 'i' llawer haws i mi fel y mwyaf 230 00:10:04,980 --> 00:10:06,310 i allu darllen eich cod. 231 00:10:06,310 --> 00:10:09,393 Mae'n llawer haws i chi fel myfyriwr i allu edrych drwy eich cod 232 00:10:09,393 --> 00:10:11,720 a gweld beth sydd o'i le ar mae'n torri pam mae problemau. 233 00:10:11,720 --> 00:10:15,740 Arddull yw un o'r pethau hawsaf gallwch chi guys wneud i gael sgôr llawn. 234 00:10:15,740 --> 00:10:18,770 Yn y bôn, os ydych yn unig yn poeni, os byddwch yn talu pum munud o sylw 235 00:10:18,770 --> 00:10:22,760 at eich cod bob wythnos, dylech yn cael pwyntiau arddull llawn. 236 00:10:22,760 --> 00:10:26,020 >> Yn olaf, mae gennym yr hyn a elwir yn y lluosydd o gwmpas. 237 00:10:26,020 --> 00:10:28,890 Scope-- yr wyf yn gwybod ei fod yn fawr gair, yn enwedig yn y dosbarth hwn. 238 00:10:28,890 --> 00:10:31,030 Ond mae cwmpas, bob cyfrif sy'n yw eich bod yn ceisio 239 00:10:31,030 --> 00:10:33,670 y psets hyd eithaf eich gallu. 240 00:10:33,670 --> 00:10:37,180 Os byddwch yn troi mewn tri allan o'ch pedwar problemau 241 00:10:37,180 --> 00:10:39,460 ac nid ydynt hyd yn oed yn cynnig ar y cafodd yr un olaf, rydych yn ôl pob tebyg 242 00:10:39,460 --> 00:10:41,630 mynd i golli rhai pwyntiau ar gwmpas. 243 00:10:41,630 --> 00:10:44,560 >> Hyd yn oed os ydych yn unig yn dechrau y broblem, gwneud eich gorau i gerdded drwyddo. 244 00:10:44,560 --> 00:10:47,691 Hyd yn oed os na fydd yn gweithio, trowch i mewn, oherwydd mae hynny'n dangos ac yn dangos 245 00:10:47,691 --> 00:10:50,190 i ni fod yr ydych yn ceisio, bod chi cynnig ar y broblem a osodwyd 246 00:10:50,190 --> 00:10:51,430 hyd eithaf eich gallu. 247 00:10:51,430 --> 00:10:53,800 Ac yna gallwn roi i chi pwyntiau llawn ar gyfer cwmpas. 248 00:10:53,800 --> 00:10:58,715 >> Scope hefyd yn bwysig iawn ar gyfer pan fyddwn siarad am y gostyngiad sgôr pset isaf. 249 00:10:58,715 --> 00:11:02,010 Felly, yn ystod y semester, byddwch yn guys yn cael naw psets. 250 00:11:02,010 --> 00:11:05,340 A byddwn mewn gwirionedd yn cael ei gollwng y sgôr isaf allan o'r rheiny naw, 251 00:11:05,340 --> 00:11:07,670 ond dim ond os oes gennych bwyntiau cwmpas llawn. 252 00:11:07,670 --> 00:11:11,120 >> Felly, os byddwch yn troi mewn pset anghyflawn, yn anffodus, ni allwn gollwng bod un, 253 00:11:11,120 --> 00:11:13,540 oherwydd bod eich cwmpas Nid yw pwyntiau eu cwblhau. 254 00:11:13,540 --> 00:11:16,570 Felly hyd yn oed os oes gennych yr wythnos ofnadwy ble rydych yn marw ac rydych yn sâl 255 00:11:16,570 --> 00:11:20,040 neu eich ci yn marw, eich cath yn marw, ac rydych yn gorlwytho gyda gwaith cartref, 256 00:11:20,040 --> 00:11:21,074 jyst roi cynnig ar y pset. 257 00:11:21,074 --> 00:11:22,490 Ei wneud ar y hyd eithaf eich gallu. 258 00:11:22,490 --> 00:11:23,840 Os na fydd yn gweithio, does dim ots. 259 00:11:23,840 --> 00:11:24,506 Dim ond yn ei droi i mewn. 260 00:11:24,506 --> 00:11:26,590 O leiaf gallwn roi eich cyfeirio am ymdrech. 261 00:11:26,590 --> 00:11:28,510 >> A am ymdrech yn y dosbarth hwn. 262 00:11:28,510 --> 00:11:30,170 Ar gollwng sgôr isaf lleiaf am ymdrech. 263 00:11:30,170 --> 00:11:32,354 Felly ie. 264 00:11:32,354 --> 00:11:33,270 Dyna 'n bert lawer iddo. 265 00:11:33,270 --> 00:11:36,521 Oes gan unrhyw un gwestiynau felly ymhell ar sut rydym gradd yn y dosbarth? 266 00:11:36,521 --> 00:11:37,187 Neu unrhyw un o'r rhain? 267 00:11:37,187 --> 00:11:41,220 Unrhyw un o'r rhain mor far-- adrannau, oriau swyddfa? 268 00:11:41,220 --> 00:11:41,720 Cool. 269 00:11:41,720 --> 00:11:46,720 270 00:11:46,720 --> 00:11:47,800 IAWN. 271 00:11:47,800 --> 00:11:51,260 >> Felly, mae hwn yn bwnc nad oes unrhyw un 'n sylweddol yn hoffi siarad am. 272 00:11:51,260 --> 00:11:53,084 Dwi ddim yn hoffi siarad am y peth. 273 00:11:53,084 --> 00:11:55,250 Nid ydych guys ddim wir eisiau i fy nghlywed yn siarad am y peth. 274 00:11:55,250 --> 00:11:57,690 Ond yn anffodus, rydym i gyd rhaid i siarad am y peth. 275 00:11:57,690 --> 00:12:00,110 Treuliodd David 20 munud ddarlithio siarad am y peth. 276 00:12:00,110 --> 00:12:02,580 A dyna yw testun gonestrwydd academaidd. 277 00:12:02,580 --> 00:12:08,110 >> Felly, yr ydym i gyd yma yn ôl pob tebyg wedi ysgrifennu mae rywbryd traethawd yn ein gyrfa Iâl. 278 00:12:08,110 --> 00:12:11,800 Mae'n debyg Rydym wedi gotten sgwrs lle rydym wedi cael gwybod i beidio plagiarize ein traethawd, 279 00:12:11,800 --> 00:12:13,940 oherwydd nad yw gwaith yn ein un ni. 280 00:12:13,940 --> 00:12:18,109 Mewn gwyddoniaeth gyfrifiadurol, rydym wedi yr un math o gysyniad. 281 00:12:18,109 --> 00:12:20,150 Mae'r holl waith yr ydych yn ei gyflwyno, pob cod eich bod yn ysgrifennu 282 00:12:20,150 --> 00:12:21,900 Dylai fod cod eich bod wedi ysgrifennu. 283 00:12:21,900 --> 00:12:24,280 Ni ddylai fod cod yr ydych wedi a gopïwyd o rywle arall. 284 00:12:24,280 --> 00:12:26,777 Ni ddylai fod cod sy'n rydych wedi googled a plopped yn 285 00:12:26,777 --> 00:12:28,360 ac nid ydych yn wir yn gwybod os yw'n gweithio. 286 00:12:28,360 --> 00:12:32,440 Rydych fath o gael ymdeimlad o beth mae'n ei wneud, ond nid mewn gwirionedd. 287 00:12:32,440 --> 00:12:36,562 Pan fyddwch mewn amheuaeth, yn y bôn, dim ond ei fod yn fod yn rhesymol. 288 00:12:36,562 --> 00:12:38,520 Ar ein maes llafur, mae gennym rhestr gyfan o bethau 289 00:12:38,520 --> 00:12:40,560 ydym yn eu hystyried yn rhesymol yn erbyn peidio rhesymol. 290 00:12:40,560 --> 00:12:43,820 >> Er enghraifft, yn rhesymol yw i chi a'ch ffrind 291 00:12:43,820 --> 00:12:47,360 trafod beth yw'r ffordd orau i fynd tua rhesymegol ddatrys problem. 292 00:12:47,360 --> 00:12:48,910 Mae hynny'n eithaf rhesymol. 293 00:12:48,910 --> 00:12:53,244 Yr hyn na fyddai'n rhesymol yw os ydych yn guys at ei gilydd, teipio yr un cod, 294 00:12:53,244 --> 00:12:54,410 ac yn troi yn yr un cod. 295 00:12:54,410 --> 00:12:56,302 Dyw hynny ddim yn rhesymol. 296 00:12:56,302 --> 00:12:57,510 Un peth, math o draethawd. 297 00:12:57,510 --> 00:12:59,290 Os hoffech drafod gyda'ch ffrind, hey, 298 00:12:59,290 --> 00:13:00,220 mae hyn yn hyn yr wyf am ei ysgrifennu am. 299 00:13:00,220 --> 00:13:02,500 Dyma'r camau Rwyf am cymryd i ysgrifennu am y peth, gwych. 300 00:13:02,500 --> 00:13:03,208 Mae hynny'n wych. 301 00:13:03,208 --> 00:13:04,790 Os gwelwch yn dda gydweithio â'i gilydd. 302 00:13:04,790 --> 00:13:06,540 Os ydych yn guys yn dechrau ysgrifennu yr un peth, 303 00:13:06,540 --> 00:13:10,020 troi yn yr un traethawd, mae hynny'n llai OK. 304 00:13:10,020 --> 00:13:13,200 Felly, os ydynt yn ansicr, nid yn unig yn ei wneud. 305 00:13:13,200 --> 00:13:16,940 >> Yma, rydym yn CS50, mae gennym sgriptiau bod yn rhedeg i awtomeiddio i brofi 306 00:13:16,940 --> 00:13:21,740 nid yn unig y cywirdeb eich cod, ond hefyd natur unigryw eich cod. 307 00:13:21,740 --> 00:13:25,920 Felly peidiwch ein rhoi yn y sefyllfa o gael i gyfeirio'ch achos at EXCOMM. 308 00:13:25,920 --> 00:13:31,110 Os gwelwch yn dda yn unig ar gyfer pawb, gadewch i ni gwneud hyn yn brofiad gwych. 309 00:13:31,110 --> 00:13:33,600 Mae pawb yn dysgu yn well, yr ydym i gyd yn hapusach, 310 00:13:33,600 --> 00:13:37,926 ac yr ydym i gyd yn sefydlu i llwyddo yn y cwrs hwn. 311 00:13:37,926 --> 00:13:39,800 Rhywbeth sy'n iawn unigryw am y dosbarth hwn 312 00:13:39,800 --> 00:13:42,660 fy mod yn credu dylai pawb 'n sylweddol talu sylw i yw bod gennym 313 00:13:42,660 --> 00:13:44,930 hyn a elwir y gofid cymal yn ein maes llafur. 314 00:13:44,930 --> 00:13:50,010 Felly y bôn, o fewn 72 awr, os ydych yn credu eich bod wedi gwneud rhywbeth 315 00:13:50,010 --> 00:13:53,240 nad ydych yn wir yn siwr ei briodol, dewch atom ni. 316 00:13:53,240 --> 00:13:57,220 Rydym yn addo i chi fod o fewn 72 awr byddwn yn ymdrin â'r achos ein hunain 317 00:13:57,220 --> 00:13:59,820 heb gyfeirio at uwch awdurdod yn y weinyddiaeth. 318 00:13:59,820 --> 00:14:03,100 >> Felly, os byddwch yn dod ataf a dweud, Andi, hey, rwy'n wirioneddol ddrwg gennym, 319 00:14:03,100 --> 00:14:07,620 ond yr wyf yn meddwl bod yna linellau cwpl yn fy Cod neithiwr fy mod yn fath o googled, 320 00:14:07,620 --> 00:14:10,120 got off o Stack Gorlif, copïo a gludo, 321 00:14:10,120 --> 00:14:13,680 ac rwy'n wirioneddol ddrwg gennym am hynny, gadewch i mi wybod. 322 00:14:13,680 --> 00:14:16,900 Peidiwch â dim ond gadael iddo fester a dim ond yn gobeithio fy mod yn ei ddal. 323 00:14:16,900 --> 00:14:17,784 Byddwn yn ei ddal. 324 00:14:17,784 --> 00:14:18,450 Dim ond yn dod i mi. 325 00:14:18,450 --> 00:14:20,520 Gadewch i mi wybod o fewn 72 awr. 326 00:14:20,520 --> 00:14:22,240 Byddwn yn chyfrif i maes i ateb. 327 00:14:22,240 --> 00:14:26,679 Ac rydym yn addo na fyddwn yn cyfeirio at awdurdodau prifysgol yn y bôn. 328 00:14:26,679 --> 00:14:29,220 Felly mae'n yn eich diddordeb gorau i ddim ond fod yn onest gyda phawb 329 00:14:29,220 --> 00:14:31,720 cymryd rhan yn y cwrs. 330 00:14:31,720 --> 00:14:34,630 >> IAWN. 331 00:14:34,630 --> 00:14:35,240 IAWN. 332 00:14:35,240 --> 00:14:37,800 Felly nawr, yn gyflym cyn Wyf am symud ymlaen, a oes unrhyw un 333 00:14:37,800 --> 00:14:42,670 gennych gwestiynau ynglŷn â logisteg ar sut y cyrsiau rydym yn mynd i redeg, 334 00:14:42,670 --> 00:14:45,982 sut adrannau yn mynd i redeg, dim o hynny? 335 00:14:45,982 --> 00:14:46,711 IAWN. 336 00:14:46,711 --> 00:14:47,210 Yeah. 337 00:14:47,210 --> 00:14:48,126 >> GYNULLEIDFA: [Anghlywadwy]? 338 00:14:48,126 --> 00:14:50,414 339 00:14:50,414 --> 00:14:51,080 Andi Peng: Yeah. 340 00:14:51,080 --> 00:14:54,850 Felly quizzes-- faint ohonoch chi yn yr adran Dydd Llun / Dydd Mercher? 341 00:14:54,850 --> 00:14:56,700 Faint ydych mewn y dydd Mawrth / Iau? 342 00:14:56,700 --> 00:14:58,550 Iawn, felly mae'n rhaniad cadarn yma. 343 00:14:58,550 --> 00:15:00,900 Felly, y ffordd yr ydym yn rhedeg mae'n yn Iâl yw ein bod yn 344 00:15:00,900 --> 00:15:04,040 yn mynd i gael dau ar wahân quizzes-- un ar gyfer pob adran hon-- sy'n 345 00:15:04,040 --> 00:15:06,160 yn cael eu cymryd yn ystod y dosbarth. 346 00:15:06,160 --> 00:15:09,310 Rwy'n credu ei fod mis Hydref, ddiwedd mis Hydref, rhywbeth fel 'na, fel wythnos un 347 00:15:09,310 --> 00:15:10,794 y cwis. 348 00:15:10,794 --> 00:15:11,960 Yeah, felly dewch i'r dosbarth. 349 00:15:11,960 --> 00:15:13,920 Ar y Dydd Llun neu ddydd Mercher, byddwch yn cymryd y cwis. 350 00:15:13,920 --> 00:15:16,336 Ar y Dydd Mawrth neu ddydd Iau, byddwch yn cymryd cwis gwahanol. 351 00:15:16,336 --> 00:15:18,570 Ond bydd yr un deunydd yn cael eu cynnwys. 352 00:15:18,570 --> 00:15:19,160 Yeah. 353 00:15:19,160 --> 00:15:20,660 Cwestiwn da. 354 00:15:20,660 --> 00:15:21,160 Yeah. 355 00:15:21,160 --> 00:15:23,260 >> GYNULLEIDFA: Ble rydym yn ewch i wirio ein graddau? 356 00:15:23,260 --> 00:15:23,926 >> Andi Peng: Yeah. 357 00:15:23,926 --> 00:15:28,420 Felly, byddaf yn anfon allan e-bost beth bynnag bob wythnos 358 00:15:28,420 --> 00:15:31,460 pan cwisiau yn graded-- neu, ddrwg gennym, pan psets eu graddio. 359 00:15:31,460 --> 00:15:34,120 Psets yn cael eu troi fel arfer yn erbyn hanner dydd neu ddydd Gwener. 360 00:15:34,120 --> 00:15:37,540 Felly yr wyf yn addo y byddaf yn ceisiwch eu cael yn ôl i chi 361 00:15:37,540 --> 00:15:40,000 gan canol dydd y dydd Gwener canlynol. 362 00:15:40,000 --> 00:15:44,950 >> Pryd bynnag y byddaf radd yn pset, byddaf yn anfon allan hysbysiad ar y llyfr graddau 363 00:15:44,950 --> 00:15:47,070 sy'n dweud wrth eich sgôr i chi gellir eu gweld ar-lein. 364 00:15:47,070 --> 00:15:52,022 Felly hawl yr wythnos hon, ar ôl i mi gorffen graddio psets wythnos ddiwethaf, 365 00:15:52,022 --> 00:15:54,230 byddwch yn guys yn cael neges e-bost hysbysiad yn dweud wrthych, 366 00:15:54,230 --> 00:15:55,870 hey dyma lle rydych ewch i weld eich graddau. 367 00:15:55,870 --> 00:15:57,680 A gallwch weld pob dadansoddiad o'ch graddau. 368 00:15:57,680 --> 00:15:58,555 Gallwch weld sylwadau. 369 00:15:58,555 --> 00:16:00,360 O, beth gyflym hefyd. 370 00:16:00,360 --> 00:16:03,060 Mae'r adran sylwadau yn yr awyr llyfr yw lle byddaf yn ôl pob tebyg 371 00:16:03,060 --> 00:16:05,300 treulio'r rhan fwyaf fy graddio amser. 372 00:16:05,300 --> 00:16:07,094 Felly, un peth sy'n wirioneddol bwysig pan 373 00:16:07,094 --> 00:16:09,010 rydych guys yn edrych eich graddau ar eich psets 374 00:16:09,010 --> 00:16:11,400 nid yn edrych yn unig yn y sgôr corfforol 375 00:16:11,400 --> 00:16:14,630 ond hefyd yn cymryd amser i 'n sylweddol yn darllen fy sylwadau. 376 00:16:14,630 --> 00:16:17,820 >> Yn aml, sy'n rhoi adborth i chi ar sut yr ydych chi'n datrys problem. 377 00:16:17,820 --> 00:16:20,480 Os oes angen i wneud rhywbeth ychydig yn well, 378 00:16:20,480 --> 00:16:24,080 beirniadaeth adeiladol fel arfer Rhoddir gorau yn y rhai yr adran sylwadau. 379 00:16:24,080 --> 00:16:26,950 Felly os gwelwch yn dda, os gwelwch yn dda, dw i'n mynd i dreulio amser yn ysgrifennu sylwadau. 380 00:16:26,950 --> 00:16:30,440 Os gwelwch yn dda, byddwn yn wir yn gwerthfawrogi hynny os ydych guys yn darllen y sylwadau hynny. 381 00:16:30,440 --> 00:16:31,170 IAWN. 382 00:16:31,170 --> 00:16:34,150 Cool. 383 00:16:34,150 --> 00:16:34,680 >> Iawn. 384 00:16:34,680 --> 00:16:40,680 Felly, rydym yn mynd i ddechrau siarad a dim ond yn adolygu gyflym 385 00:16:40,680 --> 00:16:45,040 peth o'r deunydd o wythnos sero yn unig felly rydym yn 386 00:16:45,040 --> 00:16:48,760 ar y dudalen gywir ar gyfer dechrau problemau yr wythnos hon. 387 00:16:48,760 --> 00:16:52,600 Felly mae'r ddolen tra yn un o'r tri math o dolenni 388 00:16:52,600 --> 00:16:54,510 buom yn trafod yn gynharach yn y dosbarth hwn. 389 00:16:54,510 --> 00:16:57,060 >> Mae dolen tra ei hanfod wedi'i ysgrifennu yn y gystrawen 390 00:16:57,060 --> 00:17:00,666 lle, tra bod cyflwr penodol, gwneud hyn dro ar ôl tro, dde? 391 00:17:00,666 --> 00:17:02,040 Meddyliwch amdano yn y llun hon fan hyn. 392 00:17:02,040 --> 00:17:04,780 Rydych chi'n mynd i ddechrau ar bwynt penodol yn eich cod. 393 00:17:04,780 --> 00:17:09,030 Rydych yn mynd i fynd i mewn i'r cyflwr ddolen Os-- Dydw i ddim yn know-- x yn llai nag un. 394 00:17:09,030 --> 00:17:11,677 >> Os yw hynny'n wir, rydych yn mynd i weithredu i'r corff ddolen. 395 00:17:11,677 --> 00:17:14,010 A ydych yn mynd i barhau i wneud hynny eto, eto, eto, 396 00:17:14,010 --> 00:17:17,900 drosodd ac over-- a dyna pam ei fod yn loop-- nes bydd eich cyflwr yn dod yn 397 00:17:17,900 --> 00:17:19,079 ffug. 398 00:17:19,079 --> 00:17:22,140 Felly, yn y modd hwn, mae dolen tra yw un o'r ffyrdd symlach 399 00:17:22,140 --> 00:17:25,619 i ysgrifennu unrhyw fath o amod bod Mae angen i ailadrodd drosodd a drosodd a throsodd. 400 00:17:25,619 --> 00:17:28,109 Dim ond byddwch yn ofalus pryd bynnag y eich bod yn ysgrifennu unrhyw fath o ddolen 401 00:17:28,109 --> 00:17:32,140 bod gennych gyflwr ymadael fel ogystal â diweddariad i ba bynnag mae'n 402 00:17:32,140 --> 00:17:36,714 yw fel nad yw eich dolen yn unig rhedeg drosodd a throsodd anfeidrol. 403 00:17:36,714 --> 00:17:38,630 Mewn unrhyw achos, rydych yn mynd i am wneud yn siŵr 404 00:17:38,630 --> 00:17:42,670 eich bod yn newid rhyw agwedd ar eich cod neu ar ddiwedd y ddolen 405 00:17:42,670 --> 00:17:46,680 dim ond er mwyn gwneud yn siŵr eich bod wedi ffordd o symud ymlaen tuag at y cyflwr 406 00:17:46,680 --> 00:17:48,400 eich bod am gyfarfod i ben. 407 00:17:48,400 --> 00:17:50,239 A yw hynny'n gwneud synnwyr i bawb? 408 00:17:50,239 --> 00:17:52,530 Rydym nid yn unig yn dymuno bod yn dal i fyny yn troellog hwn lle 409 00:17:52,530 --> 00:17:55,710 rydym yn mynd o gwmpas ac o amgylch ac does dim ffordd i dorri'r ddolen. 410 00:17:55,710 --> 00:17:58,844 A phob dolen yn y bôn Mae gan ffordd o wneud hynny. 411 00:17:58,844 --> 00:17:59,344 IAWN. 412 00:17:59,344 --> 00:18:03,030 413 00:18:03,030 --> 00:18:06,060 >> Yn ail, mae llawer ohonoch yn eich psets Mario 414 00:18:06,060 --> 00:18:08,910 Roedd yn ôl pob tebyg i gyflogi y math hwn o ddolen. 415 00:18:08,910 --> 00:18:11,802 Fe'i gelwir yn do tra ddolen. 416 00:18:11,802 --> 00:18:14,510 Yn gyntaf oll, gall unrhyw un ddweud wrthyf beth yw'r gwahaniaeth rhwng do 417 00:18:14,510 --> 00:18:16,586 tra dolen a dolen tra mae? 418 00:18:16,586 --> 00:18:17,086 Yeah. 419 00:18:17,086 --> 00:18:21,030 >> GYNULLEIDFA: Y do tra ddolen yn rhedeg ar y cyntaf [Anghlywadwy]. 420 00:18:21,030 --> 00:18:22,120 >> Andi Peng: Yeah, yn union. 421 00:18:22,120 --> 00:18:27,130 Felly do tra dolen bob amser yn gwneud beth bynnag yn y tu mewn i'r do, y tu mewn i'r cromfachau 422 00:18:27,130 --> 00:18:30,520 yno ac yn gwneud amod hwnnw cyn gwirio'r am the-- ddrwg gennym, 423 00:18:30,520 --> 00:18:32,940 yn gwneud hynny Cod cyn gwirio ar gyfer y cyflwr. 424 00:18:32,940 --> 00:18:37,200 Ac mae hyn yn arbennig o berthnasol i ni yma yn y dosbarth hwn, gan fod rhan fwyaf o'r amser 425 00:18:37,200 --> 00:18:41,450 rydym yn mynd i eisiau i ysgogi y defnyddiwr ar gyfer rhyw fath o gyfraniad. 426 00:18:41,450 --> 00:18:43,520 Ac yna, yn dibynnu ar y cyfraniad y maent yn ei roi i ni, 427 00:18:43,520 --> 00:18:46,150 yna gallwn werthuso, oh, wneud mae angen i ysgogi nhw eto? 428 00:18:46,150 --> 00:18:49,930 >> Felly, yn Mario, os bydd y defnyddiwr yn rhoi i chi uchder negyddol, er enghraifft, 429 00:18:49,930 --> 00:18:52,990 ydych chi'n mynd i brydlon cyntaf ac yn gwneud beth bynnag sydd y tu mewn. 430 00:18:52,990 --> 00:18:54,820 Yna, rydych chi'n mynd i wirio tra. 431 00:18:54,820 --> 00:18:57,570 Rydych yn gwybod, yn negyddol 1, yw bod nifer cadarnhaol? 432 00:18:57,570 --> 00:19:00,680 Os nad yw'n, dw i'n mynd i fynd yn ôl ac ailadrodd y do ac ailadrodd 433 00:19:00,680 --> 00:19:03,950 ac yn ailadrodd ac yn ailadrodd nes eu bod yn olaf rhoi rhif yr ydych yn hoffi i chi, 434 00:19:03,950 --> 00:19:07,002 y gall pob un ohonom eu cyflogi yn ein cod. 435 00:19:07,002 --> 00:19:09,210 Mae'n eithaf pwysig ar gyfer yn y bôn unrhyw fewnbwn defnyddiwr. 436 00:19:09,210 --> 00:19:11,760 Gallaf warantu chi unrhyw amser mewn pset lle 437 00:19:11,760 --> 00:19:15,070 gofynnwn i chi gyfrannu unrhyw fath o god, rydym yn 438 00:19:15,070 --> 00:19:17,540 yn ôl pob tebyg yn mynd i roi i chi achos prawf yr ydym ni'n 439 00:19:17,540 --> 00:19:21,200 mynd i roi rhywbeth drwg i chi dyna mynd i geisio i dorri eich cod. 440 00:19:21,200 --> 00:19:25,044 >> Os byddwn yn ceisio i ofyn i chi mewnbwn yr cyfanrif, efallai y byddwn yn unig yn rhoi i chi llinyn 441 00:19:25,044 --> 00:19:26,460 a gweld sut y byddech yn trin hynny. 442 00:19:26,460 --> 00:19:30,610 Os byddwn yn gofyn i chi gyflogi oedran, efallai y byddwn yn rhoi rhif negatif i chi 443 00:19:30,610 --> 00:19:32,340 i weld sut y byddech yn trin hynny. 444 00:19:32,340 --> 00:19:37,260 Jyst gwnewch yn siŵr eich bod guys yn profi am achosion lle nad ydych yn cael y gorau 445 00:19:37,260 --> 00:19:38,590 mewnbwn, gadewch i 'jyst dweud. 446 00:19:38,590 --> 00:19:40,510 A do tra dolen yn oftentimes y gorau 447 00:19:40,510 --> 00:19:45,260 ffordd i ddylunio eich cod felly ei fod yn cyflawni hynny cwmpas. 448 00:19:45,260 --> 00:19:45,760 IAWN. 449 00:19:45,760 --> 00:19:48,930 450 00:19:48,930 --> 00:19:49,470 >> IAWN. 451 00:19:49,470 --> 00:19:53,270 Felly mae hyn yn ôl pob tebyg y mwyaf dolen gymhleth allan o'r tri 452 00:19:53,270 --> 00:19:54,990 ein bod wedi edrych ar hyd yn hyn. 453 00:19:54,990 --> 00:19:56,689 Ac mae'n ymddangos yn frawychus iawn ar y dechrau. 454 00:19:56,689 --> 00:19:59,730 Ond yr wyf yn gwarantu i chi, ar ôl i chi guys gael y hongian o sut i ddefnyddio ar gyfer dolen, 455 00:19:59,730 --> 00:20:03,320 mae'n un o'r pethau mwyaf defnyddiol, y rhan fwyaf o offer defnyddiol yn eich arsenal 456 00:20:03,320 --> 00:20:05,300 ar gyfer symud ymlaen yn y dosbarth hwn. 457 00:20:05,300 --> 00:20:09,920 >> Felly, er enghraifft, yn Scratch, cawsom y bloc syml iawn 458 00:20:09,920 --> 00:20:13,180 hynny newydd ei ddweud ailadrodd hwn penodol ymadroddion nifer penodol o weithiau. 459 00:20:13,180 --> 00:20:16,260 Gyda llaw, SAJ-- dyna Scaz Andi Jason. 460 00:20:16,260 --> 00:20:18,740 Rydym oftentimes arwyddo ein Saj ​​negeseuon e-bost. 461 00:20:18,740 --> 00:20:20,360 Os dywedwn Saj, peidiwch â bod yn ddryslyd. 462 00:20:20,360 --> 00:20:22,630 Dyna dim ond ni. 463 00:20:22,630 --> 00:20:28,600 >> Felly, yn Scratch, roeddem yn gallu cael bloc wedi dweud hynny, ailadrodd Rwyf wrth fy modd Saj! 464 00:20:28,600 --> 00:20:29,430 10 gwaith. 465 00:20:29,430 --> 00:20:30,130 Syml iawn. 466 00:20:30,130 --> 00:20:32,302 Mae'r rhesymeg y tu ôl i hynny yw iawn, yn syml iawn, dde? 467 00:20:32,302 --> 00:20:35,260 Dw i eisiau mynd yn gyntaf trwy'r cyntaf amser ac yn gweld bod, yr ail dro 468 00:20:35,260 --> 00:20:38,510 a gweld bod, trydydd tro, yn y blaen ac yn y blaen, hyd nes y byddwch yn taro i 10. 469 00:20:38,510 --> 00:20:41,960 >> A'r ffordd y byddem yn cynrychioli hynny yn Cod yn unig drwy syml ar gyfer dolen. 470 00:20:41,960 --> 00:20:45,440 Felly, ar gyfer, rydych chi'n mynd i ddatgan eich newidyn yma, yn yr achos hwn, 471 00:20:45,440 --> 00:20:46,349 gyda int. 472 00:20:46,349 --> 00:20:47,390 Rydym yn mynd i enwi i. 473 00:20:47,390 --> 00:20:49,500 Rydym yn mynd i ymgychwyn i 0. 474 00:20:49,500 --> 00:20:52,490 Ac mae'r rhifyn stopio yn mynd i fod i yn llai na 10. 475 00:20:52,490 --> 00:20:54,622 Ac mae'r diweddariad yn mynd i fod i ++. 476 00:20:54,622 --> 00:20:57,750 >> Ac o fewn y ddolen, mae'n mynd i weithredu hyd nes yn y pen draw iddo 477 00:20:57,750 --> 00:21:01,490 taro'r diwedd y condition-- lle achos, mae'n mynd i dorri'r ddolen. 478 00:21:01,490 --> 00:21:04,600 Dylai fod pethau yr ydych guys pob math o wedi ei weld o'r blaen 479 00:21:04,600 --> 00:21:07,270 ac roedd yn rhaid i wneud ar gyfer eich problem sefydlu un. 480 00:21:07,270 --> 00:21:12,310 A oes unrhyw un gennych unrhyw gwestiynau ynghylch gyfer dolenni ar hyn o bryd? 481 00:21:12,310 --> 00:21:12,930 IAWN. 482 00:21:12,930 --> 00:21:13,430 Great. 483 00:21:13,430 --> 00:21:17,520 484 00:21:17,520 --> 00:21:18,620 >> IAWN. 485 00:21:18,620 --> 00:21:22,270 Felly, ar gyfer y rhai ohonoch sydd wedi Darllenwch y spec pset ar gyfer yr wythnos hon 486 00:21:22,270 --> 00:21:27,690 gwybod ein bod yn mynd i gael i gyflogi rywbeth a elwir yn ASCII a bwrdd ASCII. 487 00:21:27,690 --> 00:21:32,380 Felly Dafydd yn y ddarlith aeth drosodd yn fyr sut cyfrifiaduron essentially-- popeth 488 00:21:32,380 --> 00:21:35,410 yn encoded mewn cyfrifiadur yn deuaidd, yn sero a rhai. 489 00:21:35,410 --> 00:21:39,740 A'r ffordd y mae cyfrifiaduron yn gallu i storio gwerthoedd gwahanol yn ychwanegol 490 00:21:39,740 --> 00:21:44,360 i zeros a rhai yn cael eu trwy fapio niferoedd hynny i gynrychioli ddigid eraill 491 00:21:44,360 --> 00:21:47,220 neu gymeriadau yn y bôn eraill. 492 00:21:47,220 --> 00:21:49,810 >> Felly, yn yr achos hwn, mae ASCII table-- i gyd mae'n ei wneud 493 00:21:49,810 --> 00:21:53,600 yw cymeriadau map, neu chars, i rifau. 494 00:21:53,600 --> 00:21:57,385 Felly y ffeil cod ffynhonnell yn eich computer-- y gwêl, 495 00:21:57,385 --> 00:22:00,010 hey, bagad o zeros a rhai, zeros a rhai, seroau a rhai. 496 00:22:00,010 --> 00:22:02,350 Dyna beth storio yn y cof gwirioneddol eich cyfrifiadur. 497 00:22:02,350 --> 00:22:04,750 >> Ond pan rydym pobl eisiau cyfathrebu gyda'r cyfrifiadur, 498 00:22:04,750 --> 00:22:08,249 want-- dywedwn, er enghraifft, os ydw i am y priflythyren A, 499 00:22:08,249 --> 00:22:10,540 Rydw i'n mynd i angen rhyw ffordd o ddweud wrth y cyfrifiadur, oh, 500 00:22:10,540 --> 00:22:16,300 pan fyddaf yn teipio priflythyren A, yr wyf yn golygu gynrychiolaeth hon yn deuaidd. 501 00:22:16,300 --> 00:22:22,260 >> Ac felly y ffordd yr ydym yn gwneud hynny yn y taflodd peth mympwyol a elwir tabl ASCII, 502 00:22:22,260 --> 00:22:25,020 lle rydym, fel bodau dynol, fel y rhaglenwyr, beth amser yn ôl, 503 00:22:25,020 --> 00:22:28,660 penderfynasom fympwyol ein bod yn yn mynd i aseinio rhif yma 504 00:22:28,660 --> 00:22:30,960 gwerthoedd i nodau hyn. 505 00:22:30,960 --> 00:22:32,720 >> Felly, gallwch chi guys google hwn ar-lein. 506 00:22:32,720 --> 00:22:37,120 Rwy'n credu bod yna dolen ato yn eich pset-- dim ond tabl map ASCII, ASCII 507 00:22:37,120 --> 00:22:37,720 bwrdd. 508 00:22:37,720 --> 00:22:40,722 'I jyst yn cyfieithu deuaidd rhifau i mewn i gymeriadau. 509 00:22:40,722 --> 00:22:42,930 Ac mae'n mynd i fod yn iawn ddefnyddiol ar gyfer eich set problem 510 00:22:42,930 --> 00:22:45,470 pryd bynnag y byddwch eisiau cyfrifo unrhyw beth neu os ydych 511 00:22:45,470 --> 00:22:47,880 eisiau i arddangos rhai cymeriadau neu cyfanrifau 512 00:22:47,880 --> 00:22:50,327 neu drin rhai gymeriadau. 513 00:22:50,327 --> 00:22:52,160 Mae'n mynd i fod yn iawn bwysig eich bod i gyd 514 00:22:52,160 --> 00:22:55,140 yn gwybod sut i lywio tabl ASCII. 515 00:22:55,140 --> 00:23:01,260 >> Felly, er enghraifft, yr priflythyren A ei gynrychioli gan y rhif 65. 516 00:23:01,260 --> 00:23:04,207 Ac mae'r llythrennau bach a ei chynrychioli gan 97. 517 00:23:04,207 --> 00:23:07,040 Felly mae'n bwysig gwybod bod y gwahaniaeth rhwng y ddau werth 518 00:23:07,040 --> 00:23:08,320 yw 32. 519 00:23:08,320 --> 00:23:13,210 Oftentimes, os oes angen i drosi o un i'r llall, mae'r gwahaniaeth yn 32. 520 00:23:13,210 --> 00:23:15,710 A pheidiwch â phoeni os ydych yn garedig o ddryslyd am hyn ar y dechrau. 521 00:23:15,710 --> 00:23:20,230 Byddwn yn mynd dros y ffordd y byddem cyflogi hyn mewn cod gwirioneddol. 522 00:23:20,230 --> 00:23:24,700 523 00:23:24,700 --> 00:23:26,380 >> IAWN. 524 00:23:26,380 --> 00:23:30,770 Felly, ar gyfer y rhai ohonoch sydd â gliniaduron allan, croeso i dynnu i fyny tabl ASCII, 525 00:23:30,770 --> 00:23:36,030 oherwydd bydd y rhain yn ôl pob tebyg ei gwneud yn ofynnol i chi guys i gyfeirnodi 526 00:23:36,030 --> 00:23:38,100 beth mae'r cymeriadau yn cael eu. 527 00:23:38,100 --> 00:23:38,640 IAWN. 528 00:23:38,640 --> 00:23:42,840 >> Felly wybod bod rhai map cymeriadau i rifau penodol, 529 00:23:42,840 --> 00:23:47,240 pe bawn yn rhedeg dim ond y cyntaf llinell o hynny code-- y printf a, 530 00:23:47,240 --> 00:23:50,900 llythrennau bach a, minws priflythrennau A. Oes unrhyw un 531 00:23:50,900 --> 00:23:55,880 cael ddyfalu ar yr hyn a fyddai'n argraffu allan o'r sgrin ar hyn o bryd? 532 00:23:55,880 --> 00:23:58,190 >> Felly, yn gyntaf oll, beth mae llythrennau bach yn eu cynrychioli? 533 00:23:58,190 --> 00:24:00,990 Pa rif yw bod hamgodio yn y tabl ASCII. 534 00:24:00,990 --> 00:24:01,490 Mae'n ddrwg gennym? 535 00:24:01,490 --> 00:24:02,630 >> GYNULLEIDFA: 97? 536 00:24:02,630 --> 00:24:03,630 >> Andi Peng: 97, gwych. 537 00:24:03,630 --> 00:24:05,077 A beth yw priflythyren A? 538 00:24:05,077 --> 00:24:06,330 >> GYNULLEIDFA: 65. 539 00:24:06,330 --> 00:24:08,255 >> Andi Peng: Felly beth yw 97 minws 65? 540 00:24:08,255 --> 00:24:09,227 >> GYNULLEIDFA: 32. 541 00:24:09,227 --> 00:24:09,810 Andi Peng: OK. 542 00:24:09,810 --> 00:24:13,530 Felly beth ydych chi'n guys meddwl yn mynd i yn digwydd pan fyddaf yn mewnbwn y llinell o god 543 00:24:13,530 --> 00:24:14,670 i mewn i fy nghyfrifiadur? 544 00:24:14,670 --> 00:24:17,981 545 00:24:17,981 --> 00:24:19,896 >> GYNULLEIDFA: [Anghlywadwy]. 546 00:24:19,896 --> 00:24:21,020 Andi Peng: Mae'n ddrwg gennyf, yn siarad i fyny. 547 00:24:21,020 --> 00:24:22,520 Dim pryderon. 548 00:24:22,520 --> 00:24:25,750 Mae hwn yn ddiogel iawn amgylchedd, minws y camera. 549 00:24:25,750 --> 00:24:27,550 Rydym ni i gyd yn mynd i'r canlynol-- unrhyw bryderon. 550 00:24:27,550 --> 00:24:30,940 Dim ond yr ydym ni i gyd yn mynd i honni fel 'i' jyst i ni ymlacio yn yr ystafell hon. 551 00:24:30,940 --> 00:24:31,480 Dim pryderon. 552 00:24:31,480 --> 00:24:33,410 Nid oes cwestiwn yn rhy dwp. 553 00:24:33,410 --> 00:24:35,300 Dim ateb yn ateb dwp. 554 00:24:35,300 --> 00:24:38,260 Mae'n debyg fy mod i'n mynd i wneud camgymeriadau yn ystod fy addysgu. 555 00:24:38,260 --> 00:24:40,740 O ddifrif, guys, dim ond blurt allan. 556 00:24:40,740 --> 00:24:43,092 Byddwch yn hyderus yn eich hun, eich bod yn gwybod? 557 00:24:43,092 --> 00:24:43,800 Felly beth oedd hynny? 558 00:24:43,800 --> 00:24:47,990 Pwy ddywedodd yr ateb diwethaf? 559 00:24:47,990 --> 00:24:48,540 IAWN. 560 00:24:48,540 --> 00:24:50,380 Gweiddi hynny 'n glws ac yn glir. 561 00:24:50,380 --> 00:24:51,220 >> GYNULLEIDFA: 32? 562 00:24:51,220 --> 00:24:51,850 >> Andi Peng: 32. 563 00:24:51,850 --> 00:24:54,141 OK, gadewch i ni redeg y cod hwn ac weld os dyna beth fydd yn digwydd. 564 00:24:54,141 --> 00:25:00,260 565 00:25:00,260 --> 00:25:00,760 IAWN. 566 00:25:00,760 --> 00:25:03,300 567 00:25:03,300 --> 00:25:06,360 Felly ag y gallwch guys fath o yn gweld, y nodiant arferol rydw i wedi 568 00:25:06,360 --> 00:25:12,250 a sefydlwyd yma am sut y byddem yn cyflogi unrhyw fath o raglen yn ein cyfrifiadur. 569 00:25:12,250 --> 00:25:14,770 Rydym wedi ein prif swyddogaeth o fewn ein prif swyddogaeth. 570 00:25:14,770 --> 00:25:17,265 Im 'jyst yn mynd i gopïo a past llinell hon o god. 571 00:25:17,265 --> 00:25:21,082 572 00:25:21,082 --> 00:25:23,540 Hefyd fod yn ofalus pan fyddwch yn guys yn copïo a gludo cod. 573 00:25:23,540 --> 00:25:28,750 Weithiau gweithredwyr penodol peidiwch â past dros gywir. 574 00:25:28,750 --> 00:25:31,397 Yn yr achos hwnnw, mae'r minws Arwydd oedd mewn gwirionedd yn llinell doriad. 575 00:25:31,397 --> 00:25:32,980 Ac felly nid oedd y cyfrifiadur yn ei godi. 576 00:25:32,980 --> 00:25:35,870 Felly, roedd rhaid i mi fynd yn ôl ac Ail-deipiwch hynny yn gorfforol. 577 00:25:35,870 --> 00:25:37,846 Dim ond fod yn ofalus wrth rydych guys yn gwneud hynny. 578 00:25:37,846 --> 00:25:41,178 579 00:25:41,178 --> 00:25:42,660 >> IAWN. 580 00:25:42,660 --> 00:25:43,980 Rydym yn mynd i redeg hyn yma. 581 00:25:43,980 --> 00:25:45,670 Felly rydym yn mynd i cd i mewn i'n section2. 582 00:25:45,670 --> 00:25:50,470 583 00:25:50,470 --> 00:25:52,030 Rydw i wedi gelwir hyn asciimath rhaglen. 584 00:25:52,030 --> 00:25:55,690 Felly cofiwch, pan fyddwn yn rhedeg unrhyw rhaglen, yr ydym am ei llunio yn gyntaf 585 00:25:55,690 --> 00:25:57,150 drwy redeg drwy ein gwneuthuriad. 586 00:25:57,150 --> 00:26:00,030 Ac yna rydym eisiau rhedeg mewn gwirionedd y rhaglen drwy wneud dot-slaes. 587 00:26:00,030 --> 00:26:01,280 Felly rydyn ni'n mynd i ./asciimath. 588 00:26:01,280 --> 00:26:05,780 589 00:26:05,780 --> 00:26:06,590 >> Iawn, dyna ni. 590 00:26:06,590 --> 00:26:07,410 Ac rydym yn gweld 32. 591 00:26:07,410 --> 00:26:07,930 Da iawn. 592 00:26:07,930 --> 00:26:10,340 Rydych yn haeddu darn o Candy. 593 00:26:10,340 --> 00:26:11,160 Candy i chi. 594 00:26:11,160 --> 00:26:11,900 Mae'n ddrwg gennym. 595 00:26:11,900 --> 00:26:13,100 Iawn. 596 00:26:13,100 --> 00:26:13,670 IAWN. 597 00:26:13,670 --> 00:26:18,070 Felly, gallwn fynd yn ôl at ein henghraifft yma. 598 00:26:18,070 --> 00:26:23,530 599 00:26:23,530 --> 00:26:24,345 Aah, dim. 600 00:26:24,345 --> 00:26:29,147 601 00:26:29,147 --> 00:26:31,090 Aah. 602 00:26:31,090 --> 00:26:32,490 IAWN. 603 00:26:32,490 --> 00:26:34,610 Im 'jyst yn mynd i gadw fel hynny. 604 00:26:34,610 --> 00:26:48,520 605 00:26:48,520 --> 00:26:51,240 IAWN. 606 00:26:51,240 --> 00:26:51,740 IAWN. 607 00:26:51,740 --> 00:26:55,340 Felly, fel y gallwch weld guys, gallwn wneud llawer o bethau diddorol iawn, 608 00:26:55,340 --> 00:26:58,880 llawer o bethau oer iawn, mae llawer o pethau cymhleth iawn yn ymwneud â 609 00:26:58,880 --> 00:27:02,720 Cymeriadau ASCII a rhifau. 610 00:27:02,720 --> 00:27:05,890 Unwaith y byddwch yn cael i lawr i linell bump, mae hynny'n llawer i ddilyn ar hyd. 611 00:27:05,890 --> 00:27:07,640 Nid ydym yn mynd i fynd drwy'r adran. 612 00:27:07,640 --> 00:27:10,720 Mae croeso i chi, os gallwch, rhesymu 'ii maes ar bapur 613 00:27:10,720 --> 00:27:14,750 yn gyntaf ar yr hyn ddylai fod yn digwydd pan fydd ydych yn mewnbynnu llinyn fath o werthoedd. 614 00:27:14,750 --> 00:27:19,720 Er enghraifft, yn y llinell olaf, rydym wedi z-- sy'n cynrychioli number-- penodol 615 00:27:19,720 --> 00:27:24,740 a-- sydd hefyd yn cynrychioli rhai number-- ac 1 modulos 26 616 00:27:24,740 --> 00:27:26,750 yn ogystal â llythrennau bach a. 617 00:27:26,750 --> 00:27:29,220 >> Os ydych yn guys yn cadw darllen trwy'r hyn, byddwch yn 618 00:27:29,220 --> 00:27:34,009 Gall weld patrwm yn dod i fyny yn sut rydym yn trin y cod. 619 00:27:34,009 --> 00:27:36,050 Fi 'n dal, yn hynod yn awgrymu ar ôl adran pob un ohonoch 620 00:27:36,050 --> 00:27:38,160 guys mynd yn ei flaen a mewnbwn y rhai i gyd yn eich cyfrifiadur 621 00:27:38,160 --> 00:27:40,060 a gweld pa fath o niferoedd yn dod allan 622 00:27:40,060 --> 00:27:43,090 ac ymresymu trwy pam hynny yn yn digwydd, gan fod ar gyfer eich psets 623 00:27:43,090 --> 00:27:45,060 bydd yn cael ei yn bwysig iawn i chi ddeall 624 00:27:45,060 --> 00:27:47,132 pam mae rhai pethau'n digwydd. 625 00:27:47,132 --> 00:27:48,590 Bydd pob un o'r sleidiau hyn fod ar-lein. 626 00:27:48,590 --> 00:27:51,510 Felly dim pryderon am geisio copïo i lawr nodiadau yn gorfforol. 627 00:27:51,510 --> 00:27:52,510 Ar-lein Mae popeth yn. 628 00:27:52,510 --> 00:27:54,050 Bydd yr adran hon ei hun fod ar-lein. 629 00:27:54,050 --> 00:27:57,500 Mae pob fy cod ffynhonnell sy'n Im 'yn rhedeg yn ar-lein. 630 00:27:57,500 --> 00:27:58,180 Yeah. 631 00:27:58,180 --> 00:27:59,430 Oeddech chi'n dal i gael cwestiwn? 632 00:27:59,430 --> 00:28:00,587 GYNULLEIDFA: Beth yw modulos? 633 00:28:00,587 --> 00:28:01,170 Andi Peng: OK. 634 00:28:01,170 --> 00:28:05,620 Felly modulo yw gweithredydd sy'n mynd i fod yn eithaf bwysig i pset eich guys yn 635 00:28:05,620 --> 00:28:06,690 yma. 636 00:28:06,690 --> 00:28:12,280 Felly, y ffordd y mae gweithredwyr yn C ac mewn gwaith rhaglennu 637 00:28:12,280 --> 00:28:16,360 yw bod gennych yr hyn a elwir yn symbol is-adran a'r symbol modwlws, 638 00:28:16,360 --> 00:28:18,350 sydd yn union fel arwydd y cant. 639 00:28:18,350 --> 00:28:24,840 >> Felly, yn C, pan fyddwch yn gwneud yn gyfanrif rhannu gan cyfanrif gyda slaes, 640 00:28:24,840 --> 00:28:27,720 C yn tueddu i fod eisiau i dorri oddi ar bob un o'r pwyntiau degol, 641 00:28:27,720 --> 00:28:30,290 am fod yn gyfanrif eisiau i newid i cyfanrif. 642 00:28:30,290 --> 00:28:33,550 Dyw hi ddim yn mynd i eisiau i fod yn ddwbl gyda chriw o ddegolion popeth ar ôl iddo. 643 00:28:33,550 --> 00:28:39,322 >> Felly os wyf yn gwneud 3 wedi'i rannu â 2, mae'n mynd i dorri oddi ar y 0.5 a dim ond rhoi i chi 1. 644 00:28:39,322 --> 00:28:41,530 Felly dyna rhywbeth i fod yn yn ofalus iawn o pan fyddwch chi 645 00:28:41,530 --> 00:28:45,294 yn gwneud unrhyw fath o mathemateg mewn rhaglenni, yw bod y niferoedd a gewch 646 00:28:45,294 --> 00:28:47,210 efallai na fydd y niferoedd eich bod yn meddwl, 647 00:28:47,210 --> 00:28:50,190 a dyna pam talgrynnu yn eich pset diwethaf mor bwysig. 648 00:28:50,190 --> 00:28:51,980 >> Modulo yn rhoi'r gweddill i chi. 649 00:28:51,980 --> 00:28:56,200 Felly, er enghraifft, os wyf yn gwneud 3 modulo 2-- felly 3 y cant arwydd 2-- 650 00:28:56,200 --> 00:28:58,020 byddai'n rhoi gweddill yr ydych. 651 00:28:58,020 --> 00:29:00,460 Felly 3 wedi'i rannu â 2 yw 1.5. 652 00:29:00,460 --> 00:29:01,410 Mae'n 1 gweddill 1. 653 00:29:01,410 --> 00:29:04,600 Byddai'n rhoi i chi y 1, a oedd yn yw'r gweddill hynny. 654 00:29:04,600 --> 00:29:07,361 >> Felly pan fyddwch guys yn symud drwy'r tabl ASCII, 655 00:29:07,361 --> 00:29:09,735 Bydd modulo pen draw yn cael rhywbeth sy'n bwysig iawn, 656 00:29:09,735 --> 00:29:11,240 a byddwn yn trafod hynny yn nes ymlaen. 657 00:29:11,240 --> 00:29:17,750 658 00:29:17,750 --> 00:29:19,040 >> IAWN. 659 00:29:19,040 --> 00:29:27,300 Felly rhywbeth sy'n eithaf, 'n bert newydd a' n bert unigryw 660 00:29:27,300 --> 00:29:31,920 ein bod wedi trafod yr wythnos hon yn cael ei y cysyniad o beth arae yw. 661 00:29:31,920 --> 00:29:34,370 Felly amrywiaeth yw'r cyntaf math o strwythur data 662 00:29:34,370 --> 00:29:36,320 ein bod ni'n mynd i yn dod ar draws yn y dosbarth hwn. 663 00:29:36,320 --> 00:29:40,010 Mae'r holl ddata yn cael ei strwythur yn rhyw fath o fympwyol, 664 00:29:40,010 --> 00:29:43,370 llythrennol pethau fel strwythur bod ni fel rhaglenwyr wedi creu, 665 00:29:43,370 --> 00:29:47,890 ein bod wedi rhoi yn ein cod sy'n Gall gynnwys darnau eraill o god. 666 00:29:47,890 --> 00:29:51,090 >> Felly, yn yr ystyr hwn, mae array-- yn meddwl am y peth fel cabinet ffeil, 667 00:29:51,090 --> 00:29:53,470 lle os byddwch yn agor yn wahanol silffoedd o'ch cabinet ffeil, 668 00:29:53,470 --> 00:29:55,630 gallwch gael mynediad pethau gwahanol. 669 00:29:55,630 --> 00:29:58,630 Er cof, amrywiaeth yn unig yw gwneud yr un peth ar eich cyfrifiadur. 670 00:29:58,630 --> 00:30:01,730 Gallwch gael gwahanol rydym blocks-- yn eu galw indices-- o amrywiaeth. 671 00:30:01,730 --> 00:30:04,210 Mae'n union fel bloc, silff o gof 672 00:30:04,210 --> 00:30:07,580 ein bod ni wedi creu o fewn eich cyfrifiadur eich bod yn gallu mewnbynnu 673 00:30:07,580 --> 00:30:10,270 pethau penodol mewn mannau gwahanol. 674 00:30:10,270 --> 00:30:18,000 >> Felly, gydag amrywiaeth, yr ydych rhaid i specify-- bob amser 675 00:30:18,000 --> 00:30:22,360 rhaid i chi benodi datgan amrywiaeth yn y fformat canlynol. 676 00:30:22,360 --> 00:30:24,290 Rydych yn mynd i yn gyntaf nodi'r math data 677 00:30:24,290 --> 00:30:25,831 eich bod am greu y rhesi. 678 00:30:25,831 --> 00:30:28,870 Os ydw i eisiau amrywiaeth o gyfanrifau, Yr wyf yn mynd i roi int iawn yno. 679 00:30:28,870 --> 00:30:32,079 Os ydw i eisiau amrywiaeth o linynnau, Rydw i'n mynd i roi llinynnau yno, 680 00:30:32,079 --> 00:30:34,995 enw eich array, ac yna rydych yn mynd i gael cromfachau sgwâr. 681 00:30:34,995 --> 00:30:39,580 Ac y tu mewn i'r cromfachau sgwâr, rydych yn mynd i gael maint eich arae. 682 00:30:39,580 --> 00:30:42,900 >> Rhywbeth sy'n bwysig iawn i cadw mewn cof wrth greu rhesi yn 683 00:30:42,900 --> 00:30:46,530 hynny, unwaith y byddwch yn creu array, ni all maint y newid. 684 00:30:46,530 --> 00:30:50,180 Felly, os ydych yn gwybod bod ar hyn o bryd mae gennych amrywiaeth o faint 10, 685 00:30:50,180 --> 00:30:54,550 eich bod yn gwybod fy mod i'n mynd i gael 10 o gelloedd o fewn neu 10 mynegeion o fewn amrywiaeth hwn, 686 00:30:54,550 --> 00:30:56,830 a byth mae'n mynd ehangu neu leihau 687 00:30:56,830 --> 00:30:59,850 waeth beth, a bod yna Ar hyn o bryd dim ond 10 blociau o le 688 00:30:59,850 --> 00:31:04,490 a ddyrannwyd yn eich cof sy'n gallu storio hyd at 10 peth o be ti 'di rhoi. 689 00:31:04,490 --> 00:31:08,790 >> Felly, yn y modd hwn, math data array, strwythur y data sydd arae 690 00:31:08,790 --> 00:31:13,392 yn wahanol iawn i rai eraill yr ydym chi helpu yn rhoi sylw yn nes ymlaen yn y cwrs hwn. 691 00:31:13,392 --> 00:31:15,170 Yeah. 692 00:31:15,170 --> 00:31:20,080 Er enghraifft, os ydych chi eisiau creu amrywiaeth o faint 3 sy'n 693 00:31:20,080 --> 00:31:23,670 cynnwys newidynnau o integer-- oh, mae'n ddrwg gennyf, o temperature-- 694 00:31:23,670 --> 00:31:25,640 a thymheredd, o gwrs, yn gyfanrif. 695 00:31:25,640 --> 00:31:28,710 >> Felly byddem yn creu int, sef y Math data o'r hyn yr ydym eisiau ei gadw. 696 00:31:28,710 --> 00:31:32,680 Rydym yn mynd i alw hyn tymheredd er mwyn y gyfundrefn enwau o enwi 697 00:31:32,680 --> 00:31:34,200 rhywbeth yr ydym i gyd yn deall. 698 00:31:34,200 --> 00:31:35,900 Ac rydym yn mynd i gael cromfachau sgwâr. 699 00:31:35,900 --> 00:31:37,200 Ac rydym am tri rhif. 700 00:31:37,200 --> 00:31:39,000 Felly rydym yn mynd i roi tri tu mewn iddo. 701 00:31:39,000 --> 00:31:41,041 >> Rhywbeth sy'n wirioneddol pwysig i'w cadw mewn cof 702 00:31:41,041 --> 00:31:43,530 yw bod araeau yn cael eu sero mynegeio. 703 00:31:43,530 --> 00:31:46,410 Y cyfan sydd ei olygu yw bod chi dechrau gyda'r mynegai o 0, 704 00:31:46,410 --> 00:31:49,800 ac yr ydych yn rhedeg i fyny drwy'r maint y rhesi minws 1. 705 00:31:49,800 --> 00:31:52,730 Felly, er enghraifft fan hyn, rydym yn cael amrywiaeth o faint 3. 706 00:31:52,730 --> 00:31:54,680 Mae'n mynd i fod yn gallu i ddal tri gwerth. 707 00:31:54,680 --> 00:31:57,450 Ond mae'r niferoedd themselves-- bod rhif, yr amrywiaeth, y mynegai, 708 00:31:57,450 --> 00:32:00,271 yr amrywiaeth, mae 0 drwy 2. 709 00:32:00,271 --> 00:32:03,520 Felly guys, fod yn iawn, iawn o ofalus wrth rydych yn mynd drwy eich problemau a osodwyd 710 00:32:03,520 --> 00:32:06,500 a chreu unrhyw fath o array, oherwydd mae llawer o'r amseroedd 'i' 711 00:32:06,500 --> 00:32:08,490 mewn gwirionedd, hawdd iawn i anghofio hynny. 712 00:32:08,490 --> 00:32:11,840 Fi 'n weithredol nid oes rhaid i'r mynegai o 3, yr wyf ar hyn o bryd yn unig 713 00:32:11,840 --> 00:32:13,130 cael y mynegai o 2. 714 00:32:13,130 --> 00:32:16,046 Ac os ydych yn ceisio mynediad i'r trydydd mynegai, 715 00:32:16,046 --> 00:32:18,170 mae'n mynd i fod yn beth sydd Gelwir y terminator null. 716 00:32:18,170 --> 00:32:19,990 Nid yw'n mynd i mewn gwirionedd yn bodoli yn y rhesi. 717 00:32:19,990 --> 00:32:21,781 Ac mae'r cyfrifiadur yn ddim yn mynd i hoffi hynny. 718 00:32:21,781 --> 00:32:24,570 Felly byddwch yn ofalus pryd bynnag y eich bod yn cael gafael ar bethau yn unig 719 00:32:24,570 --> 00:32:28,070 i sicrhau eich bod yn cofio bod araeau yn sero-mynegeio. 720 00:32:28,070 --> 00:32:28,880 >> IAWN. 721 00:32:28,880 --> 00:32:34,030 Felly yr enghraifft gyntaf yn unig un ffordd o greu arae. 722 00:32:34,030 --> 00:32:36,790 Yr ail enghraifft gen i isod yn unig yw ffordd ar wahân 723 00:32:36,790 --> 00:32:40,210 o greu beth yw'r un data strwythur yr ydym newydd wedi bwydo. 724 00:32:40,210 --> 00:32:44,347 Felly, yn lle corfforol yn rhedeg trwy ac yn rhoi tymheredd o 0 725 00:32:44,347 --> 00:32:47,180 yn hafal i beth bynnag, tymheredd 1 yn hafal i beth bynnag, tymheredd 2 hafal 726 00:32:47,180 --> 00:32:50,950 beth bynnag, gallwn mewn gwirionedd yn unig creu yn uniongyrchol i gyd mewn un llinell 727 00:32:50,950 --> 00:32:53,010 i mewn i dymheredd cromfachau sgwâr hafal. 728 00:32:53,010 --> 00:32:56,536 >> Ac mae rhybudd yn yr achos hwn, nid oes angen i chi i nodi pa mor fawr yw eich array yw, 729 00:32:56,536 --> 00:32:59,160 oherwydd bod y cyfrifiadur yn mynd i mynd drwy a gweld bod yna 730 00:32:59,160 --> 00:33:01,570 tair elfen yn y braces cyrliog hynny. 731 00:33:01,570 --> 00:33:04,000 Ac mae'n mynd i wybod, OK, Mae angen amrywiaeth o faint 3 Rwy'n. 732 00:33:04,000 --> 00:33:07,440 Nid ydych yn mynd i angen i mewnbwn yn y ffordd ganlynol. 733 00:33:07,440 --> 00:33:10,170 >> A hefyd, ie, y ffordd honno. 734 00:33:10,170 --> 00:33:12,610 Oes gan unrhyw un gwestiynau ynglŷn â sut yr ydym yn gwneud arrays 735 00:33:12,610 --> 00:33:17,391 na sut mae'r strwythur amrywiaeth yn gweithio? 736 00:33:17,391 --> 00:33:17,890 Yeah. 737 00:33:17,890 --> 00:33:18,806 >> GYNULLEIDFA: [Anghlywadwy]? 738 00:33:18,806 --> 00:33:21,649 739 00:33:21,649 --> 00:33:22,690 Andi Peng: Yeah, yn union. 740 00:33:22,690 --> 00:33:26,150 Felly, os ydych yn datgan a ymgychwyn amrywiaeth y dull canlynol, 741 00:33:26,150 --> 00:33:28,477 sef yr ail ffordd, gallwch adael hynny. 742 00:33:28,477 --> 00:33:30,310 A'r cyfrifiadur yn gwybod yn awtomatig ei fod yn 743 00:33:30,310 --> 00:33:33,950 Mae angen i gyfrif faint o elfennau yn cael eu mewn braces cyrliog hynny, gwahanu 744 00:33:33,950 --> 00:33:34,930 gan atalnodau. 745 00:33:34,930 --> 00:33:37,517 >> Felly dyma maent yn gweld 65, 87, 30. 746 00:33:37,517 --> 00:33:39,600 Felly mae'r cyfrifiadur yn gwybod, o, mae tri cyfanrifau. 747 00:33:39,600 --> 00:33:45,960 Yr wyf yn gwybod i greu enw arae tymheredd gyda tair elfen ynddo. 748 00:33:45,960 --> 00:33:46,590 Cwestiwn da. 749 00:33:46,590 --> 00:33:47,090 Yeah. 750 00:33:47,090 --> 00:33:51,590 >> GYNULLEIDFA: Onid yw'n bosibl i greu amrywiaeth gyda gwahanol fathau o ddata 751 00:33:51,590 --> 00:33:53,021 y gellid ei gofnodi i mewn iddo? 752 00:33:53,021 --> 00:33:56,746 Er enghraifft, gyda chyfanrifau [Anghlywadwy]? 753 00:33:56,746 --> 00:33:59,120 Andi Peng: At ddibenion o'r dosbarth hwn, na, ar hyn o bryd. 754 00:33:59,120 --> 00:34:03,070 Pan fyddwch yn creu data strwythuro fel amrywiaeth, 755 00:34:03,070 --> 00:34:04,990 eich bod yn dweud wrth y cyfrifiadur, hey, Fi angen i chi 756 00:34:04,990 --> 00:34:08,159 dyrannu hyn lawer cof yn fy 'n anawdd cathrena, 757 00:34:08,159 --> 00:34:10,690 gyda phob cell bod yn nifer penodol o ddarnau. 758 00:34:10,690 --> 00:34:13,429 >> Cofiwch ein ddysgwyd yn yr wythnos sero bod data gwahanol 759 00:34:13,429 --> 00:34:15,300 mathau gwahanol feintiau? 760 00:34:15,300 --> 00:34:17,630 Felly, er enghraifft, llinyn yn swm gwahanol 761 00:34:17,630 --> 00:34:20,719 o ofod na torgoch, a oedd yn yn swm gwahanol o le 762 00:34:20,719 --> 00:34:21,830 o yn gyfanrif. 763 00:34:21,830 --> 00:34:25,534 Ac felly os nad ydych yn nodi a ydych ddewis a dethol pa fathau o newidynnau 764 00:34:25,534 --> 00:34:27,659 sydd gennych, y cyfrifiadur mynd i fod yn ddryslyd iawn. 765 00:34:27,659 --> 00:34:29,950 Ac nid mae'n mynd i wybod faint o gof i roi i chi. 766 00:34:29,950 --> 00:34:32,480 Felly, ar gyfer dibenion hawl Erbyn hyn, gall cyfrifiaduron yn unig 767 00:34:32,480 --> 00:34:36,120 yn adnabod un math o amrywiaeth. 768 00:34:36,120 --> 00:34:37,940 Cwestiwn da. 769 00:34:37,940 --> 00:34:38,440 IAWN. 770 00:34:38,440 --> 00:34:45,179 771 00:34:45,179 --> 00:34:47,120 >> Felly, yn naturiol, mae'r ail gwestiwn sydd gennym 772 00:34:47,120 --> 00:34:50,760 yn, wel, yr ydym yn awr bod wedi creu amrywiaeth ac rydym wedi rhoi pob un o'r pethau hyn 773 00:34:50,760 --> 00:34:54,190 yn y array, sut ydym ni mynd i fod yn gallu cael mynediad iddo? 774 00:34:54,190 --> 00:34:59,710 Felly mae'r strwythur nodweddiadol yr ydym bob amser yn gael mynediad at amrywiaeth yw ein hyfryd i ddolen. 775 00:34:59,710 --> 00:35:03,830 Yr wyf yn addo i chi guys y byddwn yn gweld llawer o gyd-hwn yma. 776 00:35:03,830 --> 00:35:06,470 >> Yn y bôn, unrhyw adeg rydych ei eisiau i fewnbynnu gwerthoedd i mewn arae 777 00:35:06,470 --> 00:35:09,940 neu os ydych am gael mynediad iddynt, mae'r ffordd orau o wneud hynny yw i dolen, 778 00:35:09,940 --> 00:35:13,730 oherwydd mewn i ddolen, chi yn gwybod faint o weithiau rydych yn 779 00:35:13,730 --> 00:35:17,290 mynd i eisiau i redeg drwy'r array, oherwydd bod gennych rhifyn stop, dde? 780 00:35:17,290 --> 00:35:19,680 A phob tro y byddwch yn rhedeg drwy, gallwch gael gafael ar 781 00:35:19,680 --> 00:35:21,310 elfen wahanol y rhesi. 782 00:35:21,310 --> 00:35:26,920 >> A hefyd, mae hwn yn rheswm pam nodweddiadol rydym yn dechrau ein ar gyfer dolenni yn y 0 gwerth, 783 00:35:26,920 --> 00:35:30,080 oherwydd pan fyddwch yn cael mynediad arrays, gallwch gael mynediad i'r mynegai sero. 784 00:35:30,080 --> 00:35:32,070 Ac felly mae'n cyfateb iawn 'n glws. 785 00:35:32,070 --> 00:35:35,295 Efallai eich bod guys wedi dymuno ysgrifennu ar gyfer int i yn hafal i 1. 786 00:35:35,295 --> 00:35:37,330 ff yn llai na neu'n hafal i 3. 787 00:35:37,330 --> 00:35:39,890 >> Ond ni fyddai'n gweithio mor yn dda yma, oherwydd eich bod dim ond 788 00:35:39,890 --> 00:35:42,010 elfennau o 0, 1, a 2. 789 00:35:42,010 --> 00:35:45,815 Ac felly os ydych yn dechrau eich ff yn elfen 1, 2, a 3, 790 00:35:45,815 --> 00:35:48,440 eich bod yn mynd i roi diwedd ar i fyny yn rhedeg allan o'r terfynau eich array, 791 00:35:48,440 --> 00:35:50,440 a phethau drwg yn mynd i ddigwydd. 792 00:35:50,440 --> 00:35:54,480 >> Felly, yr wyf yn gobeithio y byddwch yn guys yn gweld y segue o pam yn y dosbarthiadau cynharach 793 00:35:54,480 --> 00:35:58,560 rydym yn addysgu guys i chi sut i redeg a fformadu gyfer dolen y ffordd yr oeddem. 794 00:35:58,560 --> 00:36:01,900 Mae'n oherwydd, erbyn hyn rydym wedi transitioned i mewn araeau, 795 00:36:01,900 --> 00:36:06,760 gallwch weld pam y 0 rhoi benthyg ei hun yn iawn 'n glws i gael mynediad. 796 00:36:06,760 --> 00:36:09,880 >> Felly, y ffordd yr ydym yn gwneud hynny yw that-- fy mod dim ond argraffu allan fan hyn er mwyn 797 00:36:09,880 --> 00:36:10,830 argraffu 'ii maes. 798 00:36:10,830 --> 00:36:13,750 Ond yr wyf wedi fy dalfan, atalnod. 799 00:36:13,750 --> 00:36:15,645 Ac mae'r cyrchu gwirioneddol rhan sy'n digwydd. 800 00:36:15,645 --> 00:36:17,520 Enw'r arae Galwyd tymheredd. 801 00:36:17,520 --> 00:36:21,570 Felly mae'n tymheredd a'r i-fed elfen y rhesi. 802 00:36:21,570 --> 00:36:24,400 >> Felly, gan fod y ddolen ar gyfer rhedeg drwy, mae'n mynd i ddechrau ar 0. 803 00:36:24,400 --> 00:36:27,640 Mae'n mynd i argraffu'r Mynegai 0fed o amrywiaeth hwn. 804 00:36:27,640 --> 00:36:29,599 Yna, mae'n mynd i argraffu allan yr elfen gyntaf. 805 00:36:29,599 --> 00:36:31,431 Yna, mae'n mynd i argraffu allan yr ail un. 806 00:36:31,431 --> 00:36:32,880 Ac yna rydym yn mynd i dorri. 807 00:36:32,880 --> 00:36:36,718 A yw pawb yn glir ynghylch sut mae hynny'n digwydd? 808 00:36:36,718 --> 00:36:37,217 Great. 809 00:36:37,217 --> 00:36:43,230 810 00:36:43,230 --> 00:36:44,100 >> Iawn. 811 00:36:44,100 --> 00:36:47,270 Felly dyma ni wedi ffordd o gan ddywedyd, os nad oeddem am 812 00:36:47,270 --> 00:36:50,020 i galed-god mi in-- wrth i'r rhaglennydd. 813 00:36:50,020 --> 00:36:53,320 Doeddwn i ddim eisiau mewn gwirionedd yn gorfforol rhoi ym mhob elfen unigol 814 00:36:53,320 --> 00:36:54,020 o amrywiaeth hwn. 815 00:36:54,020 --> 00:36:56,500 Os Roeddwn i eisiau yn lle hynny yn cael y gwerthoedd mewnbwn defnyddwyr, 816 00:36:56,500 --> 00:36:58,100 beth yw'r ffordd orau o wneud hynny? 817 00:36:58,100 --> 00:37:00,920 >> Wel, yma rwyf wedi creu swyddogaeth hyfryd hwn, 818 00:37:00,920 --> 00:37:03,560 lle y gallaf ddatgan arae. 819 00:37:03,560 --> 00:37:06,210 Felly int scores-- gadewch i ni dim ond dweud ein bod am wneud 820 00:37:06,210 --> 00:37:10,660 amrywiaeth oedd yn dal y graddau o bob 18 o'r myfyrwyr yma yn yr adran hon. 821 00:37:10,660 --> 00:37:12,670 Rwy'n credu ein bod wedi cael ychydig mwy na 18 o blant heddiw. 822 00:37:12,670 --> 00:37:16,460 Ond er enghraifft yn fwyn, gadewch i ni jyst cymryd yn ganiataol oedd gennym 18. 823 00:37:16,460 --> 00:37:21,580 Byddwn yn creu enw arae sgoriau gyda Math o int, gan fod ugeiniau, wrth gwrs, 824 00:37:21,580 --> 00:37:22,987 niferoedd. 825 00:37:22,987 --> 00:37:24,820 Ac yr wyf i'n mynd i gael 18 mewn cromfachau sgwâr, 826 00:37:24,820 --> 00:37:29,900 oherwydd dyna faint o fyfyrwyr yr wyf yn eisiau gallu i storio ugeiniau o. 827 00:37:29,900 --> 00:37:32,206 >> A'r ffordd byddwn i'n boblogi yr amrywiaeth yw bod byddwn i'n 828 00:37:32,206 --> 00:37:35,572 rhedeg drwy ar gyfer dolen, o Wrth gwrs, gyda 0 yn fy mynegai 0fed. 829 00:37:35,572 --> 00:37:38,030 Ac yna gyda 18 yn fy rhoi'r gorau i argraffiad, oherwydd mae 830 00:37:38,030 --> 00:37:39,690 18 elfen yn y rhesi. 831 00:37:39,690 --> 00:37:44,620 Ac yna dwi'n mynd i wneud printf, Enter sgôr am student-- yada yada yada. 832 00:37:44,620 --> 00:37:51,171 >> A all unrhyw un ddweud wrthyf pam fan hyn rwy'n argraffu ff ac 1 ac nid fi? 833 00:37:51,171 --> 00:37:52,920 Mae'n fath o tric cwestiwn, nid mewn gwirionedd. 834 00:37:52,920 --> 00:37:56,020 Nid yw'n gwneud mewn gwirionedd yn gorfforol yn effeithio ar y gwaith o redeg y cod. 835 00:37:56,020 --> 00:37:56,520 Yeah. 836 00:37:56,520 --> 00:37:57,909 >> GYNULLEIDFA: [Anghlywadwy] 0? 837 00:37:57,909 --> 00:37:58,950 Andi Peng: Yeah, yn union. 838 00:37:58,950 --> 00:38:02,620 Mae'n dipyn lletchwith i'w ddweud, hey, chi yw'r myfyriwr 0fed yn y dosbarth hwn. 839 00:38:02,620 --> 00:38:03,780 Mae braidd yn rhyfedd. 840 00:38:03,780 --> 00:38:08,340 Felly ni, fel bodau dynol, peidiwch wir yn hoffi i feddwl am sut mae cyfrifiaduron yn ei feddwl. 841 00:38:08,340 --> 00:38:10,930 Felly hyd yn oed er yn yr cyfrifiadur, mae'n storio gwerthoedd 842 00:38:10,930 --> 00:38:13,310 yn y 0-ed fynegai, pan rydym yn bodau dynol, nid ydym yn ei wneud mewn gwirionedd 843 00:38:13,310 --> 00:38:15,520 yn hoffi cyfeirio at ein hunain fel sero. 844 00:38:15,520 --> 00:38:18,119 Felly, pan Fi jyst print that, Rydw i'n mynd i argraffu ac ychwanegu 845 00:38:18,119 --> 00:38:19,410 1 dim ond er mwyn eglurder. 846 00:38:19,410 --> 00:38:22,447 Felly, pan fyddaf yn argraffu, dw i'n mynd i fod yn gallu argraffu fyfyrwyr 1 drwy 18. 847 00:38:22,447 --> 00:38:24,530 Nid yw'n cael effaith mewn gwirionedd redeg y cod 848 00:38:24,530 --> 00:38:27,110 mewn unrhyw ffordd, y ffordd rwy'n argraffu. 849 00:38:27,110 --> 00:38:30,380 >> Ond byddwch yn ofalus pan fyddwch yn mewn gwirionedd yn cael mynediad i'r casgliad. 850 00:38:30,380 --> 00:38:32,780 Pan fyddwch yn gweld y sgoriau i, sylwi yma rwy'n mewn gwirionedd 851 00:38:32,780 --> 00:38:38,200 cael mynediad i'r mynegai 0fed a nid yw'r plws 0-- 1 neu 1 ac 1, 852 00:38:38,200 --> 00:38:45,530 yn yr achos hwn, mynegai felly ei fod mewn gwirionedd yn glir. 853 00:38:45,530 --> 00:38:48,870 A yw pawb yn fath o OK ar sut mae hyn yn rhedeg drwy 854 00:38:48,870 --> 00:38:51,470 a chyda phob mynegai rwy'n rhoi gwerth i mewn i'r amrywiaeth 855 00:38:51,470 --> 00:38:55,340 a chreu amrywiaeth gyda rhifau 18 bod y defnyddiwr yn mynd i gyfrannu? 856 00:38:55,340 --> 00:38:58,780 857 00:38:58,780 --> 00:38:59,821 IAWN. 858 00:38:59,821 --> 00:39:00,321 Cool. 859 00:39:00,321 --> 00:39:05,380 860 00:39:05,380 --> 00:39:07,400 >> IAWN. 861 00:39:07,400 --> 00:39:12,220 Rydym bellach yn symud i mewn i rywbeth sy'n 'n bert perthnasol ar gyfer y darn hwn a osodwyd yn ogystal. 862 00:39:12,220 --> 00:39:15,020 Yr wyf yn gwybod yn y ddarlith, David-- ddrwg gennym, yr oedd gennych gwestiwn? 863 00:39:15,020 --> 00:39:16,840 >> GYNULLEIDFA: Allwch chi chwyddo? 864 00:39:16,840 --> 00:39:18,080 >> Andi Peng: Yeah, felly yr wyf yn ceisio. 865 00:39:18,080 --> 00:39:18,788 Ond nid wyf yn gwybod. 866 00:39:18,788 --> 00:39:21,437 Am ryw reswm, mae hyn fersiwn PowerPoint 867 00:39:21,437 --> 00:39:23,270 mewn gwirionedd nad ydynt yn gweithio dda gyda'r arddangosfa. 868 00:39:23,270 --> 00:39:25,260 Felly rydym yn jyst yn mynd i'w gadw fel hyn. 869 00:39:25,260 --> 00:39:27,280 Bydd y rhain i gyd yn cael eu llwytho i fyny ar-lein. 870 00:39:27,280 --> 00:39:28,218 Mae'n ddrwg gennym, guys. 871 00:39:28,218 --> 00:39:30,090 Yeah. 872 00:39:30,090 --> 00:39:30,980 IAWN. 873 00:39:30,980 --> 00:39:35,530 >> Felly, gallwn hefyd gael llinynnau. 874 00:39:35,530 --> 00:39:39,320 Felly, os ydych guys mewn gwirionedd notice-- i mi gwybod Aeth Rob dros y yn y ddarlith 875 00:39:39,320 --> 00:39:43,652 ei fod yn did-- llinyn mewn gwirionedd dim ond amrywiaeth o gymeriadau, 876 00:39:43,652 --> 00:39:44,860 os ydych yn meddwl am y peth, dde? 877 00:39:44,860 --> 00:39:47,500 Mae llinyn yn enw neu brawddeg neu air, dde? 878 00:39:47,500 --> 00:39:52,975 >> Pe bawn yn creu llinyn a enwir Andi-- dim ond fy enw i, A-N-D-I. 879 00:39:52,975 --> 00:39:55,460 Rydych yn meddwl am hynny fel un newidyn yn unig. 880 00:39:55,460 --> 00:39:58,630 Ond mewn gwirionedd, mae wedi torri i lawr i mewn i ddim ond amrywiaeth o chars. 881 00:39:58,630 --> 00:40:01,910 Felly, 'i' got cymeriad o yn cael ei storio mewn gwerth amrywiaeth. 882 00:40:01,910 --> 00:40:05,420 Mae'n got a chymeriad n storio yn y ail mynegai ac yn y blaen ac yn y blaen. 883 00:40:05,420 --> 00:40:08,660 >> Felly, yn y fath fodd, rydym yn mewn gwirionedd yn cael y math hwn 884 00:40:08,660 --> 00:40:10,970 o strwythur a osodwyd yn gosod ar gyfer ein llinynnau. 885 00:40:10,970 --> 00:40:14,660 Felly dyma, pe bawn i fewnbynnu'r gair "bwyta" - felly gair llinyn yn dychwelyd 886 00:40:14,660 --> 00:40:15,540 cael llinyn. 887 00:40:15,540 --> 00:40:19,260 Pe bawn yn mewnbwn y gair "bwyta," a yn gorfforol y ffordd y mae fy nghyfrifiadur 888 00:40:19,260 --> 00:40:21,870 yn storio y llinyn yn fy nghof. 889 00:40:21,870 --> 00:40:27,140 >> Ac os wyf yn awyddus i redeg drwy hynny ac print that out-- felly am i fi 890 00:40:27,140 --> 00:40:30,890 yn hafal i sero, cofiwch, yn y ddarlith, rydym yn rhywbeth a gwmpesir sy'n cael ei alw strlen, 891 00:40:30,890 --> 00:40:32,990 neu hyd y llinyn. 892 00:40:32,990 --> 00:40:36,520 Gan fy mod yn ei wneud mewn gwirionedd yn gwybod pa mor fawr yr amrywiaeth yn 893 00:40:36,520 --> 00:40:38,210 o ba bynnag inputting-- y defnyddiwr 894 00:40:38,210 --> 00:40:40,370 >> Er enghraifft, yr wyf yn ei fewnbynnu y gair "bwyta," ac yr wyf yn gwybod 895 00:40:40,370 --> 00:40:41,870 dyna dri nod o hyd, dde? 896 00:40:41,870 --> 00:40:44,700 Fel y gallwn i rhoi mewn tri yno a bydd popeth yn iawn. 897 00:40:44,700 --> 00:40:49,290 Ond os yw eich mewnbwn defnyddwyr rhywbeth mae hynny'n nifer wahanol o werthoedd, 898 00:40:49,290 --> 00:40:52,760 ydych yn mynd i beidio fod yn gallu 'n sylweddol gwybod bod pan fyddwch yn rhaglennu eich cod. 899 00:40:52,760 --> 00:40:56,040 >> Felly, y ffordd yr ydym yn ymdrin ag achosion prawf fel 'na yw bod gennym rywbeth 900 00:40:56,040 --> 00:41:00,070 Gelwir strlen, sydd ychydig yn swyddogaeth sy'n dweud wrthych faint o amser llinyn yn. 901 00:41:00,070 --> 00:41:02,080 Felly strlen o air. 902 00:41:02,080 --> 00:41:03,470 Fy gair yn ei fwyta. 903 00:41:03,470 --> 00:41:05,990 n cyfateb i strlen o air. 904 00:41:05,990 --> 00:41:08,930 A all rhywun ddweud wrthyf beth sy'n gwerth mewn gwirionedd yn iawn yno? 905 00:41:08,930 --> 00:41:12,550 Beth mae n cynrychioli iawn yn awr, yn yr enghraifft hon, os oedd gen i fwyta? 906 00:41:12,550 --> 00:41:13,530 >> GYNULLEIDFA: 3. 907 00:41:13,530 --> 00:41:14,520 >> Andi Peng: 3, yn union. 908 00:41:14,520 --> 00:41:18,820 Felly, rydym wedi ar gyfer i int hafal sero, n hafal 3, yn y bôn. 909 00:41:18,820 --> 00:41:22,355 A fi yn mynd i redeg nes ei fod yn llai na 3i ++. 910 00:41:22,355 --> 00:41:24,980 Ac mae'n mynd i fynd yn y bôn trwy ac yn gwneud yr un peth. 911 00:41:24,980 --> 00:41:26,979 Mae'n mynd i argraffu pob gwerth a rhoi i chi 912 00:41:26,979 --> 00:41:29,700 E-A-T. Mae'n jyst yn dynodi ffordd wahanol o ysgrifennu arno. 913 00:41:29,700 --> 00:41:31,170 Mae hynny'n mynd i fod yn ddefnyddiol iawn. 914 00:41:31,170 --> 00:41:31,670 Yeah. 915 00:41:31,670 --> 00:41:35,174 GYNULLEIDFA: Beth yw'r manteision o roi y n hafal gair strlen tu hynny 916 00:41:35,174 --> 00:41:36,894 ar gyfer dolen [Anghlywadwy]? 917 00:41:36,894 --> 00:41:37,560 Andi Peng: Yeah. 918 00:41:37,560 --> 00:41:44,880 Felly, os wyf yn canlynol-- ddweud, er enghraifft, pe bawn yn gwneud hynny ac yna 919 00:41:44,880 --> 00:41:51,935 do-- oop-- hynny, yn fy cod, byddai'n mewn gwirionedd yn ei wneud fel yr un peth. 920 00:41:51,935 --> 00:41:55,060 Fodd bynnag, mae'r ffordd y Esboniodd David yn ystod darlith, os unrhyw un ohonoch guys 921 00:41:55,060 --> 00:41:57,854 cofiwch, oedd, fel y bodau dynol, fel rhaglenwyr, 922 00:41:57,854 --> 00:42:00,270 mae gwir ceisio i raglennu ar ein Cod fel bod ein cyfrifiadur 923 00:42:00,270 --> 00:42:04,070 i weithio fel minimal â phosibl, fel bod ein cod yn effeithlon iawn. 924 00:42:04,070 --> 00:42:06,850 >> Felly, os oedd gen i nad oes, beth fyddai'n digwydd trwy fy gyfer dolen 925 00:42:06,850 --> 00:42:10,790 yw y byddwn i'n gyntaf ddatgan ff enwir newidyn yn mynd i fod 0. 926 00:42:10,790 --> 00:42:13,350 Yr wyf yn mynd i wirio, oh, beth yw'r strlen o air? 927 00:42:13,350 --> 00:42:15,000 O, mae'r strlen yw 3. 928 00:42:15,000 --> 00:42:16,191 Felly, yn llai na thair i? 929 00:42:16,191 --> 00:42:16,690 Ydy. 930 00:42:16,690 --> 00:42:17,870 Rydw i'n mynd i redeg. 931 00:42:17,870 --> 00:42:21,130 >> Ac yna yr ail dro yn ôl o gwmpas y ddolen, dw i'n mynd i gynyddiad i. 932 00:42:21,130 --> 00:42:22,550 i yn mynd i fod yn un. 933 00:42:22,550 --> 00:42:25,600 A fi yn mynd i wirio, oh, ond beth yw'r strlen gair? 934 00:42:25,600 --> 00:42:26,839 O, mae'n tri. 935 00:42:26,839 --> 00:42:29,880 Ac a yw hynny'n ymddangos yn fath o wastraffus, bob tro y byddwch yn rhedeg drwy'r ddolen, 936 00:42:29,880 --> 00:42:33,340 i gael ei gwirio swyddogaeth, er bod y strlen gair 937 00:42:33,340 --> 00:42:35,490 byth yn newid mewn gwirionedd? 938 00:42:35,490 --> 00:42:38,590 >> Felly mae'n pŵer ychwanegol ar gyfer cyfrifiadur. 939 00:42:38,590 --> 00:42:42,180 Pan fyddwch yn dechrau siarad am bethau sy'n biliynau a biliynau 940 00:42:42,180 --> 00:42:44,431 a biliynau o leoedd hir, dychmygwch eich cyfrifiadur 941 00:42:44,431 --> 00:42:47,430 gorfod mynd yn gorfforol drwy a gwiriwch hynny i gyd bob tro. 942 00:42:47,430 --> 00:42:53,170 Dyna pam, er mwyn gwneud yn unig er mwyn effeithlonrwydd, 943 00:42:53,170 --> 00:42:57,620 rydym yn tueddu i ddim ond gwneud hyn, gan fod y ffordd hon rydym yn unig 944 00:42:57,620 --> 00:42:59,850 ffonio'r swyddogaeth unwaith yn y dechrau, 945 00:42:59,850 --> 00:43:01,766 a bod pob tro y mae'n mynd drwy ei fod yn mynd 946 00:43:01,766 --> 00:43:03,789 i storio gwerth 3 yno, eich bod yn gwneud nad 947 00:43:03,789 --> 00:43:05,330 rhaid i wirio bob tro yn barhaus. 948 00:43:05,330 --> 00:43:05,743 Yeah. 949 00:43:05,743 --> 00:43:06,409 >> GYNULLEIDFA: Mae'n ddrwg gennyf. 950 00:43:06,409 --> 00:43:09,070 Dim ond [Anghlywadwy]. 951 00:43:09,070 --> 00:43:13,985 Allech chi ddim yn int n hafal strlen ac yn rhoi bod uwchben y tu allan i'r ddolen ar gyfer 952 00:43:13,985 --> 00:43:15,364 hefyd? 953 00:43:15,364 --> 00:43:16,030 Andi Peng: Yeah. 954 00:43:16,030 --> 00:43:17,100 Gallech wneud hynny, yn hollol. 955 00:43:17,100 --> 00:43:19,970 Y rheswm yr ydym wedi ei mewn yma yw oherwydd bod y ffordd y mae ar gyfer gwaith dolen 956 00:43:19,970 --> 00:43:23,500 yw ei fod yn cael ei alw yn newidyn lleol yn yr ystyr 957 00:43:23,500 --> 00:43:26,150 bod popeth rydych yn creu tu mewn i'r ddolen ar gyfer 958 00:43:26,150 --> 00:43:27,890 ond yn bodoli tu mewn i'r ar gyfer ddolen. 959 00:43:27,890 --> 00:43:31,530 >> Felly mae'r newidyn fi yn unig yn bodoli mewn cromfachau hynny. 960 00:43:31,530 --> 00:43:35,260 Ac yma y newidynnau o n hefyd Dim ond yn bodoli mewn cromfachau hynny. 961 00:43:35,260 --> 00:43:39,350 Felly, os ydych yn ei ddefnyddio strlen o gair sawl gwaith i lawr isod, 962 00:43:39,350 --> 00:43:42,230 hollol y ffordd orau o wneud hynny fyddai i ddatgan ei fod i fyny y brig 963 00:43:42,230 --> 00:43:43,563 felly nid oes rhaid i chi wneud hynny unwaith. 964 00:43:43,563 --> 00:43:45,420 Yeah. 965 00:43:45,420 --> 00:43:47,670 GYNULLEIDFA: Pam fod gennych chi llinell newydd ar ôl y cant 966 00:43:47,670 --> 00:43:51,300 gweld os ydych am roi'r holl llythyrau nesaf iddo wahanu? 967 00:43:51,300 --> 00:43:54,140 >> Andi Peng: O, roeddwn i eisiau nhw i gyd yn argraffu ar bob llinell. 968 00:43:54,140 --> 00:43:54,890 Nid yw o bwys. 969 00:43:54,890 --> 00:43:55,890 Yeah, mae'n fformatio. 970 00:43:55,890 --> 00:43:57,181 Dyna gwestiwn da, er. 971 00:43:57,181 --> 00:43:59,360 Yeah, os oeddwn i eisiau argraffu y cyfan ar un llinell yn unig, 972 00:43:59,360 --> 00:44:02,731 Ni fyddwn yn cael y llinell doriad mewn. 973 00:44:02,731 --> 00:44:03,230 IAWN. 974 00:44:03,230 --> 00:44:06,880 Mae pawb yn dda? 975 00:44:06,880 --> 00:44:07,500 IAWN. 976 00:44:07,500 --> 00:44:08,000 Cool. 977 00:44:08,000 --> 00:44:12,080 978 00:44:12,080 --> 00:44:14,750 >> Felly yr wyf yn meddwl fy mod wedi siarad digon. 979 00:44:14,750 --> 00:44:20,040 Dro i chi guys i redeg drwy'r cod a dweud wrthyf beth sydd o'i le yma. 980 00:44:20,040 --> 00:44:21,560 Ble mae'r bug? 981 00:44:21,560 --> 00:44:26,920 Felly, fel y gwelwch, dwi wedi datgan amrywiaeth newydd o fath llinyn dosbarth a enwyd. 982 00:44:26,920 --> 00:44:30,220 Ac yr wyf i wedi bwydo Sam, Jess, a Kim i mewn iddo. 983 00:44:30,220 --> 00:44:33,400 A dwi'n ceisio argraffu holl elfennau y rhesi. 984 00:44:33,400 --> 00:44:36,796 A all rhywun ddweud wrthyf pam mae hyn yn mynd i roi problemau i mi? 985 00:44:36,796 --> 00:44:39,320 Byddaf yn rhoi i chi guys 10 eiliad i feddwl am hyn. 986 00:44:39,320 --> 00:44:55,490 987 00:44:55,490 --> 00:44:56,619 >> IAWN. 988 00:44:56,619 --> 00:44:57,118 Yeah? 989 00:44:57,118 --> 00:45:01,972 >> GYNULLEIDFA: A yw'r ganolfan chwith gyfartal i 3 neu [Anghlywadwy]? 990 00:45:01,972 --> 00:45:02,680 Andi Peng: Iawn. 991 00:45:02,680 --> 00:45:06,784 Felly faint o weithiau mae hyn mewn gwirionedd mynd i redeg trwy'r ddolen hon? 992 00:45:06,784 --> 00:45:07,620 >> GYNULLEIDFA: Four. 993 00:45:07,620 --> 00:45:08,070 >> Andi Peng: Yn union. 994 00:45:08,070 --> 00:45:09,445 Mae'n mynd iddo drwy bedair gwaith. 995 00:45:09,445 --> 00:45:12,250 Mae'n mynd i redeg trwy ar 0, 1, 2, a 3, 996 00:45:12,250 --> 00:45:15,200 oherwydd bod eu elfen yw i yn llai na neu'n hafal i 3. 997 00:45:15,200 --> 00:45:16,960 Dyw hi ddim yn mynd i roi'r gorau pan mae'n 2. 998 00:45:16,960 --> 00:45:18,800 Mae'n mynd i gadw mynd nes ei fod yn taro 3. 999 00:45:18,800 --> 00:45:21,720 Ac fel y gwyddom, mae tri yn unig elfennau yn ein amrywiaeth gwirioneddol. 1000 00:45:21,720 --> 00:45:27,260 >> Os ydym yn ceisio cael mynediad i'r pedwerydd yr elfen neu'r mynegai o 3, 1001 00:45:27,260 --> 00:45:30,357 ydych yn mynd i daro i rywle mewn cof nad yw'n bodoli. 1002 00:45:30,357 --> 00:45:31,690 Mae'n cael ei alw y terminator null. 1003 00:45:31,690 --> 00:45:32,856 Nid oes dim yn mynd i fod yno. 1004 00:45:32,856 --> 00:45:35,324 Nid yw eich cyfrifiadur yn mynd i fod yn hapus iawn gyda chi. 1005 00:45:35,324 --> 00:45:36,170 Yeah. 1006 00:45:36,170 --> 00:45:38,430 Oes gan unrhyw un gwestiynau ynghylch pam hynny oedd yn digwydd? 1007 00:45:38,430 --> 00:45:39,679 Dyna faes cyffredin i'w hosgoi. 1008 00:45:39,679 --> 00:45:40,712 Yeah. 1009 00:45:40,712 --> 00:45:45,777 >> GYNULLEIDFA: Nid oes gan y cyntaf llithro hefyd yn cael cyfres o 2? 1010 00:45:45,777 --> 00:45:46,360 Andi Peng: Na 1011 00:45:46,360 --> 00:45:49,610 Felly y bôn, pan fydd eich bod yn gwneud amrywiaeth, 1012 00:45:49,610 --> 00:45:51,540 y bachyn dde yno, sy'n number-- gyd 1013 00:45:51,540 --> 00:45:53,480 mae'n dweud wrthych sut llawer o elfennau gen i. 1014 00:45:53,480 --> 00:45:55,840 Dyw hi ddim yn dweud mewn gwirionedd 'm' r mynegeion o unrhyw beth. 1015 00:45:55,840 --> 00:45:58,760 Felly, yn yr achos hwn, yr wyf yn gwybod fy mod eisiau i ysgrifennu gyda thri o leoedd, 1016 00:45:58,760 --> 00:46:02,690 gyda thri o leoedd ffisegol i cynnal beth bynnag rwyf am i ddal. 1017 00:46:02,690 --> 00:46:04,510 Felly dyna pam mae'r rhif tri yno. 1018 00:46:04,510 --> 00:46:06,560 Fodd bynnag, os oeddwn i eisiau i gael gafael arno mewn gwirionedd, 1019 00:46:06,560 --> 00:46:11,220 os oeddwn am ei ddweud, printf Rhif braced dosbarth, yna 1020 00:46:11,220 --> 00:46:14,560 eich bod yn mynd i roi mewn gwirionedd mynegai corfforol yno. 1021 00:46:14,560 --> 00:46:16,330 Yeah, cwestiwn da. 1022 00:46:16,330 --> 00:46:20,065 >> GYNULLEIDFA: Felly yw'r corfforol Mynegai i fod i fod [Anghlywadwy]? 1023 00:46:20,065 --> 00:46:20,940 Andi Peng: Mae'n ddrwg gen i. 1024 00:46:20,940 --> 00:46:21,500 A allwch chi siarad ychydig? 1025 00:46:21,500 --> 00:46:24,208 >> GYNULLEIDFA: Felly yw'r mynegai corfforol [Anghlywadwy] pob un o'r blychau? 1026 00:46:24,208 --> 00:46:25,260 [Anghlywadwy]? 1027 00:46:25,260 --> 00:46:26,040 >> Andi Peng: Yeah. 1028 00:46:26,040 --> 00:46:28,970 Felly, yr wyf i'n mynd i fynd yn ôl i'r dde yma. 1029 00:46:28,970 --> 00:46:31,120 Meddyliwch am dde yma. 1030 00:46:31,120 --> 00:46:32,820 Mae gennym amrywiaeth o faint 3. 1031 00:46:32,820 --> 00:46:35,540 Mae tri lle, fel, dalfannau corfforol yn fan hyn. 1032 00:46:35,540 --> 00:46:37,620 Ond maen nhw'n enwi 0, 1, a 2. 1033 00:46:37,620 --> 00:46:40,700 Felly, os wyf yn awyddus i gael gafael arnynt, y ffordd yr wyf yn eu cael mynediad 1034 00:46:40,700 --> 00:46:43,480 yn printf o ba bynnag roeddwn i eisiau i mewn yma. 1035 00:46:43,480 --> 00:46:45,485 Byddai'n rhaid i chi argraffu allan enw iddo, 1036 00:46:45,485 --> 00:46:47,610 oherwydd wedyn y cyfrifiadur a ŵyr, oh, mae angen imi edrych 1037 00:46:47,610 --> 00:46:51,391 yn y arae hwn ar gyfer y mynegai 0fed. 1038 00:46:51,391 --> 00:46:51,890 Yeah. 1039 00:46:51,890 --> 00:46:53,306 Ond nid yw maint yw'n newid. 1040 00:46:53,306 --> 00:46:55,492 Mae maint yw 3, beth bynnag o sut rydych yn eu labelu. 1041 00:46:55,492 --> 00:46:58,321 1042 00:46:58,321 --> 00:46:58,820 IAWN. 1043 00:46:58,820 --> 00:47:01,387 Mae pawb yn dda? 1044 00:47:01,387 --> 00:47:02,970 GYNULLEIDFA: Felly bob tro rwy'n [Anghlywadwy]? 1045 00:47:02,970 --> 00:47:06,357 1046 00:47:06,357 --> 00:47:06,940 Andi Peng: OK. 1047 00:47:06,940 --> 00:47:13,270 Felly, yn yr achos hwn, nid ydym yn ei wneud mewn gwirionedd fynd i mewn iddo ar hyn o bryd yn y cwrs. 1048 00:47:13,270 --> 00:47:16,760 Ond yn gwybod bod string-- fel yr wyf yn dywedais o'r blaen, llinyn ei hanfod 1049 00:47:16,760 --> 00:47:18,440 amrywiaeth o gymeriadau. 1050 00:47:18,440 --> 00:47:21,430 Felly os wyf yn creu amrywiaeth o linynnau, yr wyf yn fath o 1051 00:47:21,430 --> 00:47:24,430 cael amrywiaeth o arae o gymeriadau, dde? 1052 00:47:24,430 --> 00:47:27,720 >> Felly, yn yr achos hwn, gan fy mod yn cael amrywiaeth o linynnau, 1053 00:47:27,720 --> 00:47:31,340 pe baech yn mewnbynnu gair hir iawn, bod yn dal yn cymryd dim ond un lle, 1054 00:47:31,340 --> 00:47:33,230 oherwydd dyna yr un llinyn. 1055 00:47:33,230 --> 00:47:37,492 Ond os ydych yn meddwl am gymeriadau'r y array, 1056 00:47:37,492 --> 00:47:40,450 Yna, sy'n cymryd llawer mwy cymeriadau nag unrhyw un o'r geiriau eraill 1057 00:47:40,450 --> 00:47:41,372 yn cael eu. 1058 00:47:41,372 --> 00:47:42,830 Ddim mewn gwirionedd bwysig ar gyfer hyn o bryd. 1059 00:47:42,830 --> 00:47:44,921 Ond dim ond ar y cyfan sut mae'n gweithio. 1060 00:47:44,921 --> 00:47:49,750 1061 00:47:49,750 --> 00:47:50,560 >> IAWN. 1062 00:47:50,560 --> 00:47:55,840 Felly, mae hyn yn rhywbeth y byddaf yn gadael i chi wneud llawer dros y cwrs y semester. 1063 00:47:55,840 --> 00:47:57,500 Mae angen i mi orffwys fy llais. 1064 00:47:57,500 --> 00:47:59,530 Mae angen i chi guys i ysgogi eich hunain. 1065 00:47:59,530 --> 00:48:02,300 Mae llawer ohonoch yn ôl pob tebyg rhaid i gysgu ar hyn o bryd. 1066 00:48:02,300 --> 00:48:05,960 Im 'yn mewnbynnu problemau ar hap lle rydym fel dosbarth neu os ydych yn 1067 00:48:05,960 --> 00:48:09,480 gyda phartner ymyl ydych yn mynd i wario cwpl o funudau yn trafod 1068 00:48:09,480 --> 00:48:14,980 ar sut y byddem yn mynd ati i ddatrys neu greu rhaglen fel hon. 1069 00:48:14,980 --> 00:48:17,100 >> Felly ar hyn o bryd, rydym am i greu program-- 1070 00:48:17,100 --> 00:48:19,560 rydym yn mynd i alw upper.c-- fod dychweledigion 1071 00:48:19,560 --> 00:48:24,787 gair llythrennau bach i uwch-ddosbarth priflythyren string--, mae'n ddrwg gennyf. 1072 00:48:24,787 --> 00:48:26,370 Gair yn llinynnau, mae'n ddrwg gennyf, yn gyfystyr. 1073 00:48:26,370 --> 00:48:28,370 Rydw i'n mynd i'w newid i olygu'r un peth. 1074 00:48:28,370 --> 00:48:32,270 1075 00:48:32,270 --> 00:48:33,499 >> Yeah. 1076 00:48:33,499 --> 00:48:34,540 Cymerwch ychydig o funudau. 1077 00:48:34,540 --> 00:48:37,130 Nid oes rhaid iddo fod hysgrifennu mewn unrhyw iaith. 1078 00:48:37,130 --> 00:48:39,890 Dim ond mewn cod pseudocode neu rhesymegol sut byddem hyd yn oed 1079 00:48:39,890 --> 00:48:42,083 mynd ati i wneud gymaint o broblem. 1080 00:48:42,083 --> 00:48:42,583 Yeah. 1081 00:48:42,583 --> 00:48:49,881 1082 00:48:49,881 --> 00:48:52,780 >> [SGWRS OCHR] 1083 00:48:52,780 --> 00:49:18,680 1084 00:49:18,680 --> 00:49:22,130 >> Yr wyf hefyd yn sylwi bod chi guys can-- Yr wyf yn fath o weld eisoes yn y rhaglen. 1085 00:49:22,130 --> 00:49:24,600 Amcana fy niffyg Modd cyflwynydd yn broblem. 1086 00:49:24,600 --> 00:49:27,410 Ond mae'n iawn. 1087 00:49:27,410 --> 00:49:30,410 >> [SGWRS OCHR] 1088 00:49:30,410 --> 00:50:03,589 1089 00:50:03,589 --> 00:50:04,380 Yeah, os gwelwch yn dda, guys. 1090 00:50:04,380 --> 00:50:05,400 Dewch i gael Candy. 1091 00:50:05,400 --> 00:50:06,372 Dewch i gael Candy. 1092 00:50:06,372 --> 00:50:07,698 >> GYNULLEIDFA: Ie! 1093 00:50:07,698 --> 00:50:09,958 >> [SGWRS OCHR] 1094 00:50:09,958 --> 00:50:16,101 1095 00:50:16,101 --> 00:50:18,100 Andi Peng: Hefyd, ie, Byddaf yn dechrau taflu Candy 1096 00:50:18,100 --> 00:50:20,280 at bobl nad ydynt yn ateb cwestiynau. 1097 00:50:20,280 --> 00:50:22,260 Felly, dylech holl gwestiynau ateb. 1098 00:50:22,260 --> 00:50:24,895 Neu mae'n debyg bobl sydd yn ateb cwestiynau. 1099 00:50:24,895 --> 00:50:26,070 Yeah, ffordd arall o gwmpas. 1100 00:50:26,070 --> 00:50:28,570 >> [SGWRS OCHR] 1101 00:50:28,570 --> 00:51:13,399 1102 00:51:13,399 --> 00:51:14,274 GYNULLEIDFA: [Anghlywadwy] 1103 00:51:14,274 --> 00:51:17,300 1104 00:51:17,300 --> 00:51:18,340 >> Andi Peng: Yeah. 1105 00:51:18,340 --> 00:51:19,340 Yeah. 1106 00:51:19,340 --> 00:51:22,840 >> [SGWRS OCHR] 1107 00:51:22,840 --> 00:51:40,700 1108 00:51:40,700 --> 00:51:41,590 >> Mae pob hawl, guys. 1109 00:51:41,590 --> 00:51:44,731 Cymerwch, fel, 10 eiliad mwy. 1110 00:51:44,731 --> 00:51:48,210 >> [SGWRS OCHR] 1111 00:51:48,210 --> 00:52:10,600 1112 00:52:10,600 --> 00:52:11,750 >> OK, guys. 1113 00:52:11,750 --> 00:52:14,920 Felly, cyn i ni ddechrau ceisio mewn gwirionedd yn ysgrifennu cod yn gorfforol, 1114 00:52:14,920 --> 00:52:20,650 arfer da i ddatblygu yw bod rydym am fath cyntaf o reswm 1115 00:52:20,650 --> 00:52:22,737 allan rhesymegol sut y byddem yn ei wneud. 1116 00:52:22,737 --> 00:52:24,570 Y byddwch am wneud yn siwr, cyn i chi yn gorfforol 1117 00:52:24,570 --> 00:52:27,210 dechrau ceisio i cod yn Mario, eich bod yn gwneud 1118 00:52:27,210 --> 00:52:28,870 yn siŵr eich bod wedi eich pseudocode. 1119 00:52:28,870 --> 00:52:31,235 Mae hynny'n mynd â chi drwy beth sydd angen i chi greu felly 1120 00:52:31,235 --> 00:52:33,360 hynny, pan fyddwch yn gorfforol ysgrifennu eich rhaglen yn ddiweddarach, 1121 00:52:33,360 --> 00:52:36,640 eich bod yn gallu dal gwallau yn well yn eich cod a phethau fel 'na. 1122 00:52:36,640 --> 00:52:40,460 >> Felly rydym yn mynd i dim ond dechrau by-- yn Saesneg, yn pseudocode, 1123 00:52:40,460 --> 00:52:43,320 oes unrhyw un yn awyddus i roi mi esboniad generig 1124 00:52:43,320 --> 00:52:46,250 o sut y byddem yn mynd ati i wneud hyn? 1125 00:52:46,250 --> 00:52:48,102 Yeah. 1126 00:52:48,102 --> 00:52:49,664 >> GYNULLEIDFA: [Anghlywadwy]. 1127 00:52:49,664 --> 00:52:50,830 Andi Peng: Cadarn, dim pryderon. 1128 00:52:50,830 --> 00:52:57,233 GYNULLEIDFA: Allwch chi ofyn iddo neu ofyn rhywun i gael llinyn 1-- ie, llinyn, 1129 00:52:57,233 --> 00:52:58,160 ac wedyn-- 1130 00:52:58,160 --> 00:52:59,826 >> Andi Peng: Ie, felly mae hwn yn ddechrau da. 1131 00:52:59,826 --> 00:53:01,972 Byddaf yn dechrau teipio, mae'n ddrwg gennyf, wrth i chi siarad. 1132 00:53:01,972 --> 00:53:02,471 So-- 1133 00:53:02,471 --> 00:53:05,698 >> GYNULLEIDFA: --Yr llythrennau bach niferoedd yn uwch, dde? 1134 00:53:05,698 --> 00:53:08,519 Neu mae'r llythrennau bach niferoedd uchel? 1135 00:53:08,519 --> 00:53:09,310 Andi Peng: Yn union. 1136 00:53:09,310 --> 00:53:16,156 GYNULLEIDFA: Felly, yna rydym yn tynnu 32 o ba bynnag [Anghlywadwy]. 1137 00:53:16,156 --> 00:53:28,600 1138 00:53:28,600 --> 00:53:29,870 >> Andi Peng: Great. 1139 00:53:29,870 --> 00:53:35,020 Felly, rydym fath o gael synnwyr cyffredinol o sut i weithio am y broblem hon. 1140 00:53:35,020 --> 00:53:40,060 Mae gwybod ein bod ni wedi fath o ddysgwyd y ffordd ffisegol sy'n llinynnau 1141 00:53:40,060 --> 00:53:43,320 yn cael eu storio yn y cof, yr hyn yr ydych yn ei wneud yn barod 1142 00:53:43,320 --> 00:53:45,920 gwybod eich bod yn mynd i yn ôl pob tebyg rhaid i ysgrifennu yn eich cod 1143 00:53:45,920 --> 00:53:48,288 er mwyn symud drwy'r llinyn? 1144 00:53:48,288 --> 00:53:49,259 >> GYNULLEIDFA: Ar gyfer dolen. 1145 00:53:49,259 --> 00:53:50,550 Andi Peng: A ar gyfer dolen, yn union. 1146 00:53:50,550 --> 00:53:56,540 1147 00:53:56,540 --> 00:53:57,220 Great. 1148 00:53:57,220 --> 00:54:00,539 Felly, rydym fath o gael generig pseudocode ysgrifennu i lawr 1149 00:54:00,539 --> 00:54:02,330 y math hwnnw o yn rhoi chi nodiadau ar sut yr ydych 1150 00:54:02,330 --> 00:54:03,900 Byddai symud o gwmpas ddatrys y broblem. 1151 00:54:03,900 --> 00:54:06,150 Nawr eich bod wedi hyn, rydych yn gall gyfeirio ei gyfer yn ddiweddarach 1152 00:54:06,150 --> 00:54:08,233 ymlaen pan fyddwch yn ceisio mewn gwirionedd yn ysgrifennu eich cod. 1153 00:54:08,233 --> 00:54:10,240 Felly gallwn mewn gwirionedd yn mynd yma. 1154 00:54:10,240 --> 00:54:25,130 Ac mae gen i swyddogaeth o'r enw upper.c-- yno mae'n yw-- o dim ond templed gwag 1155 00:54:25,130 --> 00:54:28,510 ar hyn o bryd eich bod guys yn mynd i fy helpu i chyfrif i maes ar sut i ysgrifennu 1156 00:54:28,510 --> 00:54:30,430 llinell hon o code-- Nid yw llinell o god. 1157 00:54:30,430 --> 00:54:32,890 Bydd yn lluosog linellau o god. 1158 00:54:32,890 --> 00:54:35,710 >> Wrth ddechrau unrhyw fath o pset wag, beth sydd 1159 00:54:35,710 --> 00:54:37,418 y peth cyntaf sydd angen i mi i gofio ei wneud? 1160 00:54:37,418 --> 00:54:39,290 >> GYNULLEIDFA: [Anghlywadwy]. 1161 00:54:39,290 --> 00:54:41,000 >> Andi Peng: Great Yep. 1162 00:54:41,000 --> 00:54:41,500 Cynnwys. 1163 00:54:41,500 --> 00:54:44,850 1164 00:54:44,850 --> 00:54:47,130 stdio.h. 1165 00:54:47,130 --> 00:54:49,640 Oftentimes mae hwn yn un o y camgymeriadau mwyaf hawdd o bobl 1166 00:54:49,640 --> 00:54:51,598 bydd yn gwneud pan fyddant yn ysgrifennu, yw eu bod yn chi helpu 1167 00:54:51,598 --> 00:54:54,180 anghofio i gynnwys llyfrgell pwysig sydd eu hangen arnynt. 1168 00:54:54,180 --> 00:54:57,689 Felly, os yw'n oriau swyddfa ac ydych chi fel, Nid wyf yn gwybod pam nad yw fy cod yn gweithio. 1169 00:54:57,689 --> 00:54:59,230 A allwch ddweud wrthyf pam nad yw'n gweithio? 1170 00:54:59,230 --> 00:55:00,730 Rydym yn mynd i ddweud wnaethoch chi #include? 1171 00:55:00,730 --> 00:55:02,520 Dylech #include hynny. 1172 00:55:02,520 --> 00:55:03,270 IAWN. 1173 00:55:03,270 --> 00:55:07,230 >> Felly, rydym wedi cael y safon I / O fan hyn. 1174 00:55:07,230 --> 00:55:10,740 Ai dyna'r unig lyfrgell rydym yn mynd i angen yma? 1175 00:55:10,740 --> 00:55:12,681 Beth arall rydym yn mynd i'w wneud? 1176 00:55:12,681 --> 00:55:13,180 Mae'n ddrwg gennym. 1177 00:55:13,180 --> 00:55:14,562 Rhywun yn unig sgrechian allan? 1178 00:55:14,562 --> 00:55:15,666 >> GYNULLEIDFA: [Anghlywadwy]. 1179 00:55:15,666 --> 00:55:16,666 Andi Peng: Dyna chi. 1180 00:55:16,666 --> 00:55:20,320 1181 00:55:20,320 --> 00:55:21,440 IAWN. 1182 00:55:21,440 --> 00:55:26,070 A sut ydw i'n mynd ati i ddechrau unrhyw fath swyddogaeth, unrhyw fath o brif swyddogaeth 1183 00:55:26,070 --> 00:55:28,760 o fewn ein rhaglen? 1184 00:55:28,760 --> 00:55:30,020 Int prif. 1185 00:55:30,020 --> 00:55:34,531 1186 00:55:34,531 --> 00:55:35,030 IAWN. 1187 00:55:35,030 --> 00:55:35,970 Beth ddylwn i ei roi y tu mewn fan hyn? 1188 00:55:35,970 --> 00:55:37,640 Beth yw'r peth cyntaf rydych am ei wneud? 1189 00:55:37,640 --> 00:55:39,910 Os ydym am gael llinyn gan y defnyddiwr, 1190 00:55:39,910 --> 00:55:43,870 beth ydym yn mynd i gael i'w wneud ar y llinell gyntaf? 1191 00:55:43,870 --> 00:55:46,120 Mae'n ddrwg gennym, rydych guys yn unig yn teimlo rhad ac am ddim i siarad ac yn uchel. 1192 00:55:46,120 --> 00:55:47,123 Dim ond yn gweiddi allan beth bynnag. 1193 00:55:47,123 --> 00:55:48,772 >> GYNULLEIDFA: Gofynnwch i'r defnyddiwr? 1194 00:55:48,772 --> 00:55:49,980 Andi Peng: Sut ydym ni'n gwneud hynny? 1195 00:55:49,980 --> 00:55:51,873 Ask-- wyf i'n mynd i deipio "gofyn i'r defnyddiwr"? 1196 00:55:51,873 --> 00:55:52,600 >> GYNULLEIDFA: printf. 1197 00:55:52,600 --> 00:55:54,341 >> Andi Peng: OK. 1198 00:55:54,341 --> 00:55:54,840 Printf. 1199 00:55:54,840 --> 00:55:57,372 Beth ydw i am ei printf? 1200 00:55:57,372 --> 00:55:58,776 >> GYNULLEIDFA: Teipiwch rhywbeth. 1201 00:55:58,776 --> 00:56:02,760 1202 00:56:02,760 --> 00:56:03,840 >> Andi Peng: Fel hynny? 1203 00:56:03,840 --> 00:56:05,430 Guys, esgus fy mod i'n cyfrifiadur. 1204 00:56:05,430 --> 00:56:08,475 Yn gorfforol dywedwch pob cam wrthyf bod angen i mi deipio i mewn yma? 1205 00:56:08,475 --> 00:56:09,600 Ydw i'n gwneud rhywbeth o'i le? 1206 00:56:09,600 --> 00:56:10,743 A ddylwn i fod wedi ei deipio rhywbeth? 1207 00:56:10,743 --> 00:56:11,690 >> GYNULLEIDFA: Mae angen i chi dyfynbrisiau. 1208 00:56:11,690 --> 00:56:12,380 >> Andi Peng: Fi angen dyfyniadau? 1209 00:56:12,380 --> 00:56:12,880 IAWN. 1210 00:56:12,880 --> 00:56:15,520 1211 00:56:15,520 --> 00:56:16,297 IAWN. 1212 00:56:16,297 --> 00:56:17,698 >> GYNULLEIDFA: Ac yna llinell newydd. 1213 00:56:17,698 --> 00:56:21,434 1214 00:56:21,434 --> 00:56:22,465 Hanner colon. 1215 00:56:22,465 --> 00:56:23,340 Andi Peng: hanner colon? 1216 00:56:23,340 --> 00:56:24,060 IAWN. 1217 00:56:24,060 --> 00:56:24,560 Da. 1218 00:56:24,560 --> 00:56:27,060 >> GYNULLEIDFA: Ac efallai yn pennu eich bod am ei mewn llythrennau bach? 1219 00:56:27,060 --> 00:56:30,120 1220 00:56:30,120 --> 00:56:31,415 >> Andi Peng: Great. 1221 00:56:31,415 --> 00:56:33,540 Rydych guys yn chwerthin am fy mhen anghofio i roi hanner colon. 1222 00:56:33,540 --> 00:56:36,350 Yr wyf yn gwarantu i chi rhywle yn ystod y dosbarth hwn, 1223 00:56:36,350 --> 00:56:38,260 byddwch yn anghofio i roi hanner colon, ac mae'n 1224 00:56:38,260 --> 00:56:41,116 yn mynd â chi dair awr i ffigur pam nad yw eich cod yn gweithio. 1225 00:56:41,116 --> 00:56:42,240 Mae'n digwydd i bob un ohonom. 1226 00:56:42,240 --> 00:56:43,950 Mae'n debyg y bydd yn digwydd i chi. 1227 00:56:43,950 --> 00:56:46,352 Ewch mewn arfer dda o ddefnyddio hanner colon. 1228 00:56:46,352 --> 00:56:46,852 IAWN. 1229 00:56:46,852 --> 00:56:49,010 >> GYNULLEIDFA: Ydych chi eisiau i wneud y slaes i mewn? 1230 00:56:49,010 --> 00:56:50,398 >> Andi Peng: Cadarn. 1231 00:56:50,398 --> 00:56:51,856 Ydych chi eisiau gwneud y slaes i mewn? 1232 00:56:51,856 --> 00:56:53,020 >> GYNULLEIDFA: Oes. 1233 00:56:53,020 --> 00:56:54,330 >> Andi Peng: Great. 1234 00:56:54,330 --> 00:56:54,830 IAWN. 1235 00:56:54,830 --> 00:56:57,872 Beth ddylwn i ei wneud nesaf? 1236 00:56:57,872 --> 00:56:58,964 >> GYNULLEIDFA: Cael llinyn. 1237 00:56:58,964 --> 00:56:59,880 Andi Peng: Get llinyn. 1238 00:56:59,880 --> 00:57:03,080 1239 00:57:03,080 --> 00:57:03,830 Felly, beth ddylwn i ei deipio? 1240 00:57:03,830 --> 00:57:04,233 Rhywun? 1241 00:57:04,233 --> 00:57:05,040 >> GYNULLEIDFA: Llinynnol s. 1242 00:57:05,040 --> 00:57:05,873 >> Andi Peng: Llinynnol s. 1243 00:57:05,873 --> 00:57:07,251 GYNULLEIDFA: GetString. 1244 00:57:07,251 --> 00:57:09,000 Andi Peng: Rhywun, a allwch ddweud wrthyf ble 1245 00:57:09,000 --> 00:57:12,000 mae hyn GetString swyddogaeth yn dod o? 1246 00:57:12,000 --> 00:57:13,660 >> GYNULLEIDFA: String.h. 1247 00:57:13,660 --> 00:57:15,256 >> Andi Peng: String.h? 1248 00:57:15,256 --> 00:57:16,715 Rydych yn credu ei fod o string.h? 1249 00:57:16,715 --> 00:57:17,830 >> GYNULLEIDFA: [Anghlywadwy]. 1250 00:57:17,830 --> 00:57:18,830 >> Andi Peng: Dyna chi. 1251 00:57:18,830 --> 00:57:21,280 Mae'n o CS50.h. 1252 00:57:21,280 --> 00:57:24,530 Os ydych bob amser yn ddryslyd ar ble mae ffeil llyfrgell neu ffeil pennawd yw, 1253 00:57:24,530 --> 00:57:28,450 google llythrennol string.h, a byddaf yn dweud wrthych 1254 00:57:28,450 --> 00:57:30,450 beth yw'r holl swyddogaethau sydd mewn string.h. 1255 00:57:30,450 --> 00:57:31,340 IAWN. 1256 00:57:31,340 --> 00:57:35,210 >> Felly, yn awr fy mod wedi creu llinyn ac yr wyf i wedi annog y defnyddiwr ar ei gyfer, 1257 00:57:35,210 --> 00:57:38,770 Rwyf wedi ei storio mewn newidyn s enwir, beth sydd angen i mi ei wneud nawr? 1258 00:57:38,770 --> 00:57:40,652 >> GYNULLEIDFA: Gwiriwch os yw'n mewn llythrennau bach. 1259 00:57:40,652 --> 00:57:41,360 Andi Peng: Mae'n ddrwg gennyf? 1260 00:57:41,360 --> 00:57:42,545 GYNULLEIDFA: Gwiriwch os yw'n mewn llythrennau bach. 1261 00:57:42,545 --> 00:57:44,045 Andi Peng: pob hawl, gadewch i ni wneud hynny. 1262 00:57:44,045 --> 00:57:45,857 Sut mae gwneud hynny? 1263 00:57:45,857 --> 00:57:47,940 A dweud y gwir, at ddibenion y dosbarth ar hyn o bryd, 1264 00:57:47,940 --> 00:57:50,330 rydym yn jyst yn mynd i cymryd yn ganiataol bod popeth 1265 00:57:50,330 --> 00:57:52,620 bod cyfraniad yr ydym eisoes yn llythrennau bach. 1266 00:57:52,620 --> 00:57:55,430 Os ydych yn awyddus i wirio, byddech dim ond ychwanegu datganiad amodol 1267 00:57:55,430 --> 00:57:59,640 hynny gwirio, oedd yn rhedeg drwy pob elfen amrywiaeth sengl 1268 00:57:59,640 --> 00:58:02,540 a'i wirio os yw'n rhwng gwerthoedd penodol. 1269 00:58:02,540 --> 00:58:05,627 Yr wyf yn anghofio yr hyn y mae'r rhif o werthoedd llythrennau bach yn cael eu. 1270 00:58:05,627 --> 00:58:07,210 Gallwch edrych i fyny ar y bwrdd ASCII. 1271 00:58:07,210 --> 00:58:08,800 Ond yeah, mae hynny'n bwynt da iawn. 1272 00:58:08,800 --> 00:58:11,758 Ond ar hyn o bryd, rydym yn jyst yn mynd i cymryd yn ganiataol bod yr holl dannau ydym yn mewnbynnu 1273 00:58:11,758 --> 00:58:13,130 mewn llythrennau bach. 1274 00:58:13,130 --> 00:58:13,870 IAWN. 1275 00:58:13,870 --> 00:58:18,069 >> Felly sut y byddwn yn mynd ati i y broblem hon nesaf? 1276 00:58:18,069 --> 00:58:18,860 GYNULLEIDFA: Ar gyfer dolen. 1277 00:58:18,860 --> 00:58:19,340 Andi Peng: Ar gyfer dolen? 1278 00:58:19,340 --> 00:58:19,839 IAWN. 1279 00:58:19,839 --> 00:58:20,847 Dywedwch wrthyf beth i'w deipio. 1280 00:58:20,847 --> 00:58:25,230 >> GYNULLEIDFA: Ar gyfer int i dychwelyd 0. 1281 00:58:25,230 --> 00:58:27,230 >> Andi Peng: OK. 1282 00:58:27,230 --> 00:58:36,350 >> GYNULLEIDFA: O, mewn gwirionedd, yna rydych gwneud coma ac yn gwneud n hafal strlen. 1283 00:58:36,350 --> 00:58:38,940 >> Andi Peng: peth Felly pwysig fy mod yn credu ei bod wedi sylwi yma 1284 00:58:38,940 --> 00:58:42,936 yw nad oedd yn rhaid i ni ddweud int n yr ail dro i ni yn gwneud hyn. 1285 00:58:42,936 --> 00:58:45,060 Dim ond yn gwybod bod mewn am dolen pan fyddwch yn datgan, 1286 00:58:45,060 --> 00:58:47,934 chi mewn gwirionedd nid oes angen i'r int o yr ail dro a wnewch newidyn. 1287 00:58:47,934 --> 00:58:51,202 Gallwch ddweud n strlen. 1288 00:58:51,202 --> 00:58:52,620 >> GYNULLEIDFA: O s. 1289 00:58:52,620 --> 00:58:53,510 >> Andi Peng: s. 1290 00:58:53,510 --> 00:58:54,706 IAWN. 1291 00:58:54,706 --> 00:58:58,370 >> GYNULLEIDFA: Yna hanner colon. 1292 00:58:58,370 --> 00:59:00,130 >> Andi Peng: Cadarn. 1293 00:59:00,130 --> 00:59:04,050 >> GYNULLEIDFA: Ac yna [Anghlywadwy] n. 1294 00:59:04,050 --> 00:59:07,480 1295 00:59:07,480 --> 00:59:09,460 Yna i ++. 1296 00:59:09,460 --> 00:59:11,780 >> Andi Peng: Great. 1297 00:59:11,780 --> 00:59:12,280 Iawn. 1298 00:59:12,280 --> 00:59:14,690 Beth yw ein dymuniad y tu mewn o hyn ar gyfer dolen nawr? 1299 00:59:14,690 --> 00:59:17,820 Cofiwch, os ydym yn mynd i redeg trwy llinyn a rhedeg trwy amrywiaeth, 1300 00:59:17,820 --> 00:59:19,287 rydym am wirio pethau ynddo. 1301 00:59:19,287 --> 00:59:20,370 Beth ydym yn mynd i angen? 1302 00:59:20,370 --> 00:59:23,070 1303 00:59:23,070 --> 00:59:26,900 Mae hyn yn fath o ran anodd yn awr. 1304 00:59:26,900 --> 00:59:27,960 Gall unrhyw un gael ddyfalu? 1305 00:59:27,960 --> 00:59:34,160 1306 00:59:34,160 --> 00:59:34,690 >> IAWN. 1307 00:59:34,690 --> 00:59:37,830 Felly yn gyntaf, sut rydym yn hyd yn oed yn cael mynediad? 1308 00:59:37,830 --> 00:59:41,610 Sut mae hyd yn oed yn cyfrif cyntaf neu gael gafael ar elfen yn y rhesi? 1309 00:59:41,610 --> 00:59:42,920 Sut rydym yn gwneud hynny? 1310 00:59:42,920 --> 00:59:47,120 Beth yw'r nodiant a ddefnyddiwn i wneud hynny? 1311 00:59:47,120 --> 00:59:50,920 Beth yw enw'r arae hon enw? 1312 00:59:50,920 --> 00:59:52,400 Mae'n cael ei alw s, dde? 1313 00:59:52,400 --> 00:59:54,850 >> Cofiwch, mae unrhyw llinyn bob amser arae. 1314 00:59:54,850 --> 00:59:58,210 Felly s braced i, dde? 1315 00:59:58,210 --> 01:00:01,360 Oherwydd dyna'r gwerth cyfredol neu werth mynegai rydym yn gwirio. 1316 01:00:01,360 --> 01:00:05,156 Ac rydym yn mynd i osod y cyfartal canlynol-- ydym am gael gwerth llythrennau bach, dde? 1317 01:00:05,156 --> 01:00:07,530 Rydym am droi hynny lower-- ddrwg gennym, rydym eisiau priflythyren. 1318 01:00:07,530 --> 01:00:10,014 Rydym am droi'r llythrennau bach gwerth i mewn i priflythyren. 1319 01:00:10,014 --> 01:00:11,805 Ac felly like-- Mae'n ddrwg gen i, beth yw dy enw? 1320 01:00:11,805 --> 01:00:12,580 >> GYNULLEIDFA: Heidi. 1321 01:00:12,580 --> 01:00:12,940 >> Andi Peng: Mae'n ddrwg gennyf? 1322 01:00:12,940 --> 01:00:13,280 >> GYNULLEIDFA: Heidi. 1323 01:00:13,280 --> 01:00:13,988 >> Andi Peng: Heidi. 1324 01:00:13,988 --> 01:00:15,850 Fel dywedodd Heidi i ddechrau, rydym yn fwy na thebyg 1325 01:00:15,850 --> 01:00:20,330 mynd i angen the-- rydym yn yn ôl pob tebyg yn mynd i gael i dynnu 1326 01:00:20,330 --> 01:00:22,630 32 o ba bynnag charc hynny yw, dde? 1327 01:00:22,630 --> 01:00:24,680 Oherwydd ar ASCII bwrdd, y gwahaniaeth 1328 01:00:24,680 --> 01:00:27,790 rhwng llythyr llythrennau bach a llythyr priflythyren yw 32. 1329 01:00:27,790 --> 01:00:31,290 Felly, pan fyddwn yn gwneud hyn, rydym yn fwy na thebyg mynd i eisiau i dynnu 32, dde? 1330 01:00:31,290 --> 01:00:33,910 >> Felly rydym yn mynd i wneud s i. 1331 01:00:33,910 --> 01:00:37,590 1332 01:00:37,590 --> 01:00:41,200 Ydy pawb yn deall pam yr wyf yn gwneud hynny? 1333 01:00:41,200 --> 01:00:45,760 Gan fod ar hyn o bryd, yn ein array, rydym yn gwirio mynegai 0fed, dde? 1334 01:00:45,760 --> 01:00:49,190 Ac yn y mynegai 0fed y llinyn, dyna cymeriad cyntaf. 1335 01:00:49,190 --> 01:00:51,820 A bod cymeriad rydym yn mynd i gymryd yn ganiataol ei fod yn llythrennau bach. 1336 01:00:51,820 --> 01:00:55,980 Os ydym am ei gwneud yn priflythyren, rydym yn rhaid i dynnu 32 oddi ar ei werth, 1337 01:00:55,980 --> 01:00:58,620 oherwydd yn ein ASCII bwrdd, dyna sut yr ydym yn ei gael 1338 01:00:58,620 --> 01:01:01,600 i'r nesaf cyfatebol gwerth sy'n ei gwneud yn priflythyren. 1339 01:01:01,600 --> 01:01:03,714 A yw pawb yn deall hynny? 1340 01:01:03,714 --> 01:01:04,213 Yeah. 1341 01:01:04,213 --> 01:01:06,530 >> GYNULLEIDFA: Allech chi hefyd yn llythrennau bach yn minus-- 1342 01:01:06,530 --> 01:01:08,080 >> Andi Peng: Yeah, felly dyna mewn gwirionedd yn dda iawn. 1343 01:01:08,080 --> 01:01:10,455 Rydw i'n mynd i ddod yn ôl at hynny cwestiwn ar ôl i ni wneud hyn. 1344 01:01:10,455 --> 01:01:11,060 Yeah. 1345 01:01:11,060 --> 01:01:13,940 Ac yna os ydw i eisiau weld beth sy'n mynd ymlaen, 1346 01:01:13,940 --> 01:01:16,180 Mae'n debyg fy mod i'n mynd i eisiau argraffu, dde? 1347 01:01:16,180 --> 01:01:19,930 Rhywun ddweud wrthyf beth Rwyf eisiau argraffu yma. 1348 01:01:19,930 --> 01:01:29,160 >> GYNULLEIDFA: cant printf c slaes [Anghlywadwy]. 1349 01:01:29,160 --> 01:01:33,570 Dyna werth [Anghlywadwy] s i. 1350 01:01:33,570 --> 01:01:34,614 >> Andi Peng: s i, mae'n ddrwg gennyf? 1351 01:01:34,614 --> 01:01:35,530 GYNULLEIDFA: [Anghlywadwy]. 1352 01:01:35,530 --> 01:01:38,550 1353 01:01:38,550 --> 01:01:39,550 Andi Peng: Nid wyf yn gwybod. 1354 01:01:39,550 --> 01:01:40,600 Beth yw eich barn? 1355 01:01:40,600 --> 01:01:44,016 >> GYNULLEIDFA: Wel, yr wyf wouldn't-- Amcana Fyddwn i ddim bring-- 1356 01:01:44,016 --> 01:01:46,944 Byddwn yn mynd ag ef allan i'r tu mewn, oherwydd [Anghlywadwy]. 1357 01:01:46,944 --> 01:01:49,726 1358 01:01:49,726 --> 01:01:51,392 Andi Peng: O, byddech wedi gwneud hynny? 1359 01:01:51,392 --> 01:01:53,867 GYNULLEIDFA: Yeah. 1360 01:01:53,867 --> 01:01:56,700 Andi Peng: Gadewch i ni ei adael ar y ffordd y mae, a byddaf yn egluro pam yn nes ymlaen. 1361 01:01:56,700 --> 01:01:58,533 Cofiwch, hyd yn oed pan fyddwch yn fod â deiliad le, 1362 01:01:58,533 --> 01:02:00,701 ydych chi am roi cromfachau o'i amgylch. 1363 01:02:00,701 --> 01:02:01,200 Iawn. 1364 01:02:01,200 --> 01:02:04,810 Felly, dylai hyn fod yn swyddogaeth gadarn yma. 1365 01:02:04,810 --> 01:02:06,370 Gadewch i redeg a gweld a yw'n llunio. 1366 01:02:06,370 --> 01:02:08,750 Gwnewch uchaf. 1367 01:02:08,750 --> 01:02:09,250 Uh-oh. 1368 01:02:09,250 --> 01:02:12,030 1369 01:02:12,030 --> 01:02:13,340 Nid yw hynny'n edrych yn rhy dda. 1370 01:02:13,340 --> 01:02:14,507 Pam fod hyn yn digwydd? 1371 01:02:14,507 --> 01:02:17,340 Fel gydag unrhyw gamgymeriad, ydych am fynd yn ôl a dechrau gyda'r un cyntaf, 1372 01:02:17,340 --> 01:02:20,630 oherwydd fel arfer achosion un gwall llawer o gamgymeriadau eraill ar ei ôl. 1373 01:02:20,630 --> 01:02:26,700 Yma rydym yn gweld upper.c: 18: 25, sy'n dweud fi yn y rhaglen hon enwir upper.c, 1374 01:02:26,700 --> 01:02:33,800 ar-lein 18, gwall ymhlyg datgan llyfrgell o swyddogaethau strlen â'r math 1375 01:02:33,800 --> 01:02:36,330 blah unassigned--, nid wyf yn gwybod beth sy'n digwydd ar ôl hynny. 1376 01:02:36,330 --> 01:02:39,990 >> Mae pob mae'n dweud wrthyf ar hyn o bryd yn cael ei bod rhywbeth yn mynd ar y strlen. 1377 01:02:39,990 --> 01:02:43,520 A'r cyfrifiadur wedi drysu, am fod mae'n debyg, nid wyf yn gwybod beth strlen yw? 1378 01:02:43,520 --> 01:02:45,520 Beth mae bod yn ôl pob tebyg yn dweud wrthych eich bod ar goll? 1379 01:02:45,520 --> 01:02:46,490 >> GYNULLEIDFA: Rydych yn goll [Anghlywadwy]. 1380 01:02:46,490 --> 01:02:47,630 >> Andi Peng: Rydych chi'n iawn. 1381 01:02:47,630 --> 01:02:49,510 Yn union. 1382 01:02:49,510 --> 01:02:52,140 Felly dyma lle mae'n bwysig i wneud yn siŵr 1383 01:02:52,140 --> 01:02:56,970 bod pob swyddogaeth a ddefnyddiwch yn eich cod yn cael y pennawd cywir 1384 01:02:56,970 --> 01:02:59,660 ffeil ar gyfer y llyfrgell, neu fel arall ydych yn mynd i gael llawer o wallau 1385 01:02:59,660 --> 01:03:01,150 ac nad yw eich cod yn mynd i wybod beth sy'n digwydd. 1386 01:03:01,150 --> 01:03:03,050 Felly rydym yn mynd i gynnwys string.h yma. 1387 01:03:03,050 --> 01:03:06,270 >> Nawr, pan geisiwn lunio uchaf. 1388 01:03:06,270 --> 01:03:08,410 Llunio gywir. 1389 01:03:08,410 --> 01:03:09,960 Gadewch i redeg y rhaglen hon. 1390 01:03:09,960 --> 01:03:12,000 Felly teipio rhywbeth yn llythrennau bach. 1391 01:03:12,000 --> 01:03:14,920 Beth ydych chi guys eisiau ei deipio? 1392 01:03:14,920 --> 01:03:16,546 Gweiddi allan rhywbeth. 1393 01:03:16,546 --> 01:03:17,920 Mae pob hawl, Charly newydd gerdded i mewn. 1394 01:03:17,920 --> 01:03:18,990 Byddwn deipio enw Charly yn. 1395 01:03:18,990 --> 01:03:21,670 1396 01:03:21,670 --> 01:03:22,840 >> Charly mewn llythrennau bach. 1397 01:03:22,840 --> 01:03:27,742 A, gobeithio, gobeithio, mae hyn yn mynd i weiddi a boeri allan 1398 01:03:27,742 --> 01:03:28,575 Charly mewn priflythrennau. 1399 01:03:28,575 --> 01:03:30,830 Yay! 1400 01:03:30,830 --> 01:03:33,430 mae pawb yn deall sut Es ati i ddatrys hynny? 1401 01:03:33,430 --> 01:03:36,190 Mae'r ffordd y gallaf trin gan ddefnyddio cyfanrifau 1402 01:03:36,190 --> 01:03:39,410 i ddatrys rhywbeth sy'n Rwyf am wneud yn llinynnau, 1403 01:03:39,410 --> 01:03:44,390 oherwydd bod cymeriadau a cyfanrifau gall gael ei gyfeirnodi yn yr un modd gan fod 1404 01:03:44,390 --> 01:03:45,540 o fapio ASCII. 1405 01:03:45,540 --> 01:03:52,890 >> Felly, i fynd yn ôl at eich pwynt, os wyf yn awyddus i roi yma yn lle 32 1406 01:03:52,890 --> 01:03:58,959 priflythrennau A minws llythrennau bach yn union fel hynny, a fyddai'n gweithio yr un mor dda, 1407 01:03:58,959 --> 01:04:01,750 oherwydd dyna yn syml dim ond y gwahaniaeth rhwng dau gwerthoedd hynny. 1408 01:04:01,750 --> 01:04:09,570 Os wyf am wneud hyn Charly again--. 1409 01:04:09,570 --> 01:04:10,320 O na. 1410 01:04:10,320 --> 01:04:11,820 Rwy'n credu ein bod yn mynd y ffordd anghywir, ie? 1411 01:04:11,820 --> 01:04:13,260 >> GYNULLEIDFA: [Anghlywadwy] llythrennau bach a. 1412 01:04:13,260 --> 01:04:14,260 >> Andi Peng: Dyna chi. 1413 01:04:14,260 --> 01:04:22,380 1414 01:04:22,380 --> 01:04:22,880 Yep. 1415 01:04:22,880 --> 01:04:24,920 Ac allan poeri Charly. 1416 01:04:24,920 --> 01:04:28,020 Felly byddwch yn ofalus wrth ydych yn tynnu gwerthoedd 1417 01:04:28,020 --> 01:04:30,400 i gofio pa un sy'n yn fwy na'r llall. 1418 01:04:30,400 --> 01:04:35,220 Er enghraifft, hyd yma yr wyf yn anghofio bod llythrennau bach mae mewn gwirionedd 1419 01:04:35,220 --> 01:04:38,540 fwy na A. priflythyren Felly, pan fyddaf ceisio tynnu nhw y ffordd arall 1420 01:04:38,540 --> 01:04:40,600 o gwmpas, Cawn negyddol 32. 1421 01:04:40,600 --> 01:04:42,800 A fy chyfrifiadur oedd fel, Nid wyf yn gwybod beth yw hynny. 1422 01:04:42,800 --> 01:04:45,810 Mae'n tebygolrwydd dim ond rhai ar hap gwerth sydd ddim yn dda iawn. 1423 01:04:45,810 --> 01:04:48,760 Ac felly gwnewch yn siŵr eich bod yn tynnu'r ar y darn cywir 1424 01:04:48,760 --> 01:04:52,831 i ddod o hyd cymeriad rydych ei eisiau. 1425 01:04:52,831 --> 01:04:53,330 IAWN. 1426 01:04:53,330 --> 01:04:58,550 A oes unrhyw un drysu ynglŷn â sut yr ydym Aeth am ysgrifennu swyddogaeth hon? 1427 01:04:58,550 --> 01:04:59,180 IAWN. 1428 01:04:59,180 --> 01:05:04,830 Felly mewn gwirionedd, swyddogaeth eisoes yn bodoli yn y llyfrgell a elwir ctype.h. 1429 01:05:04,830 --> 01:05:06,417 Gelwir ctype.h y llyfrgell. 1430 01:05:06,417 --> 01:05:08,500 Mae'r swyddogaeth hon mewn gwirionedd yn ysgrifennwyd eisoes ar eich cyfer chi. 1431 01:05:08,500 --> 01:05:10,820 Mae'n cael ei alw i uchaf. 1432 01:05:10,820 --> 01:05:13,027 >> Ac felly at ddibenion pset hon, rydych yn mynd 1433 01:05:13,027 --> 01:05:15,860 i ddod o hyd i chi a 'n sylweddol angen at arfer llawer o'r swyddogaethau a gynhwysir 1434 01:05:15,860 --> 01:05:17,390 o fewn y llyfrgell ctype. 1435 01:05:17,390 --> 01:05:21,040 I uchaf, i ostwng, yn uchaf, yn lower-- hynny holl swyddogaethau 1436 01:05:21,040 --> 01:05:24,914 y byddwch yn gallu defnyddio iawn, yn gyflym iawn yn eich cod hun sy'n 1437 01:05:24,914 --> 01:05:26,080 gwneud yn union beth y mae hyn yn ei wneud. 1438 01:05:26,080 --> 01:05:28,941 Ysgrifennom gwybod sut i drosi llinyn i priflythyren. 1439 01:05:28,941 --> 01:05:31,440 Ond mae hyn mewn gwirionedd y cod bod rhywun arall wedi ysgrifennu 1440 01:05:31,440 --> 01:05:33,800 ac y gallwch gael mynediad trwy swyddogaeth wahanol. 1441 01:05:33,800 --> 01:05:34,300 Yeah? 1442 01:05:34,300 --> 01:05:39,570 >> GYNULLEIDFA: Felly rydych jyst adysgrifia A i mewn 'na ac yn gwneud hynny ar gyfer pob un llythyr? 1443 01:05:39,570 --> 01:05:42,070 >> Andi Peng: Yeah, oherwydd nid wyf yn ei wneud poeni am werthoedd a. 1444 01:05:42,070 --> 01:05:44,540 Fi jyst poeni bod y gwahaniaeth rhyngddynt yn 32, dde? 1445 01:05:44,540 --> 01:05:48,210 Y gwahaniaeth rhwng llythrennau bach b a priflythyren B hefyd yn 32. 1446 01:05:48,210 --> 01:05:50,860 A'r gwahaniaeth rhwng c ac priflythyren C yw 32 bob amser. 1447 01:05:50,860 --> 01:05:53,235 >> Dim ond rhaid i mi ofalu am y gwahaniaeth rhwng y ddau, 1448 01:05:53,235 --> 01:05:56,666 gan fod yr holl o'r llythyrau yn dilyn yr un patrwm, dde? 1449 01:05:56,666 --> 01:05:58,540 Os byddaf yn cael y gwahaniaeth rhwng un ohonynt, 1450 01:05:58,540 --> 01:06:01,050 Yr wyf yn gwybod beth yw'r gwahaniaeth rhwng pob un ohonynt yn. 1451 01:06:01,050 --> 01:06:01,740 Cwestiwn da. 1452 01:06:01,740 --> 01:06:04,090 Yeah. 1453 01:06:04,090 --> 01:06:06,660 Mae pawb yn dda? 1454 01:06:06,660 --> 01:06:09,080 IAWN. 1455 01:06:09,080 --> 01:06:09,580 OOP. 1456 01:06:09,580 --> 01:06:14,380 1457 01:06:14,380 --> 01:06:15,270 >> IAWN. 1458 01:06:15,270 --> 01:06:20,310 Felly cysyniad arall sy'n mynd i fod yn ddefnyddiol iawn wrth i chi 1459 01:06:20,310 --> 01:06:22,570 parhau i ddatblygu eich cod yn syniad yma 1460 01:06:22,570 --> 01:06:25,430 o greu swyddogaethau neu dynnu. 1461 01:06:25,430 --> 01:06:28,479 Felly ar hyn o bryd, yr ydym i gyd wedi cymryd algebra. 1462 01:06:28,479 --> 01:06:31,770 Yn algebra, rydych yn cael eu dysgu bod yna y peth gwych a elwir yn swyddogaeth 1463 01:06:31,770 --> 01:06:35,300 peiriant, lle os ydych yn mewnbwn un math o rif, 1464 01:06:35,300 --> 01:06:38,720 mae'n rhedeg trwy'r swyddogaeth gwych ac allan pops allbwn gwahanol, dde? 1465 01:06:38,720 --> 01:06:42,220 Yn cod, yr un peth yn digwydd mewn unrhyw fath o swyddogaeth. 1466 01:06:42,220 --> 01:06:48,230 >> Felly, gallwn yn gorfforol ysgrifennu yn fy nghorff fy cod 1467 01:06:48,230 --> 01:06:52,357 prif ddatganiad sy'n gwneud mewn gwirionedd beth bynnag y corff y cod yn ei wneud. 1468 01:06:52,357 --> 01:06:54,940 Ond y tu allan o hynny, gallaf hefyd ysgrifennu nifer o wahanol swyddogaethau 1469 01:06:54,940 --> 01:06:56,320 bod yn gwneud llawer o bethau gwahanol. 1470 01:06:56,320 --> 01:06:58,570 Er enghraifft, rydym wedi eisoes dechrau defnyddio rhai ohonynt. 1471 01:06:58,570 --> 01:07:00,610 Printf-- hynny yn swyddogaeth sy'n rywun arall 1472 01:07:00,610 --> 01:07:02,870 eisoes wedi ysgrifennu bod gallwn alw yn ein cod. 1473 01:07:02,870 --> 01:07:05,410 I upper-- yn yr achos hwn, upper-- yw swyddogaeth arall 1474 01:07:05,410 --> 01:07:07,330 rydym wedi ysgrifennu ein bod yn Gall alw yn ein cod. 1475 01:07:07,330 --> 01:07:09,520 Ac felly yr wyf yn dyfalu pam mae rydym hyd yn oed wedi swyddogaethau? 1476 01:07:09,520 --> 01:07:12,100 Pam nad ydym yn unig sw n plopian ei i gyd yn yr un llinell o god? 1477 01:07:12,100 --> 01:07:13,730 Mae'n ei gwneud yn hawdd i bawb. 1478 01:07:13,730 --> 01:07:19,200 >> Wel, y rhesymeg y tu ôl i hynny yw, yn gyntaf oll, sefydliad. 1479 01:07:19,200 --> 01:07:21,880 Mae'n wirioneddol yn blino yn mynd drwy god rhywun 1480 01:07:21,880 --> 01:07:25,110 ac un swyddogaeth fel printf. 1481 01:07:25,110 --> 01:07:28,570 Os ydych yn guys mewn gwirionedd yn gwybod beth oedd y printf swyddogaeth yn golygu ysgrifennu, 1482 01:07:28,570 --> 01:07:30,530 'i', fel, 1,000 o linellau o god. 1483 01:07:30,530 --> 01:07:32,357 >> Os bob tro roeddwn i eisiau i printf rhywbeth, 1484 01:07:32,357 --> 01:07:35,440 Roedd rhaid i mi ysgrifennu 1,000 o linellau o god, a fyddai'n wirioneddol yn blino ei ddarllen, 1485 01:07:35,440 --> 01:07:36,290 iawn? 1486 01:07:36,290 --> 01:07:38,860 Dyna pam rydym wedi dim ond Crëwyd y swyddogaeth haniaethol 1487 01:07:38,860 --> 01:07:41,670 bod gennym eisoes rywun arall wedi ysgrifennu yn rhywle arall. 1488 01:07:41,670 --> 01:07:44,920 A phob tro mae angen i ni ddefnyddio mewn ein cod, rydym yn unig rhaid i ni ddweud printf. 1489 01:07:44,920 --> 01:07:48,070 A bod yn gallu defnyddio'r swyddogaeth rhywun arall wedi ysgrifennu yn ein cod. 1490 01:07:48,070 --> 01:07:51,020 Mae'n ei gwneud yn haws organizationally i ddarllen cod. 1491 01:07:51,020 --> 01:07:53,460 >> Yn ail, mae'n symleiddio. 1492 01:07:53,460 --> 01:07:56,750 Mae'n symleiddio'r camau sydd gennym eu cymryd i ddatrys ein problem. 1493 01:07:56,750 --> 01:07:59,300 Printf, swyddogaethau fel printf, swyddogaethau hoffi uchaf 1494 01:07:59,300 --> 01:08:03,560 i gyd yn bethau sy'n ein caniatáu i symleiddio ein cod lawr felly mae'n haws. 1495 01:08:03,560 --> 01:08:05,830 Ac peth olaf yn reusability. 1496 01:08:05,830 --> 01:08:08,710 >> Felly mae'r ffaith fod gennym swyddogaeth o'r enw printf 1497 01:08:08,710 --> 01:08:11,990 y gallwn alw llawer o wahanol amserau ac yn caniatáu iddo fod yn y gellir eu hailddefnyddio. 1498 01:08:11,990 --> 01:08:14,980 Pe bawn yn ysgrifennu printf, Dim ond yn ysgrifennu unwaith. 1499 01:08:14,980 --> 01:08:16,439 Mae'n bodoli yn unig mewn un lle. 1500 01:08:16,439 --> 01:08:19,890 Os oeddwn i eisiau ei wneud eto, fyddwn i rhaid i gopïo a gludo hynny i gyd 1501 01:08:19,890 --> 01:08:21,760 i mewn i fy ail linell o god. 1502 01:08:21,760 --> 01:08:24,880 Dyna pam os ydym yn creu swyddogaeth sy'n bodoli y tu allan i'n prif, 1503 01:08:24,880 --> 01:08:26,880 gallwn jyst alw ar ac ailddefnyddio pryd bynnag 1504 01:08:26,880 --> 01:08:29,604 mae arnom angen fel ei bod yn llawer haws i ni fel rhaglenni i ysgrifennu. 1505 01:08:29,604 --> 01:08:32,220 1506 01:08:32,220 --> 01:08:35,549 >> Felly, y ffordd y byddem mewn gwirionedd yn ysgrifennu swyddogaeth yn debyg iawn, dde? 1507 01:08:35,549 --> 01:08:37,590 Mae hyn yn fath o'r cyntaf enghraifft yr ydym chi helpu 1508 01:08:37,590 --> 01:08:42,830 gweld swyddogaeth cymryd ar arddull yn wahanol nag y mae ein prif ddi-rym int. 1509 01:08:42,830 --> 01:08:46,779 Yn yr achos hwn, os oeddwn i eisiau ysgrifennu swyddogaeth o'r enw q, dde? 1510 01:08:46,779 --> 01:08:49,370 >> Ac mae'r gwerth int yma i gyd yn dweud wrthyf, 1511 01:08:49,370 --> 01:08:51,649 beth ddylwn i ei eisiau hyn swyddogaeth i ddychwelyd i mi? 1512 01:08:51,649 --> 01:08:54,484 Os ydw i eisiau yn giwbiau yn gyfanrif, Rydw i'n mynd i fod eisiau mewnbwn. 1513 01:08:54,484 --> 01:08:55,525 Mae'r rhain yn y paramedrau. 1514 01:08:55,525 --> 01:08:58,490 Rydw i'n mynd i mewnbynnau gwerth o fath int. 1515 01:08:58,490 --> 01:09:01,300 Ac yr wyf i'n mynd i ddychwelyd Gwerth math arall o int. 1516 01:09:01,300 --> 01:09:03,050 Ac yn fan hyn, fel yr ydych Gall weld, pob rydw i'n ei wneud 1517 01:09:03,050 --> 01:09:07,300 yn cubing beth bynnag fy mewnbwn yn fel fy cynnyrch a'i ddychwelyd. 1518 01:09:07,300 --> 01:09:10,790 >> Felly, i gyd swyddogaeth hon yn cael ei yn cymryd rhyw fath o gyfanrif. 1519 01:09:10,790 --> 01:09:14,979 Mae'n lluosi ei ben ei hun ddwywaith fel ei fod yn ciwbiau i bob pwrpas. 1520 01:09:14,979 --> 01:09:17,729 Ac yna mae'n dychwelyd beth bynnag y cynnyrch yn. 1521 01:09:17,729 --> 01:09:20,540 Felly, yn yr achos hwn, mae'n dwy linell o cod sy'n bu'n rhaid i ni ysgrifennu ychwanegol. 1522 01:09:20,540 --> 01:09:22,880 Ond os ydym yn awyddus i alw ar hyn sawl gwaith, 1523 01:09:22,880 --> 01:09:26,210 mae'n llawer haws i deipio bod un llinell yma mae hynny'n mewn ciwb na 1524 01:09:26,210 --> 01:09:28,830 rhaid i chi fynd drwy sawl gwaith. 1525 01:09:28,830 --> 01:09:34,180 >> Felly, y ffordd y mae hanfod yn golygu unrhyw fformatio ar gyfer unrhyw fath o swyddogaeth 1526 01:09:34,180 --> 01:09:36,420 yn mynd i fodoli yn debyg fan hyn. 1527 01:09:36,420 --> 01:09:38,659 Felly, rydym wedi yr enw swyddogaeth. 1528 01:09:38,659 --> 01:09:39,950 Yn yr achos hwn, fe'i gelwir ciwb. 1529 01:09:39,950 --> 01:09:42,033 Ac rydym yn ei enw ciwb oherwydd mae'n hawdd i'w gofio. 1530 01:09:42,033 --> 01:09:44,220 Gallwch ei enw cysoni a gall fod mewn gwirionedd yn cael ei torri'n giwbiau. 1531 01:09:44,220 --> 01:09:45,500 Nid yw'n fater. 1532 01:09:45,500 --> 01:09:48,020 Dim ond enw eich bod yn aseinio eich swyddogaeth. 1533 01:09:48,020 --> 01:09:51,660 >> Mae'r hawl yma, int, yw'r math y paramedr ei angen arnoch. 1534 01:09:51,660 --> 01:09:54,149 Felly beth mae swyddogaeth hon angen er mwyn gweithredu? 1535 01:09:54,149 --> 01:09:55,990 Wel, mae angen mewnbwn. 1536 01:09:55,990 --> 01:09:56,704 Yr wyf yn enwi ei mewnbwn. 1537 01:09:56,704 --> 01:09:58,120 Gallwch ei enw beth bynnag y dymunwch. 1538 01:09:58,120 --> 01:10:00,500 Ond mae angen rhywbeth o'r math int wyf. 1539 01:10:00,500 --> 01:10:03,730 Mae'n mynd i weithredu mewn gwirionedd beth bynnag sydd tu mewn yma, 1540 01:10:03,730 --> 01:10:04,990 corff y swyddogaeth. 1541 01:10:04,990 --> 01:10:07,847 Ac yna y math dychwelyd i'r dde yma, int-- hon 1542 01:10:07,847 --> 01:10:09,680 i gyd mae'n dweud wrthyf ei swyddogaeth honno hwn 1543 01:10:09,680 --> 01:10:11,250 mynd i ddychwelyd i mi yn int. 1544 01:10:11,250 --> 01:10:14,460 Felly, mae'n mynd i gymryd mewn int, ac mae'n mynd i roi i chi yn ôl yn int. 1545 01:10:14,460 --> 01:10:17,750 Ydy pawb yn deall sut mae'r fformatio o'r math hyn yn gweithio? 1546 01:10:17,750 --> 01:10:18,250 Cool. 1547 01:10:18,250 --> 01:10:24,690 1548 01:10:24,690 --> 01:10:25,740 >> IAWN. 1549 01:10:25,740 --> 01:10:31,770 Felly peidiwch â gofidio os yw hyn yn ymddangos yn ychydig o hawl haniaethol yn awr. 1550 01:10:31,770 --> 01:10:33,450 Mae hyn yn rhywbeth y byddwn yn siarad am. 1551 01:10:33,450 --> 01:10:36,310 Byddwn yn plymio yn ddyfnach yn nes ymlaen yn y cwrs. 1552 01:10:36,310 --> 01:10:41,170 Mae'r ffordd y bydd unrhyw fath o lefel uwch tynnu dŵr o'r pethau hyn waith 1553 01:10:41,170 --> 01:10:43,530 yw bod, er cof, yn eich cyfrifiadur, popeth 1554 01:10:43,530 --> 01:10:47,660 yn cael ei storio yn y math hwn o simnai, rhaid i mi ddweud. 1555 01:10:47,660 --> 01:10:49,070 >> Felly, i fyny yno ar y brig. 1556 01:10:49,070 --> 01:10:50,861 Nid wyf yn gwybod os ydych yn Gall guys weld bod yn dda. 1557 01:10:50,861 --> 01:10:52,590 Byddaf yn ceisio chwyddo i mewn. 1558 01:10:52,590 --> 01:10:55,111 Yma ar y brig, rydym yn yn cael y testun corfforol 1559 01:10:55,111 --> 01:10:57,860 o'r hyn y mae'r cyfrifiadur yn interpreting-- yr holl seroau a rhai sy'n 1560 01:10:57,860 --> 01:10:59,540 yn bodoli o fewn ein cyfrifiadur. 1561 01:10:59,540 --> 01:11:03,390 Ac yna rydym yn cael y initialized data data a uninitialized, 1562 01:11:03,390 --> 01:11:05,340 yr hyn a alwn newidynnau byd-eang. 1563 01:11:05,340 --> 01:11:08,200 Felly newidynnau sy'n bodoli ar draws yr holl raglenni 1564 01:11:08,200 --> 01:11:11,815 ac ar draws eich cyfan, yn y bôn, cod. 1565 01:11:11,815 --> 01:11:13,940 Dim pryderon os ydych guys yn math o aneglur ar hyn. 1566 01:11:13,940 --> 01:11:16,060 Nid oes llawer o ots ar hyn o bryd. 1567 01:11:16,060 --> 01:11:18,680 >> Ac yna mae gennym yr hyn sydd Gelwir domen mewn pentwr. 1568 01:11:18,680 --> 01:11:21,140 Meddyliwch am pentwr llythrennol fel yn union fel pentwr o bethau, 1569 01:11:21,140 --> 01:11:23,098 pentwr o wahanol pethau sy'n cael eu gwthio ar ei ben 1570 01:11:23,098 --> 01:11:27,870 o'i gilydd sy'n storio y gwahanol newidynnau a chystrawen yn eich cod. 1571 01:11:27,870 --> 01:11:31,460 Ac yna yma yn y gwaelod un, mae gennym y newidynnau amgylchedd 1572 01:11:31,460 --> 01:11:35,480 o'r hyn yr ydych yn gweithredu o fewn dim ond eich llinell bach o god. 1573 01:11:35,480 --> 01:11:40,510 >> Ac rydym yn jyst yn mynd i chwyddo mewn ar y gwir ran pentwr. 1574 01:11:40,510 --> 01:11:43,880 Felly dde yma, pe baem yn chwyddo mewn ar ddim ond yr ardal hon o'r pentwr, 1575 01:11:43,880 --> 01:11:45,140 dyma sut mae'n edrych. 1576 01:11:45,140 --> 01:11:48,590 Ac mae hyn yn mewn gwirionedd yn eithaf pwysig pan fyddwch yn guys yn siarad am swyddogaethau, 1577 01:11:48,590 --> 01:11:52,330 gan fod rhybudd bod y cof am eich cyfrifiadur 1578 01:11:52,330 --> 01:11:55,600 yn storio'r newidynnau a swyddogaethau 1579 01:11:55,600 --> 01:11:58,790 a pharamedrau'r ddau o'ch swyddogaeth ac eich prif newidynnau 1580 01:11:58,790 --> 01:12:00,190 mewn gwahanol leoedd. 1581 01:12:00,190 --> 01:12:03,390 >> Felly ar hyn o bryd, prif yw y swyddogaeth gwirioneddol 1582 01:12:03,390 --> 01:12:04,780 eich bod yn gweithredu mewn cod. 1583 01:12:04,780 --> 01:12:08,050 Rydych wedi ei paramedrau storio yma ac mae ei newidynnau lleol ei storio yma. 1584 01:12:08,050 --> 01:12:12,270 Newidyn lleol yn unig yw unrhyw newidyn sy'n bodoli yn unig o fewn y swyddogaeth honno. 1585 01:12:12,270 --> 01:12:15,610 Ac ar ben hynny, mae gennych hyn swyddogaeth ar wahân o'r enw ciwb. 1586 01:12:15,610 --> 01:12:18,240 Mae gennych dyna paramedrau yn ogystal â phobl leol hynny. 1587 01:12:18,240 --> 01:12:21,540 >> A'r rheswm y gallwch gweld yma yw bod yr hyn 1588 01:12:21,540 --> 01:12:25,030 digwydd pan ciwb yn cymryd mewn gwerth o'ch prif swyddogaeth 1589 01:12:25,030 --> 01:12:27,640 yw ei fod mewn gwirionedd mae'n copïo hynny drosodd. 1590 01:12:27,640 --> 01:12:31,470 Felly, os wyf yn awyddus i ciwb 2 ac yn dychwelyd 8, bod 2 1591 01:12:31,470 --> 01:12:33,730 yn cael ei fewnbynnu mewn gwirionedd fel paramedr ac mae'n 1592 01:12:33,730 --> 01:12:37,690 copïo drosodd fel bod gennych ei presennol mewn dau le gwahanol yn y cof. 1593 01:12:37,690 --> 01:12:40,520 A rhaid i chi fod yn ofalus iawn ar gofio pa un o'r rhai 1594 01:12:40,520 --> 01:12:42,520 eich bod yn trin mewn gwirionedd. 1595 01:12:42,520 --> 01:12:47,170 Ac yn enghraifft o'r hyn a ddigwyddodd byddai hynny'n iawn, yn ddrwg iawn 1596 01:12:47,170 --> 01:12:48,050 yn bodoli yma. 1597 01:12:48,050 --> 01:12:50,760 1598 01:12:50,760 --> 01:12:58,650 >> Felly dde yma, yr wyf wedi cael, mewn theori, rhaglen dde yma, prif swyddogaeth 1599 01:12:58,650 --> 01:13:02,180 fy mod yn datgan int x yn hafal i 1. 1600 01:13:02,180 --> 01:13:04,505 Im 'yn datgan y int arall hafal 2. 1601 01:13:04,505 --> 01:13:06,380 Ac yna i ddim yn rhedeg drwy'r swyddogaeth hon 1602 01:13:06,380 --> 01:13:09,647 Gelwir cyfnewid, lle yr wyf yn cymryd yn ganiataol bod mae'n gyfnewid y ddau werth. 1603 01:13:09,647 --> 01:13:11,480 Ac yna dwi'n mynd i eu hargraffu, dde? 1604 01:13:11,480 --> 01:13:13,220 Dyna beth yr wyf am y rhaglen hon ei wneud. 1605 01:13:13,220 --> 01:13:15,180 >> Felly gadewch i ni ddod i lawr i gael golwg. 1606 01:13:15,180 --> 01:13:18,200 Felly os wyf mewn gwirionedd yn ysgrifennu gwahanol swyddogaeth, fel y gwelwch, 1607 01:13:18,200 --> 01:13:19,750 yr ydym wedi ein prif swyddogaeth yma. 1608 01:13:19,750 --> 01:13:22,860 Ac yna rydym wedi ein ail swyddogaeth yma. 1609 01:13:22,860 --> 01:13:24,520 Cyfnewid ddi-rym. 1610 01:13:24,520 --> 01:13:27,090 Void yn unig yn golygu ei fod yn Nid yw mynd i ddychwelyd unrhyw beth. 1611 01:13:27,090 --> 01:13:28,930 Yr enw swyddogaeth yw Gelwir cyfnewid, ac mae'n 1612 01:13:28,930 --> 01:13:33,730 mynd i ddau newidyn cymeriant, int a a int b, o'ch [Anghlywadwy] swyddogaeth. 1613 01:13:33,730 --> 01:13:39,010 >> Felly y bôn i mewn yma, rydym yn pasio x ac y yn y swyddogaeth hon. 1614 01:13:39,010 --> 01:13:40,760 Ac pe baem yn creu this-- felly yr ydym am 1615 01:13:40,760 --> 01:13:42,420 i greu gwerth dros dro, dde? 1616 01:13:42,420 --> 01:13:43,930 Rydym yn mynd i aseinio hynny i. 1617 01:13:43,930 --> 01:13:45,388 Ac yna mae yn mynd i nawr yn gyfartal b. 1618 01:13:45,388 --> 01:13:47,660 A b yn mynd i fod yn ôl lle mae gwerth temp oedd, 1619 01:13:47,660 --> 01:13:51,070 sydd yn, oherwydd pan ydych am gyfnewid pethau, 1620 01:13:51,070 --> 01:13:52,320 nid ydych yn gallu eu hoffi cyfnewid. 1621 01:13:52,320 --> 01:13:54,360 >> Mae'n rhaid i chi gadw un allan yma fel ei fod yn cofio 1622 01:13:54,360 --> 01:13:56,485 beth yw hwnnw, oherwydd unwaith byddwch yn cyfnewid un, byddwch yn anghofio 1623 01:13:56,485 --> 01:13:58,200 yr hyn sy'n werth gwreiddiol oedd, dde? 1624 01:13:58,200 --> 01:14:00,990 Felly mewn theori, y rhaglen hon Dylai weithio, dde? 1625 01:14:00,990 --> 01:14:03,630 Os wyf yn awyddus i gyfnewid y dau, dylent cyfnewid. 1626 01:14:03,630 --> 01:14:05,490 Felly gadewch i redeg a gweld os mae'n gweithio. 1627 01:14:05,490 --> 01:14:11,130 1628 01:14:11,130 --> 01:14:16,940 >> Felly, fel y gallwch weld guys, x oedd unwaith yn 1 a oedd unwaith y 2. 1629 01:14:16,940 --> 01:14:21,475 Ac os wyf yn ei hargraffu, x yn dal i fod 1 ac y yw 2. 1630 01:14:21,475 --> 01:14:25,970 Hmm, nid yw'n ymddangos bod y rhaglen hon i fod yn gweithio y ffordd yr wyf am iddi weithio. 1631 01:14:25,970 --> 01:14:29,950 A oes unrhyw un eisiau cymryd ergyd yn dyfalu pam fod hyn yn digwydd? 1632 01:14:29,950 --> 01:14:34,430 Mae'n rhaid iddo wneud â'r ffordd fod pethau gwahanol yn 1633 01:14:34,430 --> 01:14:38,172 storio mewn gwahanol lefydd yn y cof. 1634 01:14:38,172 --> 01:14:39,377 >> IAWN. 1635 01:14:39,377 --> 01:14:41,960 Felly nid oes rhaid i chi guys i boeni gormod am hyn ar hyn o bryd. 1636 01:14:41,960 --> 01:14:46,610 Ond yn gwybod bod ciwb yn lleol newidynnau Roedd aab, 1637 01:14:46,610 --> 01:14:49,230 oherwydd yma yn ein swyddogaeth, rydym wedi datgan a b 1638 01:14:49,230 --> 01:14:53,570 gan fod y newidynnau sy'n bodoli o fewn ciwb, y swyddogaeth honno. 1639 01:14:53,570 --> 01:14:59,490 Ond fel y gwelwch, y paramedrau sy'n mae'n cymryd yn cael eu cadw yma. 1640 01:14:59,490 --> 01:15:01,370 Ond nid ydym mewn gwirionedd dychwelyd unrhyw beth. 1641 01:15:01,370 --> 01:15:03,120 Nid ydym mewn gwirionedd yn newid x ac y. 1642 01:15:03,120 --> 01:15:04,440 Roeddem yn unig sy'n newid a b. 1643 01:15:04,440 --> 01:15:08,340 >> Roedden ni wedi copïo x ac y yn rhywbeth a elwir yn a b. 1644 01:15:08,340 --> 01:15:11,092 Ond ni fyddwn byth mewn gwirionedd trin x ac y eu hunain. 1645 01:15:11,092 --> 01:15:12,800 A ydych yn guys yn gweld sut mae hynny'n digwydd? 1646 01:15:12,800 --> 01:15:16,140 Yw ein bod wedi copïo yn syml drosodd, ond nid ydym wedi cadw mewn gwirionedd 1647 01:15:16,140 --> 01:15:18,030 trac ble y maent yn eu cof. 1648 01:15:18,030 --> 01:15:20,127 >> Ac felly yn awr y cyfrifiadur yn edrych, oh, dwi wedi 1649 01:15:20,127 --> 01:15:21,960 rhedeg y peth hyn drwy swyddogaeth hyfryd hwn. 1650 01:15:21,960 --> 01:15:23,690 Ond x ac y yn dal i fod x ac y. 1651 01:15:23,690 --> 01:15:26,240 Nid oes unrhyw beth wedi digwydd i hwy oherwydd y ffaith 1652 01:15:26,240 --> 01:15:28,340 bod y paramedrau hynny a newidynnau lleol 1653 01:15:28,340 --> 01:15:30,150 yn cael eu storio mewn gwahanol rhoi mewn cof. 1654 01:15:30,150 --> 01:15:32,030 Ac mae hyn yn lefel uwch- cysyniad yr ydym chi helpu 1655 01:15:32,030 --> 01:15:34,300 yn dechrau gweld yn nes ymlaen yn y cwrs. 1656 01:15:34,300 --> 01:15:36,950 Ond dim ond yn gwybod bod hyn yn problem a all ddigwydd 1657 01:15:36,950 --> 01:15:41,400 ac y byddwn yn chyfrif i maes ffyrdd ar sut i ymdrin â hyn yn nes ymlaen yn y cwrs. 1658 01:15:41,400 --> 01:15:41,900 IAWN. 1659 01:15:41,900 --> 01:15:47,750 1660 01:15:47,750 --> 01:15:48,250 Iawn. 1661 01:15:48,250 --> 01:15:51,780 Felly, y cysyniad diwethaf rydym yn wir yn mynd i dalu am 1662 01:15:51,780 --> 01:15:53,880 mae hynny'n mynd i fod yn ddefnyddiol ar gyfer yr pset yr wythnos hon 1663 01:15:53,880 --> 01:15:56,060 yn hyn a elwir yn dadleuon llinell orchymyn. 1664 01:15:56,060 --> 01:16:00,820 Felly Rob yn ei ddarlith yn mynd trwy fath o fyr ar sut mae'r rhain yn gweithio. 1665 01:16:00,820 --> 01:16:02,770 Gwybod y bôn bod pan fyddwch yn ysgrifennu 1666 01:16:02,770 --> 01:16:06,280 fel prif swyddogaeth, pan fyddwn yn Ysgrifennodd swyddogaethau o'r blaen yn y gorffennol, 1667 01:16:06,280 --> 01:16:07,804 oedd gennym brif ddi-rym int. 1668 01:16:07,804 --> 01:16:10,470 A'r rheswm oedd gennym yn ddi-rym yno oedd oherwydd nid yw ein rhaglenni wnaeth 1669 01:16:10,470 --> 01:16:12,520 Mae angen i werthoedd mewnbwn i redeg, dde? 1670 01:16:12,520 --> 01:16:16,020 Pan fyddaf yn rhedeg Mario, doeddwn i ddim yn angen i mewn gwirionedd jyst deipio i mewn rhywbeth 1671 01:16:16,020 --> 01:16:16,970 pan fyddaf yn rhedeg Mario. 1672 01:16:16,970 --> 01:16:20,170 Gallwn i annog y defnyddiwr yn nes ymlaen. 1673 01:16:20,170 --> 01:16:22,450 Ond ni fydd bob amser yn wir. 1674 01:16:22,450 --> 01:16:24,980 >> Er enghraifft, yn hyn problem yr wythnos yn gosod, 1675 01:16:24,980 --> 01:16:28,365 ydych yn mynd i gael eu gofyn i, yn ogystal â rhedeg eich rhaglen, 1676 01:16:28,365 --> 01:16:30,990 ydych yn mynd i eisiau mewnbwn rhai pethau yn syth wrth i chi 1677 01:16:30,990 --> 01:16:32,050 rhedeg eich rhaglen. 1678 01:16:32,050 --> 01:16:34,720 Felly, gelwir y ffordd yr ydym yn gwneud hynny dadl llinell orchymyn, a oedd yn 1679 01:16:34,720 --> 01:16:37,280 yn debyg i ddadl gallwch mewnbwn uniongyrchol 1680 01:16:37,280 --> 01:16:39,260 fel yr ydych yn ceisio i redeg eich rhaglen. 1681 01:16:39,260 --> 01:16:44,680 >> Felly y nodiant ar gyfer hyn, mae'n eithaf cymhleth-edrych, 1682 01:16:44,680 --> 01:16:47,320 ond nid yw'n wir bod anodd. Felly int main-- 1683 01:16:47,320 --> 01:16:48,910 bod yn unig eich prif swyddogaeth. 1684 01:16:48,910 --> 01:16:52,110 Into coma argc cromfachau argv llinyn. 1685 01:16:52,110 --> 01:16:56,040 Felly cyfan sydd ei ddweud yw bod hwn int argc-- cyfan sydd ei ddweud wrthych 1686 01:16:56,040 --> 01:17:00,560 yw bod y rhai yn y nifer o dadleuon y dylai'r cyfrifiadur ddisgwyl. 1687 01:17:00,560 --> 01:17:03,130 >> Felly, un peth sy'n wir bwysig i gadw golwg ar 1688 01:17:03,130 --> 01:17:07,080 yw enw ffisegol eich rhaglen yn cyfrif fel un o'r dadleuon hynny. 1689 01:17:07,080 --> 01:17:11,080 Felly, os wyf yn awyddus i gael fy rhaglen rhedeg ynghyd ag un llinell gorchymyn ychwanegol 1690 01:17:11,080 --> 01:17:13,310 dadl, rwy'n mewn gwirionedd mynd i gael dau. 1691 01:17:13,310 --> 01:17:15,080 Mewn gwirionedd Argc mynd i fod yn ddau. 1692 01:17:15,080 --> 01:17:18,010 Ac yna argv llinyn bracket-- cyfan sydd ei wneud, 1693 01:17:18,010 --> 01:17:20,410 mae'n rhoi i mi yn amrywiaeth o dannau dyna 1694 01:17:20,410 --> 01:17:24,870 mynd i jyst arddangos a storio beth yr holl ddadleuon llinell gorchymyn hynny. 1695 01:17:24,870 --> 01:17:34,090 >> Felly, er enghraifft, os wyf am gael hyn rhaglen, ./copy infile outfile, dde? 1696 01:17:34,090 --> 01:17:37,330 Dyna dim ond gorchymyn Linux nodweddiadol. 1697 01:17:37,330 --> 01:17:38,830 Beth yn union yw argc? 1698 01:17:38,830 --> 01:17:41,320 Faint o ddadleuon llinell orchymyn a oes gwirionedd yn hyn? 1699 01:17:41,320 --> 01:17:45,130 Mae hyn i gyd ei wneud yw sicrhau bod copi o'r yn infile o enw un ffeil 1700 01:17:45,130 --> 01:17:47,070 ac mae'n gopïau i mewn ffeil arall, dde? 1701 01:17:47,070 --> 01:17:48,700 Dyna'r hyn i gyd yn ei wneud. 1702 01:17:48,700 --> 01:17:53,080 Fel y gallwch weld, rwy'n ei wneud ar un llinell heb fod angen y rhaglen mewn gwirionedd. 1703 01:17:53,080 --> 01:17:55,380 >> Beth yw ein argc yn yr achos hwn? 1704 01:17:55,380 --> 01:17:58,968 Faint o ddadleuon sydd gennym? 1705 01:17:58,968 --> 01:17:59,634 GYNULLEIDFA: Tair? 1706 01:17:59,634 --> 01:18:01,200 Andi Peng: Mae gennym dri, yn union. 1707 01:18:01,200 --> 01:18:05,030 Felly mae'n iawn 'n athrylithgar i jyst yn meddwl ei fod yn unig 1708 01:18:05,030 --> 01:18:06,290 y infile a'r outfile. 1709 01:18:06,290 --> 01:18:10,190 Ond yn gwybod bod yr enw ffisegol y rhaglen ydych yn rhedeg yn cyfrif fel un. 1710 01:18:10,190 --> 01:18:13,220 Felly, yn yr achos hwn, argc mewn gwirionedd tri. 1711 01:18:13,220 --> 01:18:15,860 Beth am, beth yw argv 0? 1712 01:18:15,860 --> 01:18:18,180 Cofiwch, pob un o'r dadleuon llinell orchymyn 1713 01:18:18,180 --> 01:18:20,500 eu storio mewn amrywiaeth o dannau. 1714 01:18:20,500 --> 01:18:24,140 Felly, os wyf yn ceisio i gael mynediad ato, beth Byddai argv braced 0 roi i mi? 1715 01:18:24,140 --> 01:18:25,364 >> GYNULLEIDFA: [Anghlywadwy]. 1716 01:18:25,364 --> 01:18:26,155 Andi Peng: Yn union. 1717 01:18:26,155 --> 01:18:28,550 Byddai'n rhoi'r dot i mi slaes copi, oherwydd dyna 1718 01:18:28,550 --> 01:18:31,070 yr elfen 0fed, mae'r elfen gyntaf fy arae. 1719 01:18:31,070 --> 01:18:33,236 Beth am argv 1? 1720 01:18:33,236 --> 01:18:33,945 >> GYNULLEIDFA: Infile. 1721 01:18:33,945 --> 01:18:35,070 Andi Peng: Infile, yn union. 1722 01:18:35,070 --> 01:18:36,272 Beth am argv 2? 1723 01:18:36,272 --> 01:18:37,022 GYNULLEIDFA: Outfile. 1724 01:18:37,022 --> 01:18:38,190 Andi Peng: Outfile. 1725 01:18:38,190 --> 01:18:39,290 Mae hwn yn ychydig yn anodd yn awr. 1726 01:18:39,290 --> 01:18:42,630 Beth ydych chi'n guys meddwl argv 3 yn mynd i gael ei roi i mi 1727 01:18:42,630 --> 01:18:45,522 os wyf yn ceisio print that allan? 1728 01:18:45,522 --> 01:18:48,260 >> GYNULLEIDFA: [Anghlywadwy]? 1729 01:18:48,260 --> 01:18:50,164 >> Andi Peng: A oedd gennych llaw i fyny? 1730 01:18:50,164 --> 01:18:50,663 Yeah. 1731 01:18:50,663 --> 01:18:51,550 >> GYNULLEIDFA: Dewis arall. 1732 01:18:51,550 --> 01:18:52,341 >> Andi Peng: Yn union. 1733 01:18:52,341 --> 01:18:55,440 Felly cofiwch mewn darlith i ni fod ag o ddiwedd rhywbeth hil 1734 01:18:55,440 --> 01:18:56,640 a elwir yn terminator null? 1735 01:18:56,640 --> 01:18:58,890 Byddwn yn mynd i mewn i hyn hefyd ymhellach ymlaen yn y dosbarth. 1736 01:18:58,890 --> 01:19:02,472 Ond yn gwybod bod mewn nodiant, y ffordd y mae eich cyfrifiadur 1737 01:19:02,472 --> 01:19:04,430 yn gwybod ei fod yn y pen y rhesi yw ei fod yn 1738 01:19:04,430 --> 01:19:07,310 rhoi rhywbeth a elwir yn null terminator neu diferyn sero. 1739 01:19:07,310 --> 01:19:12,047 >> Felly, os ydych yn ceisio cael mynediad argv 3, ydych yn mynd i daro dash hwn 0. 1740 01:19:12,047 --> 01:19:13,630 Mae hyn yn oed yn fwy o gwestiwn tric. 1741 01:19:13,630 --> 01:19:17,020 Beth am argv 4? 1742 01:19:17,020 --> 01:19:20,920 Felly mae hyn yn terminator null gorffennol, heibio i derfynau ein arae. 1743 01:19:20,920 --> 01:19:24,380 Beth yn eich barn chi yn mynd i yn digwydd pan fyddwn yn ceisio gwneud hynny? 1744 01:19:24,380 --> 01:19:25,842 >> GYNULLEIDFA: [Anghlywadwy]? 1745 01:19:25,842 --> 01:19:26,550 Andi Peng: Mae'n ddrwg gennyf? 1746 01:19:26,550 --> 01:19:28,025 Dywedwch fod ychydig yn uwch? 1747 01:19:28,025 --> 01:19:29,086 >> GYNULLEIDFA: [Anghlywadwy]. 1748 01:19:29,086 --> 01:19:29,710 Andi Peng: Ydw. 1749 01:19:29,710 --> 01:19:32,420 Dyna enw'r ardal y byddwch yn fwyaf tebygol o gael. 1750 01:19:32,420 --> 01:19:36,610 Ond yn gwybod bod argv 4-- sy'n eich galluogi i gael mynediad 1751 01:19:36,610 --> 01:19:38,610 lleoedd yn eich cyfrifiadur cof bod chi wir 1752 01:19:38,610 --> 01:19:41,650 Ni ddylai fod yn cyffwrdd, gan fod ar hyn o bryd eich bod yn gwybod pa argv yn. 1753 01:19:41,650 --> 01:19:46,220 Rydych yn gwybod ei fod yn amrywiaeth o faint 3 sydd â chopi dot, infile a outfile. 1754 01:19:46,220 --> 01:19:50,200 >> Os byddwch yn ceisio mynd mor bell tu hwnt i hynny eich bod yn y gorffennol y terminator null, 1755 01:19:50,200 --> 01:19:53,050 yn ôl pob tebyg gan eich cyfrifiadur rhywbeth storio mewn argv 4. 1756 01:19:53,050 --> 01:19:55,790 Ac ch 'n sylweddol na ddylai fod cael mynediad i mewn argv 4, 1757 01:19:55,790 --> 01:19:58,130 oherwydd bod gennych ffeil cabinet ac rydych yn unig 1758 01:19:58,130 --> 01:19:59,790 caniatáu mynediad i'r rhai tri silffoedd. 1759 01:19:59,790 --> 01:20:02,870 Ond os ydych yn ceisio cyrraedd ymhell y tu hwnt y silff o ble y caniateir, 1760 01:20:02,870 --> 01:20:04,930 ydych yn mynd i ddechrau cyboli gyda bethau eraill mewn cof eich cyfrifiadur. 1761 01:20:04,930 --> 01:20:06,690 Mae hynny'n mynd i fod yn wirioneddol, yn wael iawn. 1762 01:20:06,690 --> 01:20:07,440 Felly, dim ond yn gwybod bod. 1763 01:20:07,440 --> 01:20:10,370 Byddwch yn ofalus iawn eich bod peidiwch â dim ond ar hap dechrau 1764 01:20:10,370 --> 01:20:14,772 cael gafael ar elfennau mewn amrywiaeth sy'n Nid oedd yn yr hyn yr ydych am greu. 1765 01:20:14,772 --> 01:20:17,114 Yep. 1766 01:20:17,114 --> 01:20:18,430 >> IAWN. 1767 01:20:18,430 --> 01:20:26,360 Felly rydym yn mynd i wneud un arall enghraifft terfynell yma. 1768 01:20:26,360 --> 01:20:27,300 IAWN. 1769 01:20:27,300 --> 01:20:29,900 Felly Rob yn gyflym mewn darlith Aeth y diwrnod o'r blaen 1770 01:20:29,900 --> 01:20:35,040 drwy'r enghraifft hon, lle y bu Roedd prif argv argc int llinyn int 1771 01:20:35,040 --> 01:20:39,090 cromfachau, sy'n dweud wrthyf fy mod yn mynd i gael dadleuon llinell orchymyn. 1772 01:20:39,090 --> 01:20:41,860 >> Mae ganddo, os argc hafal hafal 2-- cofio, 1773 01:20:41,860 --> 01:20:45,070 yn dychwelyd hafal golygu cymharu. 1774 01:20:45,070 --> 01:20:47,980 Os yw'n hafal 2, yna rwy'n argraffu helo, 1775 01:20:47,980 --> 01:20:51,190 beth bynnag fo'r cyntaf elfen y rhesi yn. 1776 01:20:51,190 --> 01:20:54,100 Print Else, helo byd. 1777 01:20:54,100 --> 01:20:56,300 Beth mae hyn yn mynd i yn digwydd yn y bôn? 1778 01:20:56,300 --> 01:21:00,570 A all rhywun esbonio dim ond mewn English beth mae'r rhaglen hon yn ei wneud? 1779 01:21:00,570 --> 01:21:01,272 Yeah. 1780 01:21:01,272 --> 01:21:08,160 >> GYNULLEIDFA: Os bydd rhywun yn teipio mewn gorchymun a dywedodd eu henw cyntaf a'r olaf, 1781 01:21:08,160 --> 01:21:12,096 ni fydd yn unig argraffu'r cyntaf un a dweud, helo, 1782 01:21:12,096 --> 01:21:14,090 beth bynnag yw eich enw cyntaf yw. 1783 01:21:14,090 --> 01:21:15,410 >> Andi Peng: OK, gadewch i ni ei redeg. 1784 01:21:15,410 --> 01:21:22,470 Felly, er enghraifft, pe bawn yn gwneud ffeil hon yn gwneud helo helo canlynol-- 1785 01:21:22,470 --> 01:21:24,500 canlynol-- beth ydych chi am i mi gyfrannu? 1786 01:21:24,500 --> 01:21:25,900 >> GYNULLEIDFA: Yn gyntaf ac enw olaf. 1787 01:21:25,900 --> 01:21:27,280 >> Andi Peng: Yn gyntaf ac enw olaf? 1788 01:21:27,280 --> 01:21:28,180 Mannau? 1789 01:21:28,180 --> 01:21:29,690 >> GYNULLEIDFA: Yeah. 1790 01:21:29,690 --> 01:21:33,490 >> Andi Peng: A all rhywun ddweud mi yn awr, beth yw argc? 1791 01:21:33,490 --> 01:21:35,630 Dim ond iawn yno? 1792 01:21:35,630 --> 01:21:36,290 Wps, sori. 1793 01:21:36,290 --> 01:21:37,920 Gadewch i mi fynd yn ôl. 1794 01:21:37,920 --> 01:21:40,740 Faint o ddadleuon llinell orchymyn yw-- na allwch guys 'n sylweddol weld. 1795 01:21:40,740 --> 01:21:43,760 Ond byddaf yn ceisio chwyddo i mewn. 1796 01:21:43,760 --> 01:21:44,290 Im 'yn ceisio. 1797 01:21:44,290 --> 01:21:45,414 Yeah, mae tri, dde? 1798 01:21:45,414 --> 01:21:48,750 Mae'n dot slaes helo, 'i' Andi, ac mae'n Peng. 1799 01:21:48,750 --> 01:21:51,870 >> Felly beth ydych chi'n guys meddwl bod hyn rhaglen yn mynd i fod yn argraffu? 1800 01:21:51,870 --> 01:21:55,550 1801 01:21:55,550 --> 01:21:56,060 Oh. 1802 01:21:56,060 --> 01:21:57,120 O, sori. 1803 01:21:57,120 --> 01:21:57,810 Enw Anghywir. 1804 01:21:57,810 --> 01:22:03,630 1805 01:22:03,630 --> 01:22:06,130 Mae'n argraffu, helo byd. 1806 01:22:06,130 --> 01:22:09,603 A oes unrhyw un yn awyddus i egluro pam mae hynny'n digwydd? 1807 01:22:09,603 --> 01:22:10,103 Yeah? 1808 01:22:10,103 --> 01:22:11,019 >> GYNULLEIDFA: [Anghlywadwy]. 1809 01:22:11,019 --> 01:22:14,439 1810 01:22:14,439 --> 01:22:15,230 Andi Peng: Yn union. 1811 01:22:15,230 --> 01:22:19,940 Felly dyma, yn amodol yw, os argc hafal hafal 2. 1812 01:22:19,940 --> 01:22:23,650 Felly dim ond yn yr achos fod yna dwy ddadl llinell orchymyn. 1813 01:22:23,650 --> 01:22:25,850 Yna mi i'n mynd i argraffu, helo, beth bynnag ydyw. 1814 01:22:25,850 --> 01:22:28,210 Ond arall, dw i'n mynd i argraffu dim ond, helo byd. 1815 01:22:28,210 --> 01:22:30,040 Felly mae rhywun eisiau roi enghraifft i mi 1816 01:22:30,040 --> 01:22:35,050 o sut y byddai modd i mi mewn gwirionedd cael ei argraffu gwerth argv 1? 1817 01:22:35,050 --> 01:22:38,600 >> Beth fyddwn i'n gorfod fewnbwn yma? 1818 01:22:38,600 --> 01:22:39,840 Dim ond un peth, dde? 1819 01:22:39,840 --> 01:22:42,900 Oherwydd bod y dot helo wrth eisoes cyfrif fel y ddadl gyntaf. 1820 01:22:42,900 --> 01:22:43,930 Fi ond ca un yn fwy. 1821 01:22:43,930 --> 01:22:46,470 Felly dot helo os Fi jyst yn gwneud Andi. 1822 01:22:46,470 --> 01:22:47,270 Helo, Andi. 1823 01:22:47,270 --> 01:22:49,186 Ydy pawb yn deall pam mae hynny'n digwydd? 1824 01:22:49,186 --> 01:22:49,602 Yeah. 1825 01:22:49,602 --> 01:22:52,500 >> GYNULLEIDFA: Felly y gofod rhwng y line-- gorchymyn yw hi [Anghlywadwy]? 1826 01:22:52,500 --> 01:22:56,247 1827 01:22:56,247 --> 01:22:56,830 Andi Peng: Na 1828 01:22:56,830 --> 01:23:03,810 Felly mae'r gofod mewn llinell orchymyn dadl, x, ddweud wrth eich cyfrifiadur 1829 01:23:03,810 --> 01:23:06,820 bod hyn yn ddechrau llinyn newydd. 1830 01:23:06,820 --> 01:23:11,130 Felly argv llinyn Yma-- ei siopau eich holl orchmynion dadleuon llinell 1831 01:23:11,130 --> 01:23:13,110 mewn llinynnau. 1832 01:23:13,110 --> 01:23:17,420 Ac felly y gofod yn y llinell gorchymyn argument-- cyfan sydd yn ei wneud yw dweud wrthych, 1833 01:23:17,420 --> 01:23:21,030 mae hyn yn ar ddiwedd un llinyn ac mae'n amser i symud ymlaen i un arall. 1834 01:23:21,030 --> 01:23:21,990 >> Yeah. 1835 01:23:21,990 --> 01:23:23,530 Mae hyn yn eithaf pwysig ar gyfer eich pset, oherwydd eich bod yn 1836 01:23:23,530 --> 01:23:24,613 mynd i fod yn profi hyn. 1837 01:23:24,613 --> 01:23:29,300 Felly oes unrhyw un yn cael unrhyw gwestiynau am hyn? 1838 01:23:29,300 --> 01:23:30,016 OK, oer. 1839 01:23:30,016 --> 01:23:30,515 Yeah? 1840 01:23:30,515 --> 01:23:35,008 >> GYNULLEIDFA: Felly y rheswm y byddech rhoi Calc ddadl cyfanrif yn lle hynny 1841 01:23:35,008 --> 01:23:40,059 Byddai o [Anghlywadwy] fod pan fyddwch eisiau i deipio gwybodaeth ychwanegol i 1842 01:23:40,059 --> 01:23:41,030 [Anghlywadwy]? 1843 01:23:41,030 --> 01:23:42,090 >> Andi Peng: Yeah, yn union. 1844 01:23:42,090 --> 01:23:45,370 Bydd angen i chi rhai rhaglenni i fewnbynnu dadl llinell orchymyn 1845 01:23:45,370 --> 01:23:47,732 ei fod yn mynd i mewn ac sy'n defnyddio hynny. 1846 01:23:47,732 --> 01:23:49,035 Yeah. 1847 01:23:49,035 --> 01:23:50,410 GYNULLEIDFA: Felly beth os [Anghlywadwy]? 1848 01:23:50,410 --> 01:23:55,440 1849 01:23:55,440 --> 01:23:58,870 >> Andi Peng: Wel, beth sydd gen i i newid yna yn fy rhaglen? 1850 01:23:58,870 --> 01:23:59,870 >> GYNULLEIDFA: Dim ond 3. 1851 01:23:59,870 --> 01:24:12,460 1852 01:24:12,460 --> 01:24:15,020 >> Andi Peng: Pam hynny digwydd, yn eich barn chi? 1853 01:24:15,020 --> 01:24:18,940 >> GYNULLEIDFA: Oherwydd bod y [Anghlywadwy]. 1854 01:24:18,940 --> 01:24:22,370 >> GYNULLEIDFA: Byddai'n rhaid i chi newid i 2 [Anghlywadwy]. 1855 01:24:22,370 --> 01:24:23,484 >> GYNULLEIDFA: 1 a 2. 1856 01:24:23,484 --> 01:24:24,650 Andi Peng: 1 a 2, yn union. 1857 01:24:24,650 --> 01:24:29,150 Felly, yn yr achos hwn, mae'n debyg y byddech am gael dau printf statements-- 1858 01:24:29,150 --> 01:24:32,601 un sy'n argraffedig argv 1 a yr un sy'n argraffwyd argv 2. 1859 01:24:32,601 --> 01:24:33,100 Yma. 1860 01:24:33,100 --> 01:24:34,516 Gall Fi 'n weithredol wneud hynny gyflym go iawn. 1861 01:24:34,516 --> 01:24:46,720 1862 01:24:46,720 --> 01:24:47,320 Dyna chi. 1863 01:24:47,320 --> 01:24:48,287 Oh. 1864 01:24:48,287 --> 01:24:49,370 Ddim yn hollol yr hyn yr ydych ei eisiau. 1865 01:24:49,370 --> 01:24:52,590 Ond os ydych yn guys llanast o gwmpas gyda fformatio, bydd yn dod allan. 1866 01:24:52,590 --> 01:24:54,981 Yeah. 1867 01:24:54,981 --> 01:24:55,480 Cool. 1868 01:24:55,480 --> 01:24:57,670 Rwy'n gwybod ein bod braidd yn brin o amser. 1869 01:24:57,670 --> 01:25:02,469 Ond Im 'jyst yn mynd i wario yn gyflym yn cofnodion cwpl yn mynd drwy helpful-- 1870 01:25:02,469 --> 01:25:03,760 GYNULLEIDFA: Mae gennych ddwy funud. 1871 01:25:03,760 --> 01:25:05,010 Andi Peng: Mae gen i ddwy funud? 1872 01:25:05,010 --> 01:25:06,340 Diolch. 1873 01:25:06,340 --> 01:25:09,180 Rhai awgrymiadau pset gyflym. 1874 01:25:09,180 --> 01:25:13,100 Felly, ar gyfer pset hwn, Fi 'n dal argymell, fel y dywedais, mae pawb i ddarllen y fanyleb. 1875 01:25:13,100 --> 01:25:16,804 Byddwch yn ysgrifennu tri un programs-- Gelwir initials.c, un o'r enw caesar.c, 1876 01:25:16,804 --> 01:25:17,720 un o'r enw vigenere.c. 1877 01:25:17,720 --> 01:25:20,465 1878 01:25:20,465 --> 01:25:22,340 Rhai awgrymiadau pwysig sy'n chi guys 'n sylweddol angen 1879 01:25:22,340 --> 01:25:25,040 i gadw mewn mind-- felly mae swyddogaeth hon 1880 01:25:25,040 --> 01:25:27,770 Gelwir atoi-- fel yr wyf yn hoffi dweud, yn trois. 1881 01:25:27,770 --> 01:25:29,520 Aneglur os yw hynny'n mewn gwirionedd sut yr ydych yn ei ddweud. 1882 01:25:29,520 --> 01:25:32,510 Ond yr holl mae'n ei wneud, mae'n mewnbynnu. 1883 01:25:32,510 --> 01:25:34,320 Mae'n trosi llinyn i int. 1884 01:25:34,320 --> 01:25:37,490 Felly cynrychioli ASCII i ff cyfanrif. 1885 01:25:37,490 --> 01:25:40,310 Mae'n dim ond drosi ASCII gwerthoedd i cyfanrif gwerthoedd. 1886 01:25:40,310 --> 01:25:44,510 Felly cofiwch argv, yr amrywiaeth sy'n storfeydd eich holl orchmynion llinell arguments-- 1887 01:25:44,510 --> 01:25:46,300 mae pob un ohonynt storio fel llinynnau. 1888 01:25:46,300 --> 01:25:50,010 Ac felly os ydych chi am fod yn gallu rhaid i un ohonynt fod yn gyfanrif, 1889 01:25:50,010 --> 01:25:52,750 rydych yn mynd i gael i ddefnyddio'r gwerth hwn yma. 1890 01:25:52,750 --> 01:25:56,690 >> Modulo, fel rydym yn ei gynnwys yn gynharach yn y dosbarth heddiw, 1891 01:25:56,690 --> 01:25:59,550 yn eich galluogi i gael y gweddill beth bynnag sydd gennych. 1892 01:25:59,550 --> 01:26:03,620 Felly, os oes gennym mewn gwirionedd, mewn gwirionedd niferoedd mawr yn Cesar, 1893 01:26:03,620 --> 01:26:06,117 beth os oes gennym y pen o gyfres o Vigenere? 1894 01:26:06,117 --> 01:26:08,450 Sut ydych chi'n mynd i fod yn gallu i gael y i lapio o gwmpas? 1895 01:26:08,450 --> 01:26:11,330 Os byddaf yn taro z ac rydw i eisiau i fynd yn ôl i, 1896 01:26:11,330 --> 01:26:13,650 sut ydw i'n mynd i gael hynny i lapio o gwmpas? 1897 01:26:13,650 --> 01:26:15,960 Mwy na thebyg eisiau defnyddio modulo i mewn 'na rhywle. 1898 01:26:15,960 --> 01:26:19,190 >> Yn ail, bori o gwmpas eich llyfrgell. ctype.h. 1899 01:26:19,190 --> 01:26:20,680 Dyna llyfrgell newydd sydd gennym. 1900 01:26:20,680 --> 01:26:25,270 Byddwch yn dod o hyd i lawer o iawn, iawn isupper functions-- defnyddiol, islower, 1901 01:26:25,270 --> 01:26:27,681 toupper, tolower, isalpha, et cetera. 1902 01:26:27,681 --> 01:26:30,680 Pob swyddogaeth a fydd yn ddefnyddiol iawn pan fyddwch yn ceisio at chyfrif i maes, 1903 01:26:30,680 --> 01:26:33,780 yn y cymeriad hwn llythyr llythrennau bach? 1904 01:26:33,780 --> 01:26:35,730 Sut ydw i'n trosi hyn llinyn i priflythyren? 1905 01:26:35,730 --> 01:26:38,146 Bydd yr holl bethau hyn fod yn iawn, yn ddefnyddiol iawn ar gyfer eich pset. 1906 01:26:38,146 --> 01:26:42,720 1907 01:26:42,720 --> 01:26:45,500 IAWN. 1908 01:26:45,500 --> 01:26:49,644 >> Oriau swyddfa heno yn 8:00 i 11:00 yn y dosbarth TEAL yfory 1909 01:26:49,644 --> 01:26:51,310 yn ogystal â Mercher a dydd Iau nos. 1910 01:26:51,310 --> 01:26:53,280 Oriau swyddfa yn dir comin. 1911 01:26:53,280 --> 01:26:56,180 Hynod awgrymu eich guys i gyd ddechrau arni ar unwaith, 1912 01:26:56,180 --> 01:27:00,490 oherwydd nad ydych am fod yn plentyn sydd â nos Iau problemau 1913 01:27:00,490 --> 01:27:03,870 cyflwyno eich pset ac yn cael ei fel, nid wyf yn gwybod beth i'w wneud. 1914 01:27:03,870 --> 01:27:05,870 Dechreuais, mi orffen, yr wyf yn cyflwyno. 1915 01:27:05,870 --> 01:27:09,737 Ceisiwch roi rhywfaint o le i chi'ch hun, oherwydd mewn problemau cod bob amser yn digwydd. 1916 01:27:09,737 --> 01:27:11,570 Y byddwch am wneud yn siwr eich bod yn rhoi eich hun 1917 01:27:11,570 --> 01:27:14,810 llawer o amser i allu i gwblhau'r psets. 1918 01:27:14,810 --> 01:27:15,310 Cool. 1919 01:27:15,310 --> 01:27:16,720 'N annhymerus' hongian o gwmpas fan hyn. 1920 01:27:16,720 --> 01:27:18,226 >> GYNULLEIDFA: A yw hyn ar-lein yn barod? 1921 01:27:18,226 --> 01:27:20,850 Andi Peng: Nid wyf yn gwybod os yw'n ar-lein yn barod, ond bydd yn cael ei. 1922 01:27:20,850 --> 01:27:23,500 'N annhymerus' hongian o gwmpas fan hyn os oes unrhyw un Mae gan unrhyw gwestiynau yn barod. 1923 01:27:23,500 --> 01:27:25,390 Diolch am ddod. 1924 01:27:25,390 --> 01:27:27,105