1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
Jason HIRSCHHORN: Maligayang pagdating. Kaya lamang ng ilang mga anunsyo bago namin simulan. Kaya seksyon, lahat ng tao ay dapat na na sectioned na. Mga Seksiyon ng normal na tumakbo mula Linggo hanggang Martes. Kaya ka guys ay dapat makuha ang iyong mga takdang-aralin. At pagkatapos ay sa tingin ko sa susunod na linggo Makakakita ka ng iyong aktwal na TFs. Kaya kung mayroon kang anumang mga katanungan, o problema, o nakalimutan mong seksyon. Ang ilang mga tao gawin iyon. Ipaalam lamang sa amin. Abutin sa amin ng isang email sa ulo. 

Pagkatapos oras ng opisina. Sinimulan namin ang oras ng opisina noong nakaraang linggo. Oras ng opisina bawat linggo. Lunes sa Leverett 8:00-11:00. Martes sa patyo sa loob, kaya Cabot 8:00-11:00. Miyerkules, Mather 8:30-11:30. At Huwebes Annenberg 8:00-11:00. 

Kaya sa simula, maraming mga tao hindi na kailangan ng oras ng opisina tulong para sa simula, na ay ganap na multa. Kung gagawin mo ito, na ganap fine pati na rin. Ngunit sa hinaharap, ang problema mga hanay, kumuha sila mas mahirap. Kaya ito ay magiging iyong kaibigan. Talagang pumunta sa oras ng opisina. Planuhin ang dumalo sa oras ng opisina. Kapag nakarating ka na sa problema -set apat, limang, anim, pitong, kailangan mong pumunta sa oras ng opisina. Iyon ay kung saan ng maraming ng tulong at ang gawain ay makakakuha ng tapos na. 

Sa tingin ko noong nakaraang taon, para lamang sa Halimbawa, sa Huwebes night-- kaya sa palagay ko ang problema mga hanay ay dahil sa Biyernes. Kaya Huwebes ng gabi, gusto naming magkaroon ng 200, 250 mga mag-aaral sa oras ng opisina. Kaya gumawa ng mga tiyak na paggamit ng mga ito. Ito ang iyong pinakamahusay na mga kaibigan. Tulad ng ito ay kung saan kung ikaw ay Natigil sa isang hanay ng problema, ito ay kung saan makikita mo marahil makakuha ng tulong. Kaya oras ng opisina. OK kaya ang mga ito ay mga anunsyo. Mga Anunsyo ay tapos na, sa gayon ay magsisimulang ipaalam. 

OK, ang appliance. Ang ibig lahat download ang pang appliance? Hindi. Tulad ng sa gayon ito. Ako uri ng na-download ang appliance. I-right kaya ang appliance ay bago sa taong ito, kaya kami ay marahil pagpunta sa may ilang mga bug sa loob nito. Kaya mangyaring i-download ito bilang maagang panahon. Kaya itakda ang problema isa ay pagpunta upang sabihin sa nang eksakto sa iyo kung paano i-download ito. Pagsisimula sa pag-install dito mismo. Ito ay pagpunta sa sabihin sa iyo kung paano i-download ang appliance. 

Kaya i-download Siguradong ang appliance na mas maaga kaysa sa ibang pagkakataon. Ang mga tagubilin ay nasa P hanay spec. Kaya kung maghintay ka hanggang Miyerkules gabi, at pagkatapos ay mayroon kang problema, at ipadala mo sa amin ng isang email sa hatinggabi sa gabi Miyerkules na hindi mo maaaring i-download ang appliance, na hindi isang legit dahilan para sa isang extension. Kailangan mong gawin ito ngayon, at ikaw ay nagkakaproblema. Sinubukan kong i-download ito noong nakaraang gabi. Ako ang bumangga sa isang kaunting problema. Kung maubusan sa pag -install, talagang pindutin ang muling pagsubok, dahil pindutin ko lang subukang muli ang isang beses asawa, at sa kalaunan ito ay nagtrabaho, na hindi magsagawa ng anumang mga -unawa, ngunit ginagawa nito. Kaya siguradong muling subukan, ngunit kung makabuo laban sa isang brick wall, shoot kami ng isang email sa ulo, at kami ay maging higit sa masaya na tulungan ka guys. Ano ba ang balita? 

MAG-AARAL: lamang ng isang mabilis na tanong. Kung suriin ang mga ito ng estilo, mayroong isang bahagi na nagsasabing hindi namin ginawa isama ito. Jason HIRSCHHORN: Hindi pa. MAG-AARAL: Sinasabi nito na isagawa ito. Paano mo isagawa iyon upang tiyakin na ito ay nasa iyong system? 

Jason HIRSCHHORN: Ikaw pagpunta sa magpatakbo ng isang command na malakas na palo. Makikita pumunta ako sa ibabaw na sa ibang pagkakataon. Ayos. Kaya ang appliance ay maaaring maging isang Medyo intimidating, dahil nakasanayan mo na uri ng tumatakbo sa graphical interface ng gumagamit. Kaya simula noon ay isang graphical user interface, kaya ano ang gagawin ko ibig sabihin sa pamamagitan ng na? Ano ang ibig kong sabihin ay na ang kapag naka-programa, talaga gumagamit ka ng mga bloke ng code. Maaari mong makita ang code at bagay-bagay tulad na. 

Ang appliance, na iyong pupuntahan ginagawa mga bagay sa isang linya ng command na kapaligiran. At kaya para sa natitirang bahagi iyong buhay sa programming, na iyong pupuntahan ay ang paggawa ng mga bagay sa kapaligiran ng linya ng command. Kaya ito ay handa na upang tumalon sa unang bahagi ng at makakuha ng ilang mga karanasan. Kaya ipaalam gawin natin ito. Kaya na Rob. 

OK, tumalon ni lamang upang ipaalam sa command na mga bagay-bagay linya. Kaya ito ay ang appliance. Maaari sinuman sabihin sa akin kung bakit gumagamit kami ng isang appliance? Ano ang appliance? Alam ba ng sinuman? Ano ba ang balita? 

MAG-AARAL: Ito ay lamang ng isang virtual machine na patakbuhin mo ang iyong computer sa gayon ay maaaring makakuha sa ibabaw ng OS disagreements sa pagitan ng Mac at PC. Jason HIRSCHHORN: Perpekto. MAG-AARAL: Ito ay isang unibersal na template. Jason HIRSCHHORN: Oo, ito ay tulad ng isang unibersal na template. Iyan ay perpekto. Kaya oo, ito ay isang virtual machine. Kaya ito ay isa lamang ng isang operating system. Ito ay isang operating system. Ito ay katumbas ng iyong Mac, o mo PC, o ang iyong Linux. Ito ang eksaktong parehong. At sa gayon ay maaari mong gawin katulad na mga bagay-bagay. Kung nais na, maaari mo pumunta online na halimbawa. Hindi mo maaaring talagang makita ito, ngunit dito mismo, ang Google Chrome. Maaari kang pumunta sa online kung gusto mo. Ito ay isang operating system. At ang dahilan ginagawa namin na ay dahil ito ay lubhang mas madaling kapag kami ay handing out mga tagubilin at ang lahat. Kung ito ay lamang ng isang pantay-pantay na kapaligiran, ito ay lubhang mas madaling para sa amin, at ito ay lubhang mas madaling para sa iyo. Hindi ka pagpunta upang mapatakbo sa ito tumakbo sa anumang idiosyncrasies kapag naka-programa. Alam namin kung ano mismo ang na iyong pupuntahan upang tumakbo sa. Kaya ang appliance ay dito. 

Kaya kapag ikaw ay nagsisimula programming, ikaw ay pagpunta sa bumaba sa kaliwang sulok. Mayroong isang maliit na kahon. Ka ng pagpunta sa i-click ito. Ito ang iyong terminal na window. Kaya ito ay kung saan ka pupunta upang maging ng maraming ng semestre. Kaya hayaan mo akong mag-zoom sa ilang sandali. 

OK, kaya nakukuha sa paligid ng terminal window ay Medyo naiiba. Una, walang mga icon. Hindi ko maaaring i-click ng kahit ano. Wala i-click ang. Kaya ikaw ay may upang malaman ng isang paraan upang malaman kung nasaan ka, kung ano ang dito, at kung paano upang makagalaw sa paligid. 

Kaya ang dalawang pinaka-kapaki-pakinabang na mga utos marahil ay ls-- kaya kung ano ang palagay mo l ang? 

MAG-AARAL: Listahan. Jason HIRSCHHORN: Listahan, oo. Inililista nito lamang algorithm sa loob ng direktoryo. At pagkatapos ay cd. Kaya sabihin nating Nais kong cd CS50, ano ang na gawin? Oo? 

MAG-AARAL: Binabago ang iyong direktoryo. Jason HIRSCHHORN: Perpekto, oo. Nagbabago lang ito sa direktoryo. Kaya sabihin bumalik. Kaya paano ko bumalik? Kaya sabihin nating Nais kong pumunta -back sa nakaraang direktoryo. Oo sigurado. 

MAG-AARAL: Sa tingin ko ka magsulat cd nang hindi lamang ang anumang bagay. Jason HIRSCHHORN: Maaari mong gawin iyon. Kaya perpekto. Kaya kung sumulat ako cd, ito ay talagang pagpunta sa pop akin -back up sa home directory. Kaya mo ang tilda, na pupuntahan pop akin paraan back up sa kung saan ang tilda ay. Kaya ito ay pagpunta sa pop up ako -back sa home directory. Ngunit sabihin nating ginawa ko ng isang bagay na katulad nito. Hayaan sabihin sa cd CS50. muli l. Mayroon akong iba pang mga bagay-bagay. sobrang seksyon cd. cd file, kaya ako pupunta malalim. At pagkatapos ay sabihin nating gusto kong -pop bumalik na lamang sa itaas. cd. Sabihin nating hindi ko nais upang gawin iyon. Sabihin nating gusto ko lang mag-pop-back up sa ang direktoryo na ay karapatan sa itaas sa akin. Paano ko gawin iyon? Kaya ipaalam sabihin ng cd CS50. cd supersection. Kaya sabihin ako dito. Sabihin nating gusto ko lang mag-pop up ang isang panahon. Paano ko gawin iyon? Oo, kung ano ang up? 

MAG-AARAL: type mo lang cd supersection muli. 

Jason HIRSCHHORN: maaari mong gawin iyon. Well ako sa supersection. 

MAG-AARAL: Oh, ang isa bago. 

Jason HIRSCHHORN: Oo, kaya maaari mong gawin iyon. Magagawa mo cd ~ CS50. Kaya't kung tiningnan mo dito, ang ay ang iyong daanan dito mismo. Iyon ang iyong path. Kaya maaari mong sineseryoso pumunta lamang sa cd ~ / CS50. Boom, nandoon ka. Ano ang isang mas madaling paraan upang gawin ito bagaman? Iyon ay ganap na tama, ngunit kung ano ang isang bahagyang mas madaling paraan upang gawin ito, dahil marami ng beses na iyong pupuntahan na tumatalon sa direktoryo, tumatalon out sa direktoryo. Kaya sabihin bumalik. cd supersection. Kaya sabihin nating gusto kong makabalik tunay mabilis. Maaari mong gawin ang isang bagay tulad ng cd tuldok na tuldok. Na pupuntahan pop mong i-back up real mabilis. Kaya cd supersection. cd file. Sabihin nating ako dito. Sa pamamagitan ng paraan, malinaw na ay mabuti, dahil ang aking window ay nakakakuha Medyo maraming kalat. Kaya l, kaya hindi ko nais na maging ngayon dito. cd tuldok na tuldok. Dalhin ako up ng isa. Cd tuldok tuldok na tumatagal ng hanggang sa isa sa akin. Cd tuldok tuldok at bumalik sa aking bahay. 

OK, kaya cd, l. Marahil ang pinakamahalagang bagay, dahil ikaw ay pagpunta sa kailangan upang malaman kung nasaan ka. l ay pagpunta sa sabihin sa iyo kung nasaan ka, at cd ay kung paano ka ng pagpunta sa tumalon sa paligid. 

Maaari ka ring gumawa ng ilang iba pang mga cool na bagay. Kaya halimbawa l. l ay lamang ng pagpunta upang ipakita sa iyo ang direktoryo sa iyong file. Ito ay nangyayari rin upang ipakita sa iyo ang mga file. Ngunit lamang ito ng pagpunta sa ipakita sa iyo kung ano ang doon. 

Kung nais mong isang bagay Medyo higit pang mga cool na, at tapos ka pagpunta sa aktwal na gagawin ito sa loob ng ilang linggo. l gitling l. Na mga print out ng isang maliit na higit pang impormasyon. Maaari sinuman hulaan sa kaliwang gilid ng drwx, rwx at bagay-bagay tulad na. Mayroon ba ang sinuman ng isang ideya kung ano ang maaaring sabihin? 

MAG-AARAL: Pahintulot. 

Jason HIRSCHHORN: Oo, perpekto. Mga Pahintulot. Kaya ka ng pagpunta sa mayroon haharapin ang mga ito kapag gumawa ka web programming sa ibang pagkakataon. Kung sakaling mo na ang nawala sa online, at nag-click ka sa isang larawan o nag-click sa isang patlang, at sinabi ito permission-- tulad ng pahintulot hindi pinapayagan, o tulad ng pahintulot hindi ibinigay o anumang, na dahil kapag sila ay ang mga programa, ang mga ito na hindi nakatakda ang mga pahintulot upang ipaalam gawin mo iyon. Kaya kung saan na nagmumula sa. 

OK, sa gayon ay malamig-lamig. Kaya jumped namin sa paligid. Maaari naming tumingin sa mga bagay-bagay sa aming direktoryo. Ngunit paano namin mapapakinabangan mga bagay-bagay? Mayroon akong mga direktoryo dito. Iyon ay kahanga-hanga. Paano ako gagawa ng isang bagong directory? Sabihin ang gusto kong gumawa ng isang bagong direktoryo para sa ngayon. Maaari mong gawin ang isang bagay na tulad nito, mkdir. Kaya gumawa ng direktoryo. Kaya kung ano ang gusto mong tumawag sa direktoryong ito? MAG-AARAL: Kahanga-hanga. Jason HIRSCHHORN: Kahanga-hanga. Gustung-gusto ko ito. Gumawa ng direktoryo ng kahanga-hangang. At doon ka pumunta. Kaya kailangan namin ng isang listahan. Mayroon kang isang bagong direktoryo. At maaari mong sabihin ito ay isang direktoryo sa iyong appliance dahil ito ay nakuha ko ang kulay na ito, i-right? Kaya ito ay tulad ng isang mala-bughaw na lilang o kahit anong. Kaya sabihin baguhin. Baguhin ang direktoryo Hayaan. Sabihin pumunta sa directory-- oo, ano ang up? MAG-AARAL: Mayroon bang isang listahan ng mga lahat ng mga [hindi marinig] online? Jason HIRSCHHORN: Oo, makikita ko bang ilagay ang mga ito up on-- namin ay may mga slide. Ito ay isang PDF. Susubukan naming ilagay ang mga ito up para sa lahat. Oo, paumanhin ito ng maraming mga utos. kung gusto ninyo sa akin na pabagalin, o bumalik, o anumang bagay na tulad nang, Siguradong ipaalam sa akin. Ito ay isang marami na maunawaan agad-agad. Ano ba ang balita? MAG-AARAL: Maaari ko bang hilingin sa isang potensyal na ugok katanungan? Jason HIRSCHHORN: Mayroong walang ugok katanungan. MAG-AARAL: Mayroong. Isang direktoryo ay para lamang hinahanap sa impormasyon kung saan mo iimbak ito. 

Jason HIRSCHHORN: Oo. 

MAG-AARAL: na tunay ba kung ano ang iyong ginagawa? Kaya kapag gumawa kami ng isang bagay, kumusta mundo o kahit anong, naka-imbak sa direktoryo, yes? 

Jason HIRSCHHORN: Oo. 

MAG-AARAL: Iyan ba ang totoo para sa lahat. Lahat ay naka-imbak sa direktoryo. 

Jason HIRSCHHORN: Oo. Sa tuwing gagawin mo ito, anumang direktoryo ikaw ay nasa, ito ay pagpunta sa isa lamang iimbak ito sa directory na iyon. MAG-AARAL: At kapag kami ay pagtawag ito, kami ay pagtawag ito mula sa direktoryo. 

Jason HIRSCHHORN: Oo, kaya ang direktoryo ay kung saan ito Es. Kaya ito ay uri ng tulad ng kung mayroon kang isang bagong folder sa iyong desktop at pagkatapos ka magsulat ng teksto file, ilagay ito sa folder na iyon, file na nasa folder na iyon. Ay na magkaroon ng kahulugan? 

MAG-AARAL: Oo. 

Jason HIRSCHHORN: Oo, kung ano ang up? 

MAG-AARAL: Maari ko lang sa iyo na gawin itong isang kaunti mas malaking? 

Jason HIRSCHHORN: Oh, oo. Sorry. Projector ay kaya masama. Nagkaroon kami kaya magkano ang pag may ito nang mas maaga. Iyan ba ang mas mainam? Masyadong malaki ba iyon? 

MAG-AARAL: Hindi, hindi ito ay hindi. 

Jason HIRSCHHORN: Hindi, hindi ito. Masyadong maliit ba ito? Ano ba ang balita? 

MAG-AARAL: Sorry, kung ano ang ang command para sa pag-clear? 

Jason HIRSCHHORN: Oh, malinaw. Kung nais mong i-clear, lamang -type malinaw. malinaw na ipasok. Sa huling appliance, kung ano ang ginagawa talaga ito, hindi ito i-clear ang iyong impormasyon, ito lamang ang uri ng shift lahat down na isa screen. Kaya kung nag-type ka clear-- para sa Halimbawa sabihin nating ako pag-scroll up. Maaari ko bang mag-scroll pataas. Ito ay ang lahat ng ginawa ko. Ngunit kung nagta-type ako ng malinaw, at pagkatapos ay Mag-scroll pataas ko, narito ang aking mga bagay-bagay. Kaya ito ay hindi magbubura ito, ito ay lamang isa lamang na nagbibigay sa iyo ng isang bagong frame. 

MAG-AARAL: Paano gagawin mo [Hindi marinig] isang direktoryo? 

Jason HIRSCHHORN: Magpapadala kami makarating doon. 

[Tawa] Pabagalin ang iyong roll. Lahat ng karapatan. OK, kaya kaya hindi namin sa isang direktoryo sa ngayon. Kaya si David, sa palagay ko sa panayam ginawa niya ang ilang mga cool na bagay. Kaya magsulat ng isang programa ipaalam. Kaya maaari mong gawin na ang isang bilang ng mga iba't-ibang paraan. Maaari mong gamitin ang anumang uri ng editor ng teksto. Maaari mong gamitin ang Nano, mo Maaaring gamitin Vim, GNU Emacs. Yaong ay bahagyang mas komplikado. O maaari mong gamitin ang isang bagay sa dito na tinatawag na gedit. Sorry. gedit ay hindi masaya. Kaya gedit ay isa lamang lamang ng isang text editor. Tulad ko text-edit salita processor o isang bagay tulad na. Kaya ito ay nakuha sa isang masarap na interface nais lang na ito. Kaya gawin mo ang isang bagay tulad na. Kaya talagang ipaalam sa akin bigyan ito pangalanan dahil hindi ako gumawa niyan. 

Kaya kung ano ang gusto mong pangalanan ang aming unang programa? Lamang Ito ay pagpunta sa sabihin hi. 

MAG-AARAL: [hindi marinig]. 

Jason HIRSCHHORN: Kulang mong imahinasyon. OK, gedit. Hi. Pupunta ako sa gawin .txt. OK, kaya heto. Kaya magsulat ng isang programa ipaalam. Kaya sa palagay ko nakita mo ito sa aralin. Kailangan mo ng isang pangunahing pag-andar. Boop. Kaya ito ay isang pangunahing pag-andar lamang. Mas malaki? Oo, paumanhin. OK kaya kailangan mo ng pangunahing pag-andar. Sa tingin ko ako tumatalon ang baril nang kaunti, ngunit ito ay hindi masama upang makakuha ng ginagamit upang sa ganitong uri ng bagay. 

Kaya isang pangunahing pag-andar, bawat programa C ikaw ay pagpunta sa magsulat para sa natitirang bahagi ito Siyempre ay magkakaroon ng pangunahing pag-andar. Kahit sino Alam ba kung bakit? Ano ba ang balita? 

MAG-AARAL: Simulan. 

Jason HIRSCHHORN: Eksakto, kaya Sinasabi sa iyong programa kung saan magsisimula. Kaya kung wala kang isang pangunahing pag-andar, at sumulat ng libro na ito at bagay-bagay, Hindi ito nangyayari malaman ay upang magsimula. Pangunahing ay laging kung saan ito magsimula. Kaya mayroon kang isang pangunahing pag-andar, at pagkatapos ay ang sinuman tandaan kung paano i-print? 

MAG-AARAL: printf. Jason HIRSCHHORN: Oo, printf. printf hi. OK, ngayon-set ko sa inyo guys up mabigo, ngunit compile na ito. 

MAG-AARAL: Hindi. 

Jason HIRSCHHORN: Bakit? Mayroong maramihang dahilan kung bakit. Oo naman. 

MAG-AARAL: Hindi nito ay may ang karaniwang [hindi marinig]. 

Jason HIRSCHHORN: Perpekto. Kaya kung ano ang tinatawag na up na ito? 

MAG-AARAL: [hindi marinig] 

Jason HIRSCHHORN: Ito ay ng isang header na file, i-right? Ito ay isang header na file. At ikaw ay akmang-akma sa iyo. Pareho sa iyo ay tama. Kaya upang isama iyon, lamang kong gawin pound Kasama sa mga karaniwang input output .h. Ako ay magandang kong pumunta ngayon? Gusto sumulat ng libro na ito? 

MAG-AARAL: Hindi. Jason HIRSCHHORN: Bakit hindi? MAG-AARAL: Ito ay isang [hindi marinig] teksto. Jason HIRSCHHORN: Oo, kahanga-hanga. Kaya ginawa ko lang ito. Kaya itong i-save ko, ngunit gedit hi.txt. Kaya ngayon kung gagawin ko l, heto. I-right dito. Oh, ito ay wala sa kahanga-hangang. Dapat na wala na akong hindi sumali. Oh, perpekto. Paano naming ilagay ito sa kahanga-hangang? Kaya hindi ko ito gusto dito sa aking bahay direktoryo sa lahat ng iba pa. Gusto kong ilagay ito sa folder. Paano ko gawin iyon? 

Hindi masyadong matigas. Ilipat. Kaya na aming natutunan l, listahan. cd upang baguhin ang mga direktoryo. cd tuldok tuldok sa paga out sa direktoryo. At ngayon kami ay pagpunta sa simulan ang paglipat sa paligid ng mga file. Kaya upang ilipat lamang ilipat hi.txt, at Pupunta ako sa ilagay ito sa kahanga-hangang. 

Lamang mag-ingat. Sa tuwing sumusulat ka sa command line, mga bagay na ang lahat. Kaya uppercase na mga usapin. Kung tapos ko na lowercase ng, ito ay Hindi pagpunta sa kung ano ang nangyayari sa. Kaya ang mga bagay na ang lahat ng bagay upang maging napaka-partikular na. 

Kaya tumakbo na l. Ito ay hindi na dito. Baguhin ang direktoryo sa kahanga-hangang Hayaan. l. Boom, ito ay doon. At isang tao na nabanggit kung bakit ito ay hindi sumulat ng libro. Bakit hindi pagpunta upang makatipon muli? Oo? 

MAG-AARAL: Ito ay wala sa .c. 

Jason HIRSCHHORN: Perpekto. Ito ay hindi isang .c, y kaya paano ako pagpunta sa palitan ang pangalan nito sa isang .c? Ano ang isang madaling paraan upang gawin ito? Gamitin ang command ginawa namin lamang Hayaan. Kaya namin lamang ng pagpunta sa ilipat hi.txt sa hi.c. l hi.c. At pagkatapos ay katuwaan lang, sabihin lumipat lang sa ito tunay mabilis. hi.c. Mapapansin mo ito maganda at makulay. Kaya ito ay lamang uri ng mga kapaki-pakinabang kulay kapag naka-programa. Kaya ang int at ang walang silbi, mga mga uri ng data. Susubukan naming pumunta sa paglipas ng mga nasa isang segundo. Kamusta ay isang string. Ngunit kapaki-pakinabang na mga kulay. Kaya kung sakaling aksidenteng piliin ang maling extension, Dapat kang magkaroon ng mga kulay. Ano ba ang balita? 

MAG-AARAL: Paano ko kopyahin papunta sa isang -file [hindi marinig] sa isa pang file? Jason HIRSCHHORN: Oh, ako pagpunta upang ipakita sa iyo na masyadong. Kaya kopya alisin ang nasa dock. Ay gawin ang Hayaan. Tiyaking ito gumagana. Gawing hi. Works, patakbuhin ito. Kaya ./hi-hanga ito. Iyon ay ang iyong unang programa. Hayaan akong gawin itong mas malaki. Kaya isang talagang good-- Oo, kung ano ang up? MAG-AARAL: Bakit magiging na kapag gumawa ako gedit, hindi ito akong bigyan ng isa pang linya para sa gedit hi.txt? Inilalagay ito lamang ang cursor sa isang linya. MAG-AARAL: Oo. Ang [hindi marinig]. 

Jason HIRSCHHORN: Maghintay, kaya nating muli. 

MAG-AARAL: Kapag nagta-type ako gedit, ang unang pagkakataon, ang unang line-- Jason HIRSCHHORN: Up doon sa tuktok napaka-? MAG-AARAL: ay walang J Harvard appliance, at ang cursor lamang ang lahat ng mga paraan sa kaliwa. Jason HIRSCHHORN: Lahat ang daan sa kaliwa? MAG-AARAL: Oo. Ang sinumang mayroon na ba? 

Jason HIRSCHHORN: Oh, na rin J Harvard ay tulad lang ng username. Kaya ito lamang ay ang mga karaniwang username. 

MAG-AARAL: Humihinto ito sa pagtugon. Jason HIRSCHHORN: Oh, Humihinto ito sa pagtugon. OK, kaya kung ano ang kailangan mo lang gawin ay mayroon kang upang isara out sa gedit. Kaya malapit out sa gedit, at dapat itong bumalik. Kaya bukas sa iyong gedit appliance ngayon? Kung lumabas ka na ng mga ito, dapat ito bumalik at dapat ay handa na upang pumunta. Gawa na ba? 

MAG-AARAL: Kaya ginawa ginagamit mo ang command gedit sa open-- Jason HIRSCHHORN: Hindi, ang unang gedit utos ay pagkakamali. Ang unang gedit utos, Kong gawin gedit hi.txt. Kaya bigyan ko ito ng isang pangalan, kaya gedit hi.txt. hi.txt ay ang pangalan ng file. Ang una ay isa lamang isang pagkakamali, at pagkatapos ay Mabilis ko sarado sumali sa programa. Kaya ang tanong ay kung gagawin ko gedit, hindi ako pagpunta sa magagawang talagang gawin anumang bagay sa aking linya ng command hanggang sa isara ko na gedit, kaya ko sa tingin na kung ano ang kanilang bumangga sa. Kaya isara ang gedit. Ito bumalik out sa na programa, at pagkatapos ay ipapakita sa iyo makakapag-aktwal na-type sa command line muli. Mahusay na ba iyon? Gamot na pampatulog. Kaya tiyaking isara lang ito kung magkaroon ka ng problema. 

OK, kaya isang talagang magandang tanong isang segundong nakalipas ay pagkopya. Kaya ngayon ay hi.c. ko Ngunit sabihin nating gusto kong baguhin ito. Gusto ko ito upang maging bahagyang mas mahusay. Gusto kong sabihin hi class. Ngunit nais kong panatilihin ang template na ito. Wala akong upang muling isulat ang muli ang buong programa. Gusto kong panatilihin ang mga template. Paano ako kokopya? 

Madaling. Kaya CP hi.c newhi.c. Ngayon Mayroon akong dalawang. At pagkatapos ay ang maaari kong magbukas ng newhi.c, at sa halip na sabihing lamang hi, Sasabihin kong hi klase! Kaya makikita ba akong bumalik. Lumabas out. Bumalik sa aking linya ng command. l gumawa newhi. Patakbuhin ito. Mayroon. Ito ay mas mahusay, mas mahusay. Kaya kung nais mong kopyahin ang isang bagay, madaling bilang na. CP ay kopya. 

Kaya Nawala namin sa paglipas ng gumagalaw, paggawa ng mga direktoryo, pagkopya. Tingnan natin kung ano pa ang dapat kong pumunta sa ibabaw? Oh, oo. Sabihin balikan ito. Kaya ito ay kahanga-hanga. Sabihin nating nais kong to-- oh maghintay. Pupunta ako sa bumalik sa mga kahanga-hangang. 

Sabihin nating hindi ko nais mga file na ito dito mismo. Sabihin nating gusto ko ang mga ito sa isang bagong direktoryo tulad ng sa direktoryong-hanga ito. Gusto kong simulan ang pag-aayos, kaya ngayon ako pupunta upang magkaroon ng isang bagong direktoryo na tinatawag na hi. Ang nakuha ko ang lahat ng mga programa Ako write tinatawag hi. Kaya paano namin gawin iyon? 

MAG-AARAL: Baguhin ang direktoryo. 

Jason HIRSCHHORN: Oo. hi. Boop. mkdir hi_dir. Ito inireklamo dahil ako ay mayroon ng isang hi in dito. Kaya ngayon Mayroon akong isang direktoryo hi. Kaya ngayon gusto kong ilipat ang lahat ng bagay, lahat ng programa ay sumulat ako, Gusto kong ilipat ang mga ito sa direktoryo hi. Lamang malinis na mga bagay-bagay up. Paano ko gawin iyon? 

MAG-AARAL: [hindi marinig]. 

Jason HIRSCHHORN: Ang paglilipat ng ito, i-right? Kaya ng ilipat ipaalam. Oo? 

MAG-AARAL: Ano ang pagkakaiba sa pagitan ng hi at hi.c na kami ay mayroon. Jason HIRSCHHORN: Oh, hi.c ay ang aktwal na. Kaya iyon ang file na iyong na sinulat. Kaya kung ikaw ay pagpunta sa buksan ito sa gedit o Nano, na kung ano ang iyong tina-type sa. Kapag makatipon mo ito, pagkatapos ay makakakuha ka ng isang executable file. Iyon hi. Kaya kung nagbukas hi, na nangyayari upang maging isang bungkos ng mga walang kuwentang sa iyo. Talaga Ito ay magiging bungkos ng mga tagubilin computer. Ano ba ang balita? 

MAG-AARAL: Ano ang ibig sabihin ng lahat ang mga kulay? Asul ay malamang na direktoryo. Ano ang mga kulay-dilaw? 

Jason HIRSCHHORN: Yaong ang mga maipapatupad na file. Kaya kapag ako gumawa hi.c, ito Ibinigay me-- sa gayon ay maaari kong gawin ito. Tumatalon ang baril. Kaya alisin hi yes. Kaya ang ginagawa l pagkatapos ay hayaan. Wala akong nakikita hi. Kaya kapag gumawa ka, na kapag gawin ang mga programa na nagsulat at gumawa ka ng isang executable file. Kaya gumawa hi.c-- na rin, gumawa hi. Sa tingin ko siya nagpunta sa paglipas ng ito sa aralin. 

Ito ang mga bungkos ng compiler mga tagubilin. Kaya sa halip ng pagkakaroon upang aktwal na isulat kumalatong sa lahat ng mga ito. Ang mga ito ay mga flag. Isulat mo lang gawin. Kaya ito ay gumagawa ng mga maipapatupad na file. Kaya kapag gumawa ka l, mayroon ka na ngayong hi. Kaya ito ay kung ano ang iyong pagpunta sa aktwal na patakbuhin. At kaya patakbuhin mo na sa pamamagitan ng paggawa ./hi, at ito ay nagpapatakbo ng iyong programa. Ngunit kung sinusubukan kong gawin na may hi.c, hindi, ito ay hindi pagpunta sa gumana. Oo, gumagana na make-unawa? 

MAG-AARAL: MM-Hm. 

Jason HIRSCHHORN: Cool. Maghintay, nais kong sabihin ng iba pang bagay. Tunay na lang mabilis, sa kasong sinuman ay interesado, kapag lumipat ka na ng isang direktoryo, ito ay ang tuldok na tuldok. Mayroon ba ang sinuman ng ideya ng kung ano ang siguro lang ang isahan tuldok paraan? MAG-AARAL: [hindi marinig]. Jason HIRSCHHORN: Ito ay talaga ang kasalukuyang direktoryo. Kaya ito ay ang iyong kasalukuyang direktoryo. Kaya ako dito. Ako ay kahanga-hanga. Kung gagawin ko cd tuldok, hindi ito gumagawa ng anumang bagay. Inaabot ako sa aking kasalukuyang direktoryo. Kaya isang maliit na kalabisan, ngunit mayroon kang upang gawin iyon, kaya ./ pangalan ng iyong programa, upang patakbuhin ang iyong mga programa, kailangan mong gawin iyon. OK. 

MAG-AARAL: Kung gagawin mo cd tuldok tuldok tuldok, gayunpaman maraming mga tuldok Dadalhin ka nito na lamang na maraming mga direktoryo? 

Jason HIRSCHHORN: sabihin mo tulad ng cd tuldok tuldok tuldok tuldok? MAG-AARAL: Oo. Jason HIRSCHHORN: Hindi. Kaya talagang Tandaan l ko -l? Kung gagawin ko ibang bagay, ang maaari kong l -a. Kaya kung ano ang sinasabi ay -a Ipinapakita sa iyo ang lahat. Kaya Ipinapakita nito sa iyo ang mga bagay na Nakatago at mga bagay na hindi nakatago. Kaya kung napansin mo na kapag ginawa ko lamang l, lamang Nakita ko bagay na iyon, ang mga bagay na ginawa ko. Kung gagawin ko -a, ito ay pagpunta upang ipakita sa akin ang lahat. At kaya kasalukuyang direktoryo, direktoryo ng nasa itaas nito. Ay na magkaroon ng kahulugan? Oo? 

MAG-AARAL: Ngunit ang mga hindi talaga sa direktoryo. Ang kasalukuyang direktoryo ay wala sa sarili nito, kaya kung bakit ipakita ang mga may tuldok sa loob? 

Jason HIRSCHHORN: sabihin mo ito tulad ng hindi ito sa direktoryo. 

MAG-AARAL: I-right. Kaya mayroon kaming isang listahan ng mga bagay na sa direktoryo. 

Jason HIRSCHHORN: Sa tingin ko ito ay nasa direktoryo. Tulad -a Ipinapakita ng lahat, kahit na ito ay nakatago sa loob ng direktoryo. Kaya tingin ko ito ay isang ruta lamang sa kasalukuyang direktoryo kung na saysay. Ito ay isang maliit na recursive. Ito ay tulad ng pag-uumpisa. Ano ba ang balita? 

MAG-AARAL: Kaya ang sinabi mo -a palabas [hindi marinig]? Jason HIRSCHHORN: -a, oo. 

MAG-AARAL: Ano ang ginagawa nitong [hindi marinig]? Jason HIRSCHHORN: Well, halimbawa, sabihin bumalik hanggang sa tuktok. Karaniwang ito ay mga bagay na hindi mo dapat magpakaabala nang walang kapararakan sa at hindi mo kailangang mag-alala tungkol. Kaya ito ay uri ng home. Kung gagawin ko -a, nakakatanggap ako ng tonelada ng mga bagay-bagay. Lahat na mga bagay-bagay. At hindi mo kailangang gulo sa alinman sa mga bagay na iyon. Talagang huwag magsimula ng pagpunta in dito at mag-alis lamang ang mga bagay-bagay. 

[Tawa] 

Oo, ito ay isang maliit na bit higit pa umaliw mga bagay-bagay, ngunit ito ay mahusay na malaman. Sa tingin ko ito ay mahusay na malaman. Ngunit kung hindi mo nais mag-type -a sa kabuuan ng kursong ito, kalimutan lamang ito. Ano ba ang balita? 

MAG-AARAL: Ano ang mga l -l? Jason HIRSCHHORN: Iyon Ipinapakita sa iyo ng pahintulot. Talaga ginagamit mo na para sa mga pahintulot, kaya -l. Ipinapakita nito sa iyo ng kaunti bit sa karagdagang impormasyon, ngunit muli, ito ay isang maliit na kaunti pang umaliw mga bagay-bagay. Ito ang mga pahintulot lamang. Kaya ang mga pahintulot ng folder. Kaya lamang halimbawa, sabihin nating ginawa akong folder, kaya ang d ay kumakatawan sa direktoryo. Kaya mga mga direktoryo. At pagkatapos ay magbasa, magsulat, gawin. Kaya mga mga pahintulot para sa Sa tingin ko user, group, mundo. Lahat-lahat ng pagpunta Masyadong malayo. Na iyong pupuntahan upang pumunta sa ito tulad ng linggo mula ngayon, ngunit kaya lang alam mo na, mga mga pahintulot. Ano ba ang balita? MAG-AARAL: Maaari mong i-clear sa halip na laktawan lamang sa susunod na bagay, maaari you-- Jason HIRSCHHORN: mo nangangahulugang talagang tanggalin? Hindi ko alam. Hindi ko gawin iyon. Bakit nais mong gawin iyon? Bakit nais mong gawin iyon? Gusto ko ito. Nakatira ka sa dulo. Ikaw ay tulad ng hindi ko nais alinman sa mga ito. Iyon ang matinding. MAG-AARAL: [hindi marinig]. Jason HIRSCHHORN: Oo, maaari naming gawin iyon. Paumanhin, panggugulo sa ang laki ay ganap freaking sa akin out sa ngayon. Tara up. Oo, kaya ngayon ay hindi ako maaaring pumunta up na ngayon. Kaya lahat ko itinuro mo ay nawala nang permanente. Salamat sa inyo. Ginawa namin ang aming mga direktoryo. Ginawa namin ang aming mga file at mga bagay tulad ng iyon, kaya mayroon pa rin kaming ang lahat ng bagay na iyon. OK, makikita pumunta mabilis ko. 

Kaya tunay na mabilis. Kaya sabihin nating ako sa mga kahanga-hangang. Sabihin nating Nais kong ilipat lahat ng bagay sa bagong direktoryo dahil gusto ko lang upang ayusin ito, i-right? Kaya kung paano gagawin ko na. Ilipat. Kami ay pagpunta upang gamitin muli paglipat. Kaya ilipat hi.c. At ano ang maaari mong gawin ay mong magsimulang listahan ng mga bagay-bagay, at ang huling bagay na inilista mo ay kung saan ito ng pagpunta sa ilipat ito. Kaya ilipat hi.c, hi newhi newhi.c, hi_dir. At kaya inilipat ito sa lahat ng bagay ang huling bagay na iyong nabanggit. Kaya pagkatapos ay baguhin ang direktoryo, hi_dir l. Lahat ay nasa doon. Kaya maganda at higit pa nakaayos. 

OK, sabihin nating kamuhian ko aking orihinal na programa hi. Gusto kong makakuha ng pawalan nito. Paano ako makakakuha ng pawalan ng ito? Ano ba ang balita? 

MAG-AARAL: [hindi marinig]. Jason HIRSCHHORN: Hayaan ang sinasabi ni ko lang nais na tanggalin ang program, kaya lang hi. Hindi, ikaw ay karapatan sa iyo. Kaya Rm, ngunit gagawin mo Rm hi. Ito ay pagpunta sa magbibigay sa iyo ng kaunti babala. Ito ay pagpunta sa sabihin sigurado ka ba na sa iyo nais na tanggalin ito, at oo gagawin ko. Kung hindi mo nais na -prompt tulad na dahil hindi mo kailangang magkaroon ng panahon para sa mga babala, alisin ang -f. Ito ay isa pang flag. Ito ay tulad ng -l. Ito ay tulad ng -a. Ang mga ito ay lamang ang mga flag na ka na nagbibigay sa mga utos. Kaya alisin ang -f. -f f ay nangangahulugan na puwersa. Kaya pilitin ito. Hindi ko nais na-prompt. Kaya alisin ang -f. Ni gawin Hayaan hi.c. Naging mapupuksa ang ito. Hindi nito sabihin sa akin. 

Ngunit sabihin nating sa halip ako tapos ka na sa direktoryong ito. Gusto kong makakuha ng pawalan ng direktoryo. Kaya ko alisin hi_dir. Hindi, hindi iyon gumana. Hindi, kaya hindi ito ay magbibigay-daan ako alisin ang isang direktoryo. May isang ideya ba ang sinuman? 

MAG-AARAL: Ay itong alisin dir? Jason HIRSCHHORN: Kaya alisin tulad nito? 

MAG-AARAL: Hindi. Lamang ang [hindi marinig]. Jason HIRSCHHORN: Hindi, ngayon walang hi. Mayroong hi_dir lamang. Kaya ito ay ang direktoryo. Kaya talaga kung ano ang gusto mong gawin is-- naku, huwag mayroon kang ideya? Nakakakita ako ng tulad ng isang kalahati kamay. 

MAG-AARAL: [hindi marinig]. Jason HIRSCHHORN: OK. 

MAG-AARAL: [hindi marinig]. 

Jason HIRSCHHORN: OK. Kaya kung gusto kong alisin isang direktoryo, alisin -r. Iyon ang recursive. Kaya alisin na direktoryo ng recursive. Kaya gusto ko sa iyo upang pumunta sa directory na iyon, alisin ang lahat ng bagay sa direktoryo, at pagkatapos ay makakuha ng pawalan ng direktoryo. At pagkatapos ay ako pagpunta sa f pati na rin, dahil ako ayaw ito upang i-prompt sa akin na may mga babala matapos itong aalis ng bawat solong file. Kaya alisin -rf hi_dir. Boom, ito ay nawala. Lamang maging maingat kung saan ka gumagamit na iyon. Pupunta ako sa paggamit nito Masyadong dito. -rf-hanga ito. Ito ay nawala. Mag-ingat kung saan ka gumagamit na iyon. Kung gumagamit ka na dito at i-type ang isang bagay tulad nito, huwag kailanman gawin iyon. Iyon ay magtatanggal lahat ng bagay sa iyong appliance nang hindi pagbibigay ng babala sa iyo. At tapos ko na iyon. Nagtatakda Grading problema sa 04:00, ako ay sinusubukan alisin set direktoryo problema, at ginawa ko ito. At tulad ng oh aking diyos ako ay. Huwag do-- Sinubukan kong kanselahin ito. Maaari mong kanselahin. Magkakansela lamang Command C ang lahat ng bagay, ngunit tinanggal ko na tulad ng 75%. Kaya wasak ko ito. At mga taong gawin iyon. Ginagawa ito sa lahat. Huwag gawin ito kahit na ito semestre. Sucks ito. Kinakabahan Nagkakaroon ako ng mga ito dito. Pupunta ako upang tanggalin ito. 

[Tawa] Maaari mong isipin? OK, mga tanong. Oo? 

MAG-AARAL: Kaya kung gagawin namin ang lahat ng bagay ang iyong ginagawa dito, ay ang parehong tulad ng pagpunta sa aktwal -file ng pag-save ng [hindi marinig]. Jason HIRSCHHORN: Oh, ibig mo bang sabihin sa pamamagitan ng gedit. MAG-AARAL: Oo. Jason HIRSCHHORN: Oo ito ay. gedit ay kapaki-pakinabang. Kaya gedit ay lubos na kapaki-pakinabang. Sa klase na ito, maaari mong gawin ang isang maraming mga bagay sa pamamagitan ng gedit. Maaari mong i-save. Maaari mong palitan ang pangalan. Maaari mong ilipat ang mga file at mga bagay tulad na, ngunit truthfully lamang kapag pumunta sa 50-- mahusay na ikaw ay nasa 50-- 51, kung pumunta ka sa 61, ito ay magiging iyong buhay. Ito ang command line. Ito ay kung saan ikaw ay programa para sa natitirang bahagi ng iyong buhay, kaya gamitin Siguradong gedit kung gusto mo. Talagang isang mahusay na paraan upang magsimula. Para sa Nagtatakda ang unang problema, talagang gamitin, ngunit bawat isang beses sa isang habang subukan upang makakuha ng higit pang mga kumportableng higit pa gamit na may mga argumento command line. Ngunit maaari ka, talagang. Ano ba ang balita? 

MAG-AARAL: Kaya kapag gusto naming tanggalin isa sa mga file na iyong ginawa namin, mayroong dalawang paraan. [Hindi marinig]. May paraan ba kapag ikaw ay tinatanggal ang isang direktoryo upang humingi ng prompt kaya mo huwag napupunta pagtanggal nito? Jason HIRSCHHORN: Rm -r. Kaya huwag pilitin ito. Kaya Rm -r. Ito ay pagpunta sa pumunta sa pamamagitan ng recursively, tanggalin ang lahat ng bagay, hihingin sa iyo pagkatapos ng lahat ng bagay, na ay humimok sa iyo na mani. Tulad ko halos eksklusibo gawin Rm -f at Rm -rf, patuloy lang. Ako tulad ng hindi ko magkaroon ng panahon. Isa akong abala ang tao. Ang lahat ng mga karapatan, kung ano ang up? Oo. 

MAG-AARAL: Mayroon bang isang undo, o isang basura bin, o anumang bagay tulad na? Jason HIRSCHHORN: Hindi. [Tawa] Maaari akong bumalik at makuha ang aking appliance na ko lang tinanggal, hindi. Hindi, hindi, hindi. Kung gagawin mo Rm, dapat itong nawala. Ano ba ang balita? 

MAG-AARAL: Kaya maaari mong [Hindi marinig] magkasama. Jason HIRSCHHORN: Oo, tulad lamang na. Kaya halimbawa, nakita mo ang Rm -rf. Ipagpalagay natin na nais kong gawin l -la, ito ay nagpapakita sa akin ang lahat ng bagay, kahit na nakatago bagay sa kanilang pahintulot. 

MAG-AARAL: Kaya pagkatapos r, ang -r flag, kung kami ay walang iyon, hindi namin mabubura ang isang direktoryo, i-right? 

Jason HIRSCHHORN: I-right. 

MAG-AARAL: Kaya na nagsasabi na gusto naming gawin ang isang bagay sa direktoryo? Iyan ba kung ano ang ibig sabihin na? 

Jason HIRSCHHORN: -r nangangahulugan recursively. Kaya ang isang direktoryo ay pagpunta sa May mga file sa loob nito, tama? Kaya kung ano ang gusto mo lang gawin ay sa iyo gustong pumunta sa directory na iyon, tanggalin ang lahat ng bagay, ang lahat ng mga mga file sa directory na iyon, pagkatapos ay i-pop out at tanggalin ang ang aktwal na direktoryo. Kaya ang -r nangangahulugan recursive, gawin ito lahat ng recursively kung na saysay. Oo. 

MAG-AARAL: Kaya may mga direktoryo [Hindi marinig] at tanggalin lamang ito. O gawin still-- mo 

Jason HIRSCHHORN: Subukan Hayaan. Kaya mkdir walang laman. Alisin ang laman. Hindi. 

MAG-AARAL: Hindi, kaya kailangan the-- ka pa rin 

Jason HIRSCHHORN: Oo, palagi. Kaya -r, -rf, walang laman. Kahanga-hanga. Ngayon tanong? Sa tingin ko na ang iyong pag-crash Siyempre sa mga bagay-bagay sa linya ng command. Ang anumang mga katanungan, dahil kami ay pagpunta sa lundagan sa mga uri ng data, at mga loop, at lahat ng bagay na iyon? Ano ba ang balita? 

MAG-AARAL: Wala akong CS50 na nagpapakita ng bilang isa sa aking mga direktoryo. Normal ba iyon? 

Jason HIRSCHHORN: Oh, oo. Iyon ang mina. Oo, na kung saan ang aking mga solusyon sa iyong mga bagay-bagay ay. 

[Tawa] 

Kaya oo, na ganap normal. Sa tingin ko ikaw ay malamang na May mga apat na lang. Sa tingin ko na maaaring maging normal. Oo. OK, ang anumang higit pang mga tanong? Alam ko na sobrang bilis. Ano ba ang balita? 

MAG-AARAL: Nakita ko ang asul na berdeng kulay. Ano iyon? 

Jason HIRSCHHORN: Nangangahulugan iyon na direktoryo. MAG-AARAL: At bughaw na ito? 

Jason HIRSCHHORN: Oh, ibig mong sabihin ang asul na berde? 

MAG-AARAL: Hindi. 

Jason HIRSCHHORN: Ito asul na berde? 

MAG-AARAL: Hindi. Kapag listed-- mo Jason HIRSCHHORN: Oh. Tulad ng ito? 

MAG-AARAL: Oo, ang mga icon. 

Jason HIRSCHHORN: Oh, ito. Hindi ko alam. Ano ang ibig sabihin na? Kaya tila na maging nagtuturo sa isang direktoryo. 

MAG-AARAL: Ito halos kamukha alyas. 

Jason HIRSCHHORN: Ito ay maaaring maging. Hindi mo na kailangang malaman na. Ngayon tanong? Kahanga-hanga. Kung mayroon kang anumang mga tanong, Alam ko na marami. Isang maraming ng impormasyong ito ay magiging online. Makikita ko bang ilagay ito sa online para sa iyo guys. Seksyon B ay magiging online pati na rin. O kaya kung mayroon kang mga tanong, makabuo lamang at humingi sa akin. Narito kang pumunta. Kaya ngayon Sharon at Hannah ay pumunta sa paglipas ng ilang ng logic sa likod ng problema magtakda ng isang. 

Sharon: Oh aking diyos. Problema. 

Hannah: Sa pansamantala, ako Hanna. Ito ay Sharon. Kami ay parehong CS50 TFs, at pupuntahan namin upang bigyan ka ng isang maliit na panimula sa ilang mga mahahalagang bagay para sa problema magtakda ng isang. Lahat mula sa mga uri ng data sa conditionals sa para sa loop. Loop sa pangkalahatan. 

Sharon: At sa katapusan, namin Dadalhin ng isang pagtingin sa P-set ang isa, at kung ano ang kailangan mong malaman para dito. Kaya magsimula na may mga uri ng data ipaalam. Dapat na pamilyar sa mo guys mga na-highlight sa asul. Kaya maaari naming magsimula sa mga ints. ints ay integer, kaya isa, dalawa, tatlo, apat. sa kamay, lumulutang na puntos. Tulad ng integer na may desimal, kaya 5.2 o kahit 5.0. Char ay na character tulad ng A, B, C. At isang string, alam mo ang lahat ng mga guys. Tulad ng CS50 o halo at mundo. 

Bool ay isang Boolean, kaya kami ay totoo at hindi totoo ng aming Boolean. Kaya kung may isang bagay computes sa truth-- 5 ay katumbas ng 5, na computes sa true, at kung kami ay may 5 ay katumbas ng 4, na false, upang computes sa false. At dito ang mga namin na naiugnay laki ng lahat ng mga uri ng data. At kailangan mong malaman ito para sa iyong mga pagsusulit, kaya ito ay maaaring maging kapaki-pakinabang sa matandaan, ngunit Magpo-post kami ng mga ito. Sa totoo lang na ito ay naka-post na. Kaya dapat kang maging pamilyar sa ang mga naka-highlight sa asul. 

Jason HIRSCHHORN: Real mabilis, lamang sa kaso mo nais na malaman ang pagkakaiba sa pagitan ng isang pansamantalang trabaho at isang string. Kaya kapag sumusulat ka ng bagay, sa tuwing mayroon kang isang bagay tulad ng "hi," na pupuntahan na isang string. Kaya kung mayroong dalawang quote, ito ay isang string. Ngunit kung ako ay sa isang "h" tulad na, na isang string. Ngunit kung mayroon lamang ako ng isa quote, iyon ay isang pansamantalang trabaho. At kaya kung ano ang pagkakaiba maaari mong hilingin. Well, ang pagkakaiba ay ito ay isang byte ng memorya. Ito ay 4 na byte ng memorya. 

Sharon: lumulutang? Ilarawan itong muli? OK, ito ay uri ng tulad ng numero na may isang decimal point dito, kaya 5.2 o kahit 5.0 ay isang float kumpara sa 5 lamang ay isang int. MAG-AARAL: [hindi marinig]. 

Sharon: Oh, maaari itong magkaroon ng maraming mga decimal point, kaya 5.675-3.1415. Oo? 

MAG-AARAL: kailangan naming malaman Gawin ang lahat ng mga laki para sa? Sharon: Oo. MAG-AARAL: [hindi marinig]. 

Sharon: Hindi mo mag-alala tungkol sa puting mga pa. 

Hannah: Ang mga tala ay nai-post sa CS50.net/sections. MAG-AARAL: lang ng -usisa, mayroong isang utility sa pag-alam sa laki ng mga file ikaw ay pagtawag sa gayon ay dapat namin itong malaman? 

Sharon: Kaya ito ay ang mga uri ng data, ngunit yes. Kaya sa kasong ito, na gagawin isa ng mas maraming memorya o higit pang espasyo? 

Jason HIRSCHHORN: Kaya para sa isang kongkretong halimbawa, sa palagay ko hanay problema apat o limang, kami ay pagpunta sa magbibigay sa iyo ng isang bungkos ng data, at isa lamang kailangang bagtasin ang data na iyon. Kaya ito ay kapaki-pakinabang upang malaman na kung mayroon kang napakaraming mga integer, na magiging kung ano. Kaya sabihin nating Nagbigay ako sa iyo ng sampung integer, kung ano ang laki ng iyon? MAG-AARAL: 40. Jason HIRSCHHORN: 40 bytes, kanan. Kaya maaaring kailangan mong malaman na OK, kailangan ko upang lumaktaw 40 bytes. Kaya sabihin nating sa halip ito ay 40 na karakter, then-- sabihin nating Nagbigay ako sa iyo ng 10 na karakter, pagkatapos ay alam mo na, OK, ako lamang kailangan upang lumaktaw 10 bytes. Kaya napaka-kapaki-pakinabang na malaman ang laki ng aktwal na mga uri ng data, dahil maraming beses na ikaw ay ay tumatalon sa paligid ng data, kaya kailangan mong malaman kung gaano kalayo upang lumipat. 

MAG-AARAL: Ano ang pagkakaiba sa pagitan ng mga quotes at isang quote? 

Jason HIRSCHHORN: OK, dalawang mga quote ay isang string. Isang quote ay isang pansamantalang trabaho. 

MAG-AARAL: Tulad ng operationally, ano ang pagkakaiba? Kapwa nila sabihin hi. Jason HIRSCHHORN: Oh, paumanhin. Ito ay h lamang. Paumanhin, ito ay hindi malinaw. 

MAG-AARAL: Kaya ang tuktok one-- Jason HIRSCHHORN: Ito ay isang string, oo. Kaya dalawang character, tama? String, hi. Ngunit ipaalam sabihin ng ko lang ay nagkaroon ng isang solong character, kung ko bang ilagay ang dalawang mga panipi sa paligid h lamang, na isang string. Ito ay isang string h. Ay na magkaroon ng kahulugan? Kaya ito ay apat na bytes. Ngunit sabihin nating ko Kaka mapupuksa ng na ang isang lamang ilagay isa. Isang quote. Ito ay isang pansamantalang trabaho, isang pansamantalang trabaho h ngayon. Kaya eksaktong parehong bagay, ibang uri ng data. Ito ay isa lamang byte, samantalang ang string ay apat na bytes. Oo. MAG-AARAL: Kaya kung sinusubukan upang mag-imbak ng salita tulad ng David, Gusto mo nais na gumamit ng isang string dahil nang walang kinalaman sa kung gaano katagal ang string ay, aabutin lamang ng apat na bytes maliban kung ito ay isang mahaba mahaba o ng double, na kung saan case-- kaya kung ay umaabot nang lampas sa apat na mga character, at pagkatapos ay Gusto mo bang gumawa ito sa string. Iyan ba ang pangkalahatang logic sa likod. Jason HIRSCHHORN: Kung ito ay umaabot nang higit pa sa isang character, ito ay isang string. 

MAG-AARAL: Kaya walang [hindi marinig] sa pag-iimbak ng isang apat na titik salita bilang apat na mga indibidwal o tatlong titik salita bilang tatlong mga indibidwal na mga character dahil iyon ay magiging tatlong bytes lamang, bilang kabaligtaran sa tatlong bahagi string. Jason HIRSCHHORN: maaari mong gawin iyon. Maaari mong gawin iyon, ngunit gagawin ko hindi palagay na talagang sulit, dahil ka lamang sa pag-save ng isang byte. Alam mo kung ano ang ako sinasabi ko? Sa malaking scheme ng mga bagay, na hindi talagang mahalaga. Ngunit halimbawa, printf, kung ka sa pag-print f at mo may tatlong karakter Maaari kang mag-print na out-- hayaan sabihin sa iyo C-A-T, Maaari kang mag-print out ng pusa sa pamamagitan lamang ng ng paggawa ng isa char isang pansamantalang trabaho sa isang pansamantalang trabaho, o maaari mong i-print ang string pusa. Ito ay ang eksaktong parehong bagay. Kaya maaari mong gawin ito tulad na, but-- 

MAG-AARAL: Hindi ito nangyayari upang i-save mo ang ganoong karaming. 

Jason HIRSCHHORN: Oo. Ang sakit ng ulo na gagawin ito mang-ulok ay hindi katumbas ng halaga. Oo? 

MAG-AARAL: Halimbawa, na kayo ay nagkaroon ng h na may isang kumpara sa dalawa, ang single o double quotes. Bakit mo gustong i-save isang solong titik bilang isang string. Ano ang layunin ay na kailanman maghatid? Jason HIRSCHHORN: Hindi ko alam. Ibig kong sabihin, ito talaga depende sa programa. Halimbawa, sa palagay ko sa paglaon makakakuha ka ng mga bagay-bagay sa linya ng command. Kaya halimbawa, sa halip na sa akin na humihiling sa iyo para sa isang integer-- ng paumanhin, Maaari ba akong makipag-usap sa iyo? Hannah: Oo. 

Jason HIRSCHHORN: Kaya halimbawa, sa halip ng akin na humihiling ng isang bagay may get pagtatapos, na Sa palagay ko ay maaaring nakakita ka ng isang panayam, Maaaring magkaroon ng linya ng command. Na-type mo lang ito sa sa linya ng command. Ito ay magiging tulad ng - / hello4 o isang bagay, o helloh h, anumang. Ito gawin mo sa command line sa halip na hinihingi para dito, na command line ay palaging isang string, kung ito ay isang apat o isang h, na palaging isang string. Kaya na isang halimbawa ng kung maaari kang magkaroon ng isang pang-isahan titik o isang pang-isahan bilang kinakatawan bilang isang string. Sharon: Lahat ng karapatan. At pagkatapos ay narito ang ilang mga pangunahing operator. Sana pamilyar ka sa mga ang unang apat na lamang sa pangkalahatan. Kaya ang pagdaragdag ng doon, pagbabawas, -multiply, at paghahati, at tiyakin na ginagamit mo ang ang karapatan na pagpindot. 

At pagkatapos ay may ang modulo din, na ang ilang mga ng sa iyo ay maaaring maging napaka-pamilyar sa. At kung ano ang ginagawa ng modulo ay ang kung lubos naming halimbawa ang 4% 2, tumatagal ang natitira sa kung ano na ang ginagawa sa dibisyong ito. Kaya 4 na hinati sa 2 ay 2, at walang natitira. 4 paghati-hatiin sa pamamagitan ng 3 ay 1 at 1/3, at sa gayon natitira 1. Kaya ito computes sa isa. At pagkatapos ay 4% 5 ay ang fraction 4/5, at ang natitira ay 4. Ay na magkaroon ng kahulugan? OK, cool. At sinusunod namin ang PEMDAS dito masyadong. 

Kaya ang ilang mga Boolean expression. Kaya mo guys na nakita ay katumbas ng equals upang ihambing, sabihin nating, dalawang numero. Kaya kung 5 ay katumbas ay katumbas ng 5, na computes sa true. Tiyakin na mayroon ka lamang ng isang katumbas sign. Para sa mga hindi equals ito, Bang o tandang. 

Hannah: Dalawang katumbas ng palatandaan kapag gumawa ka na pagkakapantay-pantay. 

Sharon: Oh, oo. Tiyakin na hindi mo gusto magkaroon ng isang katumbas sign. At pagkatapos ay para sa mga hindi equals, ito ay katumbas ng putok. At pagkatapos ay maaari mong tingnan sa pamamagitan ng para sa mas mababa, mas mataas kaysa sa. At pagkatapos ay mayroon kaming mga lohikal at at lohikal o dito mismo. At kung ano na ang ginagawa ay, kung ang tandaan mo sa scratch kapag nagkaroon ka na bloke na sinabi at, at pagkatapos ay sa iyo maaaring umangkop dalawang magkaibang mga piraso doon, iyon ang na ito at ginagawa. At tiyakin na gawin mo ang dalawang mga ampersand. At ang key na ito maaari mong mahanap patungo sa karapatan, karapatan sa ilalim ng iyong pindutang Delete. Tanong? 

MAG-AARAL: Ano ang [hindi marinig]? 

Sharon: OK, kaya kung gagawin mo lamang isa, naghahambing ka ng mga piraso. Kaya kung maalala mo kung ano ang mga piraso ay, ang mga ito ay 0 at 1, at sa gayon na naghahambing ng iba pang bagay. Kaya kami ay pagpunta upang tumutok sa mga ito sa ngayon. 

Jason HIRSCHHORN: Kaya isa ay katumbas ng ay tulad ng takdang-aralin, tama? Kaya tulad ng int x ay katumbas ng 4. Sinasabi mo x na variable ay katumbas ng 4. Kaya 1 ay katumbas ay pagtatalaga, ngunit ang ands at ang tubo o ang mga bar, tulad ng Sharon sinabi, ang mga ito ay bitwise operator. Hindi mo kailangang mag-alala tungkol iyon. 

MAG-AARAL: Kailan ginagamit mo ang lohikal at at lohikal o muli? Ko lang nakalimutan kapag gumawa ka na. 

Hannah: Oo naman, kaya kung sakaling nais mong upang suriin kung ang dalawang bagay ay totoo, halimbawa, sabihin nating Gusto kong suriin na ang bilang na ito ay sa pagitan ng 5 at 15, Gusto ko sabihin tiyakin na ang bilang ay higit sa 5. Kaya sabihin nating kung x ay mas malaki sa 5 at mas mababa sa 15. Kaya sa pagkakasunod-sunod para sa buong pahayag upang suriin sa true, kailangan mo pareho ng mga uri ng mga sub pahayag upang suriin ang totoo. Gamit o kailangan mo lang isa sa dalawang o pareho. MAG-AARAL: Mahusay, salamat sa iyo. 

Sharon: At din sa simula, ako bang ng maraming ng iyong proyekto kayo ay nagkaroon ng kung pagpindot sa gilid o kung pagpindot ng isa pang engkanto pagkatapos ay i-bounce o isang bagay. Hannah: Lahat ng karapatan, kaya kung bakit ginagawa namin nagmamalasakit sa lahat ng mga boolean? Mayroon kaming mga kaayusan na iyong nakikita sa scratch na tinatawag na conditionals. At conditionals ang anumang bagay sa bumuo ng kung ilang mga kondisyon o ilang Boolean Totoo, pagkatapos ay gawin ang mga code sa pagitan ng mga kulot tirante. Kaya maaari mong makita sa kanan dito ay ang scratch block. Mayroon kang ito kung pagkatapos, at anumang bagay na napupunta sa maliit na hugis na Mukhang this-- i hindi alam kung ano ang ikaw ay tumawag that-- na pupuntahan maging Boolean o kundisyon. 

Kaya muli, isang Boolean o kondisyon ay anumang bagay na alinman suriin sa true o false. At muli, maaari mong pagsamahin ang boolean. Maaari kang magkaroon, muli, x ay mas malaki sa 5 at x ay mas mababa sa 15. O maaari lamang mayroon kang isa ng mga x ay mas mababa sa 5. 

OK, kaya sa C Ito ay sa kaliwa. Ito ay lamang ang mga keyword na kung. Sa panaklong, ang kalagayan o ang Boolean. At pagkatapos ay ang code sa pagitan ng mga dalawang kulot brace Ipapakita lamang isagawa, ay tatakbo lamang kung na kalagayan o na Boolean ay totoo. Ay na magkaroon ng kahulugan? Kahanga-hanga. OK. At pagkatapos ay bilang maaari mong na nakita sa simula, maaari naming ring magdagdag sa isang iba pa, na kung saan ay isa lamang anumang bagay sa pagitan ng kulot brace sa ilalim ng ibang tao ay maisagawa lamang kung ang kondisyon ay hindi totoo. Magkaroon ng kahulugan? Ang anumang mga katanungan sa mga dalawang? Kahanga-hanga. 

Ayos. Kaya narito ang isang mabilis na halimbawa. Sabihin nating gusto naming matukoy, batay sa oras, kung dapat naming sabihin magandang umaga o magandang gabi. Sasabihin kong kung ito ay bago 12:00 ng tanghali, kami ay pagpunta sa sabihin magandang umaga, kung hindi man kami ay pagpunta upang sabihin magandang gabi. At kapag sinabi ko na kung hindi man, na katumbas sa C sa iba. Kaya kami ay pagpunta upang suriin kung ang mga panahon ng militar ay mas mababa sa 12:00, sabihin magandang umaga. Kung hindi man sabihin magandang gabi. 

MAG-AARAL: Kaya gusto namin talagang makakuha ng pag-input na para sa militar pagkakataon gamit ang get string. Hannah: I-right. Nakatulong ba lugar ng iba pa naming talaga mayroon na magbigay ng impormasyon na iyon. I-right dito wala itong mga halaga. Hindi namin kahit na ipinahayag ito. Ipinapalagay ko na lugar sa itaas ang program na ito ipinahayag ko ang panahon, o tanungin ang oras, or-- anumang bagay na may halimbawang ito? Kahanga-hanga. 

OK, ngayon ay mayroon kaming bilang karagdagan sa na simpleng kung tao na format, mayroon kaming dalawang iba pang mga iba't ibang mga istraktura. Mayroon kaming kaya muna ang switch pahayag, at narito ang pangkalahatang anyo ng isang lumipat statement. Mayroon kang magpalipat-lipat ang mga keyword sa parehong paraan mayroon ka ng mga keyword kung. At pagkatapos ay isang input, sa kasong ito n. Kaya ito ay maaari lamang gumana sa integer. Kaya pag-input na may n upang maging isang integer, OK? At kami ay pagpunta sa sundin ang isa sa mga kasong ito depende sa kung ano ang halaga n ay. 

Kaya sa kasong ito, una mong ikumpara ay n katumbas ng pare-pareho ng isa, kung ito ay, gawin ang lahat uri ng may mga yupi sa paglipas dito. Maaari ko bang ituro dito dahil hindi ako masyadong maikli. Kung ito ay hindi katumbas ng pare-pareho ng isa at sa halip ay katumbas ng pare-pareho ang dalawa, kami ay pagpunta sa sundin ang pangalawang bloke, at maaari naming gawin ito para sa maraming beses bilang gusto naming, at pagkatapos ay default na kung hindi ito tumugma sa anumang ng mga kaso sa itaas, isakatuparan ang code na iyon. Ang anumang mga tanong dito? Isa Ito ay isang maliit na mas komplikado. Oo? 

MAG-AARAL: Break signifying ano? 

Hannah: Oo naman, kaya sa sandaling ipasok namin na bloke, kung malaman namin, sabihin nating, ang aming n ay sa katunayan katumbas ng pare-pareho ng isa, ipasok namin na i-block pagkatapos ng colon. Ginagawa namin ang anumang ay sa na linya ng pagkomento, at pagkatapos ay namin masira, na nangangahulugang makuha namin out ng switch statement ganap. MAG-AARAL: OK. 

Hannah: MM-Hm? 

MAG-AARAL: ba ang indentation kinakailangan, o kailangan [hindi marinig]? Hannah: Oo naman. Kaya, gaya ng lagi, indentation Hindi mahigpit na kinakailangan. Ang computer na hindi pakialam kung i-indent sa iyo. Kami, bilang mga tao na sa pagbabasa ng iyong code, gawin ang pag-aalaga. Kaya ito ay isang mas madaling i- tumingin hanggang sa screen at tingnan, oh, alam ko kung ano mismo ang ang mangyayari kapag n ay katumbas ng pare-pareho ang isa. Kung nagkaroon ako random indents, ako hindi magagawang upang sabihin sa gayon madali. Oo? 

MAG-AARAL: Kaya kung nais ng isang user sa pumili ng isa sa mga pagpipilian na na mayroon kami sa listahan, gagawin ginagamit namin, Sa tingin ko, [hindi marinig], ngunit makakuha ng isang integer mula sa ang mga ito at ilagay na sa n? Hannah: Eksakto kanan. Kaya sabihin nating gusto naming upang suriin kung anong integer. Sinabi namin oh, ipasok ang isang integer sa pagitan ng 0 at 5, sabihin nating. Maaari naming hilingin na n, hilingin para sa halagang iyon, at pagkatapos ay mayroon ang bawat isa sa mga kasong iyon. At muli, ito ay isang bagay na maaari kaming napaka madaling gawin sa kung pahayag, tama? Maaari kaming may kung katumbas ng case isa, kung katumbas ng case ng dalawa, kung katumbas ng case tatlo, kaya sa at iba pa. Ito ay isang maliit na bit mas mabilis at isang maliit na mas malinis. Ito ay uri ng lamang sa isang masarap na istraktura ngayon. MAG-AARAL: Mas mabilis na bilang nakasulat? O kaya ay patakbuhin ito sa computer ng isang maliit na mas mabilis? 

Hannah: Ito ay nagpapatakbo ng isang maliit na mas mabilis. Oo? 

MAG-AARAL: Kaya ang double dash ay magkomento lamang or-- 

Hannah: Oh, ako kaya paumanhin. Hindi ko ituro na out. OK, kung mayroon kang na //, ay isang komento. Lamang // ay isang komento. Kaya anumang oras sa computer nakikita na, ito ay pagpunta sasabihin OK, anumang bagay na sumusunod ito, mangyari lamang na ako pupunta na huwag pansinin. Pupunta ako upang magpanggap sa iyo hindi kailanman kahit na sinulat na iyon. 

MAG-AARAL: Kaya ito [hindi marinig]. 

Hannah: Ito ang ganap na walang. Ngunit kung nagsulat ako ng isang bagay na tulad ng sa unang komento na sinulat ko sa halip printf sabihin binabati kita na ipinasok mo pare-pareho ng isa, na maaaring maging isang bagay. Oo? 

MAG-AARAL: Kaya sa tunay na buhay, ang kaso gusto lamang maging lamang ng isang numero at pagkatapos ay [hindi marinig] ay magiging isa pang integer. 

Hannah: Eksaktong. 

MAG-AARAL: At huwag kailangan mo ng ellipses? 

Hannah: Paumanhin? 

MAG-AARAL: Huwag mo na kailangan na? 

Hannah: Oh, walang. Sorry. Iyon ay isa lamang upang ipahiwatig na maaari mong pumunta sa para sa maraming mga kaso hangga't gusto mo. Gawin ng isang kongkretong halimbawa natin iyon Maaaring gawin ng mga bagay na medyo mas malinaw. OK, kaya sabihin nating sabihin ko, OK, bigyan ako ng integer n na kumakatawan sa isang numero ng klase, partikular na isang computer science klase numero. Kaya kung bibigyan ka sa akin 50, Pupunta ako sa sabihin mahusay. CS50 ay isang panimula sa computer na agham, at pagkatapos ay ako pagpunta sa masira. Kaya nangangahulugan na lumipat akong hindi sumali sa ang buong switch statement, kaya ngayon ako tapos na sa pagtakbo ang code, OK? 

Kung ibinigay mo sa akin sa halip 51, nais kong i-print ang pangalawang statement. At pagkatapos ay kung ibinigay mo sa akin ang ilang numerong iyon ay hindi 50 o 51, Pupunta ako sa sabihin ng paumanhin, hindi ako Hindi pamilyar sa klase na iyon. Oo? 

MAG-AARAL: Wala kang break. 

Hannah: Sorry, wala akong bakasyon? 

MAG-AARAL: Paano kung. 

Hannah: Oh, anong kung hindi mo na kailangang bakasyon? Mahusay na pinag-uusapan. Kaya kung ano ang mangyayari ay gusto mong pumunta sa, at gusto mong suriin am kasing-halaga ko sa 50? At sabihin nating, oo, kayo ay katumbas ng 50, na nais mong i-print ang statement. At pagkatapos ay gusto mong magpatuloy-e-execute, kaya nais mong sabihin ako kasing-halaga ko sa 51? At gusto mong pumunta sa at pumunta sa bawat kaso na tulad nang? Oo? 

MAG-AARAL: Ay ang default na linya kahalintulad na sinasabi ng iba? Hannah: Eksaktong. Mabuti. Ito ay tulad ng uri ng catch lahat. 

MAG-AARAL: Kaya kung hindi ka magkaroon ng pahinga at pagkatapos ay isa sa mga kaso na pahayag Totoo, at pagkatapos nito Sinabi pagtaas n pamamagitan ng 1, Pagkatapos ay awtomatikong gagawin ito gawin ang kasunod. Ito ay suriin ang kaso 51, at pagkatapos ay ipakita na pati na rin? Hannah: Oo, sa palagay ko na gagana. Kaya maaari mong uri ng makakuha ng maraming kalat, kaya ng pahinga ay isang mabuting bagay na magkaroon. Oo? MAG-AARAL: Kapag walang pahinga Gusto ito gawin ang default? Hannah: Iyon ay isang mahusay na tanong. Jason HIRSCHHORN: Sa tingin ko ay tumatakbo lamang ito. Kaya kung wala kang break-- kaya sabihin nating ang ginawa ko 50 at naka-check 50, at gusto itong i-print na out. I-print ang CS50 bilang panimula sa computer science. Wala kang pahinga, dapat itong pumunta at panatilihin ang pagpunta hanggang sa mga hit ito ng pahinga. Kaya kung walang pahinga, ito ay pagpunta sa panatilihin ang pagpunta. Ito ay pagpunta sa i-print ang lahat ng iba pa out. 

Hannah: Kaya hulaan ko na gagawin maging kabilang ang default na. 

Jason HIRSCHHORN: Oo. 

Hannah: Magandang katanungan. Oo? MAG-AARAL: Ay isinasaalang-alang kaso ng isang function? Hannah: Sorry? MAG-AARAL: Ay isinasaalang-alang kaso ng isang function? Hannah: Ay kaso itinuturing na isang function. Gusto ko mag-atubiling sabihin iyon. 

Jason HIRSCHHORN: Kaya normal kapag nakita mo ang mga pag-andar ang mga ito ay nasa kulot brace. Kaya halimbawa, kapag tiningnan mo sa iyong code, halimbawa, ang mga pangunahing. Ito ay pangunahing bukas paren, pagkatapos ay walang bisa, malapit paren. Functions-- ang mga ito ay isa lamang palaging makikita mo ang mga panaklong. Kaya kaso kung sakaling hindi mayroon kang anumang mga panaklong, na ang iyong mga bakas na na hindi isang function. Pero hindi. Oo? 

MAG-AARAL: ang Kaya pagkatapos na gumawa ng ilipat ang isang function? 

Hannah: ba na ginagawang lumipat ng isang function. 

MAG-AARAL: Sa pakiramdam na maglagay ka ng isang bagay sa, nagbibigay sa iyo ng isa sa mga kaso. Jason HIRSCHHORN: ko Hindi tumawag ito ng isang function. Hindi lahat ng may parens ay isang function. Ibig kong sabihin na ang isang bakas na ito ay isang function. Hindi ko sasabihin paglipat ay isang -andar dahil hindi ito talaga bumabalik kahit ano. Makakakuha ka ng sa na higit pa. 

Hannah: Oo, sa tingin lamang ng ito bilang isang kung istraktura. MAG-AARAL: Maaari mong ma-nest ang ito sa isang kung kaayusan? Hannah: Oo, ma-nest ang mo halos kahit ano. 

MAG-AARAL: Sinabi ng Barry ang quote mga uri ng tulad ng kapareho ng iba. Kaya mo maaaring palitan ang mga panipi sa iba? 

Hannah: Wala sa partikular na istraktura dahil ang paglipat pahayag ay umaasa ang salitang default. Alam ng default na computer ng Ibig sabihin isang bagay na espesyal, na ay nangangahulugang ang catch ang lahat. Ano pa sa na ito. Mayroon kaming isa pang upang makakuha ng sa pamamagitan ng. Oo? 

MAG-AARAL: [hindi marinig]. Hannah: Pagkakaiba sa pagitan ng gamit ang isang tuldok-kuwit at tutuldok. Kaya may semicolon ay palaging upang sabihin sa computer na ako ay tapos na sa linyang ito. Maaari kang magpatuloy at isagawa ito. Ito ay isang kumpletong linya. Ang isang tutuldok ay pagpunta sa, sa kasong ito, magdala sa iyo sa isang partikular na block. Kaya semicolon ay laging gamitin upang tapusin ang linya. Tutuldok ay ginagamit para sa isang iba't-ibang mga iba pang mga kaso. 

MAG-AARAL: Ito ba ay katumbas ng lamang na nagsasabi kung n ay katumbas ng 50, pagkatapos ay blah blah blah. Hannah: MM-Hm. MAG-AARAL: Ito ay lamang ang parehong [hindi marinig]. Hannah: Eksaktong. At sinabi namin ito ay nagpapatakbo ng isang maliit na bit mas mabilis. Kung hindi namin ginawa magkaroon ng pahinga, magiging tulad ng kung, kung, kung. Kung mayroon kaming mga break na ito, tulad ng kung tao kung tao kung tao kung. Cool? 

Jason HIRSCHHORN: Kaya kapag coding, maaari mo lamang gamitin kung tao, ngunit sa palagay ko noong nakaraang taon sa pagsusulit namin Nagkaroon sila magsulat ng switch statement, kaya kung sakali. Hannah: Pero Siguradong walang mali. Hindi namin inaasahan mong mag-alala tungkol sa pagganap ng nakatutuwang bagay. Lamang kung iba ay talagang masarap. Ang mga ito ay lamang mabuting mga bagay na dapat malaman. 

At narito ang aming huli na uri ng bumaba sa may-kondisyong ito kategorya. Mayroon kaming isang bagay sa pangkalahatang kondisyon form?, at pagkatapos ng isang maliit na piraso ng code na ang mangyayari kung ang kundisyon ay totoo. At pagkatapos ay tutuldok, may kaunting panahon piraso ng code na executes kung ang kundisyon ay hindi totoo, semicolon. Tapos na kami sa na linya. Kaya syntactically ito ay isang kaunti pangit. Kami ay pagpunta sa pumunta sa pamamagitan ng isang Halimbawa tingin ko na pinaka malinaw. Kaya gusto naming magtalaga ang propesor string sa isa sa mga dalawang halaga, alinman sa David Malan o hindi David Malan, OK? Kaya dapat kang maging pamilyar sa string, propesor =. Kami ay pagpunta sa italaga ang isang string sa propesor ng variable na tinatawag. 

Ngayon nais naming suriin ang partikular na kondisyon. Sa kasong ito, ang aming mga kondisyon ay class_num = = 50. At ngayon ay maaaring maging isang magandang pagkakataon upang ituro kapag mayroon kaming string propesor =, Na ang isa ay katumbas ng pag-sign. Iyon ang pagtatalaga. Sapagkat sa class_num = = 50, na dalawang katumbas senyales. Yan ang kalidad ng tseke. Kaya kami ay pagpunta sa sabihin ay ang katumbas ng 50 klase number? Kung gayon, magtalaga Propesor David Malan. Kung hindi, maglaan ng propesor upang hindi David Malan. Ang anumang mga katanungan doon? Muli, ito ay isang bagay lamang na mabuting malaman. Maaari mong gawin ito sa kung iba pa. Ang isang mahusay na problema kasanayan Maaaring maging sa, kapag pumunta ka sa bahay, i-right ang parehong eksaktong kondisyong sa isang tao kung form, dahil maaari mong gawin iyon. Ang anumang mga tanong dito? Ang lahat ng mga karapatan, sa palagay ko kami ay pagpunta sa pumunta sa upang loop. Kahanga-hanga. 

Sharon: OK, na makipag-usap hayaan tungkol sa habang loop. Kaya unang sa kaliwa nakikita mo here-- OK na nagsasabing habang, habang (kondisyon). At pagkatapos ay gawin mo this-- Maaari naming baguhin ito? 

Jason HIRSCHHORN: Ito ay maputol. 

Sharon: OK, at pagkatapos ay doon mga kulot brace din. Kaya magpanggap na kulot brace ang naroon sa itaas at sa ibaba ang gawin ito muli at muli. Kaya kung ang kundisyon sa mga panaklong sinusuri sa true, pagkatapos ay dapat panatilihin ang paggawa anumang ay nasa habang loop. 

Kaya halimbawa, maaari naming gawin ang isang problema na kasanayan. Ako ang may suot dalawang hikaw ngayon, kaya sabihin nating kung ako ang may suot hindi bababa sa isang pandinig, tunog ng kulog ang iyong mga kamay. Kaya kung kami ay pagpunta sa pumunta sa pamamagitan na ito, kami ay going-- 

[Pumapalakpak] 

Mag-right? At ako ang may suot ng isa, and-- OK. Oo. Hindi ako ang may suot hikaw ngayon, kung kaya wala nang higit pa. OK, kaya pagkatapos na kapag gusto mong itigil. At ito maaari mong sabihin ay katumbas ng halos variable. Sabihin nating mayroon kang isang variable na bilang ng mga hikaw. Kaya habang bilang ng mga hikaw ay mas malaki kaysa sa o katumbas ng 1, tunog ng kulog kamay. At pagkatapos ay pagkatapos ng tunog ng kulog kamay, pagbabawas hikaw. Gawin tulad ng hikaw minus 1. Kaya ng pagbawas ng bilang ng mga hikaw, at Pagkatapos ay pumunta sa pamamagitan ng habang loop nang dalawang beses. 

At kung ang kalagayan ay palaging true-- kaya kung, sabihin nating, 2 = = 2, at 2 ay laging katumbas ng 2, i-right? Pagkatapos ng gagawin mo laging gawin ang isang bagay sa doon, at iyon ang katumbas ng halos magpakailanman loop na namin ay may sa simula. Oo? 

MAG-AARAL: Sigurado sa dalawang gilid lamang iba't ibang paraan ng pagsusulat ng isang habang loop? 

Sharon: Kaya naming nakatuon ka sa isa muna. Ni ihambing at pagkatapos ay upang ipaalam ito sa isang do habang loop. Kaya ang mga ito ay bahagyang naiiba. OK, kaya sabihin nating ang kundisyon pa rin habang ako suot hindi bababa sa isang hikaw, at hindi ako ang may suot hikaw ngayon. At sabihin nating gawin at pa rin tunog ng kulog habang Ako ang may suot hindi bababa sa isang hikaw. Ano ang dapat mangyari? 

[CLAPS] 

Naku, guys. OK, kaya ka dapat palakpakan isang beses dahil isa lamang sa iyo pumunta sa pamamagitan ng unang bahagi ng code. Ito gawin mo kahit na ano, at pagkatapos ay makikita mo ang mga kundisyon habang, at pumunta ka pabalik sa na loop kung ito ay totoo. Sinusuportahan ba na saysay? 

MAG-AARAL: mong palaging gawin ito sa unang pagkakataon. Sharon: palagi mo itong gawin sa unang pagkakataon man o hindi kondisyon na ay totoo o hindi. Jason HIRSCHHORN: Kailan sa tingin mo na maaari mong gamitin ito? Kailan gawin itong kahulugan upang gamitin ito? Hannah: Oo? MAG-AARAL: [hindi marinig]. Jason HIRSCHHORN: I-right. Hannah: Mabuti. Jason HIRSCHHORN: Kaya kapag-prompt ka ng isang user, na iyong pupuntahan palaging gusto upang i-prompt ang isang user sa isang pagkakataon. Palagi kang naka-pagpunta sa nais upang i-prompt ang user isang panahon. Kaya sa halip ng paglalagay ng sa isang habang loop, mo ilagay sa gawin habang loop, dahil ikaw ay palaging pagpunta sa gawin ito nang isang beses. Kung magbibigay sa iyo ng mga ito tamang sagot, tapos ka na. Kung gagawin nila hindi, pagkatapos mong muling i-prompt ang mga ito. 

Sharon: Lahat ng karapatan, para sa mga loop. Kaya sa simula, nagkaroon kami umuulit na mga bloke. Kaya gusto naming ulitin ang isang bagay, sabihin nating, pitong beses. Kaya't sinabi namin lamang ulitin pitong, at sabihin ako dito upang matulungan kang Snow White! Sa C, mayroon kami para sa mga loop kung namin gustong pumunta sa pamamagitan ng isang bagay isang tiyak na bilang ng beses. Sabihin natin kung initialize namin ang variable na dwarf at gumawa ng sure-- kaya ang unang bloke doon bago ang unang semicolon, initialize namin ang aming mga variable sa, at itinakda namin ito sa 0. At ang aming variable doon ay isang integer, int. At ang pangalan ng variable ay dwarf, at itakda ang aming mga dwarf sa 0. 

At ang ikalawang bahagi sa pagitan ng dalawang semicolon ay ang aming kondisyon. At kaya hangga't dwarf Mas mababa sa pitong, itinatago namin pagpunta sa pamamagitan na ito para sa loop. At pagkatapos ay ang huling bahagi ay kung ano ang ginagawa ginagawa namin sa dulo ng ito para sa loop? dwarf ++, at nangangahulugan iyon na namin dinagdagan dwarf sa pamamagitan ng isa sa bawat oras. 

Kaya kung ano ang nangyayari sa mangyayari dito? Kaya unang kami ng pagpunta sa pumunta sa pamamagitan ng. Mayroon kaming mga dwarf bilang 0, at pagkatapos kami ay pagpunta mag-print ako dito sa makatulong sa iyo na Snow White! At pagkatapos ay dwarf ay pagpunta sa taasan sapagkat sinabi namin dwarf ++. Dwarf ay magiging 1. At pagkatapos ay compare-- namin dwarf ay 1. Inihambing namin ito sa mga dwarf ay mas mababa kaysa sa 7? Oo. Pupunta ako sa pumunta sa pamamagitan ng ito muli. Ako dito upang makatulong sa iyo na Snow White! At pagkatapos ay nagiging dwarf 2, at pagkatapos ay ihambing namin ito. 2 mas mababa na 7? Oo. Kami ay pagpunta sa panatilihin ang pagpunta sa pamamagitan ng. At kami ay pagpunta sa pumunta sa pamamagitan ng pitong beses. 

Kaya sa katapusan, kami ay pagpunta sa mailabas dwarf = 0 print ako dito upang makatulong sa iyo na Snow White! dwarf ay katumbas ng 1, 2, 3, 4, 5, at 6. Tandaan namin index sa 0. Kaya simulan namin sa 0. Oo? 

MAG-AARAL: Kaya ito ay naiiba kaysa sa gagawin dahil ito ay hindi print ang una sa unang. Kaya maaari mong ipagpatuloy ang parehong bagay. Maaari mong gawin ito rin gamit ang do-loop? Tulad ng parehong proseso. Kondisyon ay dwarf mas mababa kaysa sa 7 o kahit anong. Tugon ay mas mababa sa 7. Sharon: Kaya maaari mo technically. Kaya kung pumunta namin pabalik to-- ang iyong pakikipag-usap tungkol sa habang loop, i-right? Kaya ang gagawin habang loop ay bahagyang naiiba dahil gina-garantiya namin ng hindi bababa sa -sabay na aming pumunta sa pamamagitan nito, nang sa gayon ay ang pinakamalaking pagkakaiba. Ngunit sa habang loop maaari naming sabihin habang dwarf ay mas mababa kaysa sa 7, gawin ito, at pagkatapos ay dinagdagan dwarf sa pamamagitan ng isa. At pagkatapos ay mayroon kaming i-initialize dwarf bago ito buo pahayag na ito ay katumbas ng 0. Kaya oo, maaari naming gawin na may iyon. Mm-Hm? 

MAG-AARAL: Maaari kang bumalik sa [hindi marinig]? Sharon: Para sa loop? MAG-AARAL: Oo, kaya may mga dwarf ++, tila na kung ano ang gagawin mo pagkatapos ng mo na ang nagpatakbo ng ilang mga iba pang paraan. Sharon: Tamang. MAG-AARAL: mabuksan mo lamang walang iyon at ilagay it-- Sharon: mo dati. MAG-AARAL: Kaya ay [hindi marinig] pagkatapos -print out sa susunod na linya sa ilalim. Sharon: Oo, na maaari mong itong ilagay doon. Ngunit pagkatapos ng ginagawa mo iwan lang na walang laman. 

Jason HIRSCHHORN: ka pa rin Kailangan ang semi colon bagaman. 

Sharon: Mukhang isang maliit na mahirap, ngunit maaari mong technically gawin iyon. Technically. Mangyaring huwag. Oo? 

MAG-AARAL: Mayroon bang anumang alternatibo sa ++? Mayroon bang anumang bagay [hindi marinig]? 

Sharon: technically ito ito ng dwarf. Ang isa ay katumbas ng pag-sign namin ang iyong pupuntahan upang i-set ito sa mga dwarf plus 1. Kaya technically na kung ano ang paraan dwarf ++. Ay na magkaroon ng kahulugan? 

MAG-AARAL: Oo, ngunit Mayroon bang anumang mga alternatibo? Tulad ng kung ever-- mo 

Sharon: Oo, maaari mong gawin ang mga dwarf - -. 

MAG-AARAL: [hindi marinig]. 

Sharon: Oo, maaari mo gawin ang isang host ng mga bagay. Hannah: At maaari mong dagdagan sa pamamagitan ng 2. Maaari mong dagdagan sa pamamagitan ng 3. Anumang bagay na nangyayari na nagbabago, ito ay malaon gawin ang mga kondisyon. 

MAG-AARAL: Kaya kung nais mong dagdagan sa pamamagitan ng 2, kung paano nais mong isulat iyon? 

Hannah: maaari mong isulat dwarves-- maaari mong isulat ang buong bagay out. dwarf = dwarf + 2. O isang bahagyang shorthand. Lamang ako ng pagpunta sa magsulat + ay katumbas ng 2. 

MAG-AARAL: OK, at nais mong isulat na kung saan dwarf ++ ay doon. Hannah: Eksaktong. Sharon: Tamang. Nagkaroon ng isa pang tanong? Oo? 

MAG-AARAL: [hindi marinig] dwarf ++? Sharon: Kaya don't-- mo Jason HIRSCHHORN: Oo, hindi na kailangan ito doon. [Hindi marinig] napaka katapusan. Kaya gagawin mo [hindi marinig] mga dahil ikaw ay uri ng paghahati up ang pagsisimula, kondisyon, at ang pagbabago. Sa dulo, hindi mo kailangang ito. Sharon: mapansin mo rin hindi na kailangan ang semicolon pagkatapos ng buong buong para sa loop. 

MAG-AARAL: Paano mo magsimula sa isang paunang bilang ng mga negatibong, halimbawa? 

Sharon: Maaari mong simulan ang dwarf kasing-halaga sa mga negatibong 2. 

MAG-AARAL: Huwag mo lamang ako Dash 2? 

Sharon: Oo, kaya ang -sign negatibo, gitling 2. 

MAG-AARAL: Ito ba ay [hindi marinig] sa initialize ng mga dwarf [hindi marinig]? 

Sharon: Oo. Kaya kung lang namin ay nasimulan dwarf mas maaga, gawin lamang int dwarf semicolon, at pagkatapos ay may magagawa natin dwarf set na katumbas ng 0. 

MAG-AARAL: mai gagawin namin ito nang mas maaga sa ang program na nagsasabing int dwarf = 0, at pagkatapos ay just-- 

Sharon: lang hindi have-- kaya magkakaroon muli ng puwang, ngunit kakailanganin mo pa rin ng isang tuldok-kuwit. Oo. Mm-Hm? MAG-AARAL: ang code na ito sabihin ba kung ano ang ang halaga ng mga dwarf ay pagkatapos nito. Kung hihilingin mo ito pagkatapos ng lahat ng ito ay tapos i-print ang halaga ng mga dwarf. Sharon: Maaari kang magtanong ito upang gawin iyon. MAG-AARAL: OK. Sharon: Pero gagawin mo kailangan mong hilingin ito upang gawin iyon. Hindi ito gawin ito para sa iyo. Ako ay natakot upang ilagay ang aking mga hikaw muli. Gawin ito sa dulo para sa mga papuri. Kidding lang. 

Jason HIRSCHHORN: Kaya iyon ang parehong. Kaya initialize sa itaas. Kundisyon, i-print, pagbabago. Kaya ito ay eksaktong kapareho ng na kung maaari makita ang sinuman na iyon. MAG-AARAL: Bakit hindi mayroon kang semicolon sa unang linya? Sharon: Saan? MAG-AARAL: Matapos ang unang linya. Sharon: Pagkatapos ng 4 sa mga panaklong? Dahil gusto naming pumunta pamamagitan sa ito loop. At kung kumuha ka ng isang pagtingin sa mga loop sa pangkalahatan, wala silang semicolon. Ito ay hindi praktikal. Sigurado namin magandang? Isa pang tanong, dalawang higit pa. Oo? MAG-AARAL: Ito ay maaaring maging Medyo advanced, ngunit ginagawa dwarf ay may ibang [hindi marinig] mula sa isang variable [hindi marinig]. Sharon: Mabuti. MAG-AARAL: [hindi marinig]. 

Sharon: Oo, ito ay. Ano? Jason HIRSCHHORN: Oo, kaya ginagawa nito. Kaya normal na saklaw ng isang bagay ay nasa kulot brace. Kaya ang saklaw ay palaging pagpunta na nasa kulot tirante, ngunit hindi na gagawin magkano ang kahulugan para sa para sa loop dahil namin nasimulan dwarf sa na kulot suhay. Kaya normal na saklaw ng mga dwarf, na variable ay hindi pahabain nakalipas na iyon. Ito ay isang espesyal na kaso bagaman. Kaya initialize mo ito sa loob ng mga panaklong, at pagkatapos ay mayroon kang ang saklaw sa ibang pagkakataon. Kaya espesyal na kaso. Hindi nila dapat magkaroon iyon, at na was-- Iyon kabuluhan? 

MAG-AARAL: Hindi. 

Jason HIRSCHHORN: Maaari ko bang balikan ito. Kaya kung ano ikaw pa rin Nalilito tungkol sa? 

MAG-AARAL: Tulad ng sa maaari mong gamitin dwarves-- mo Maaari malinaw naman gamitin ang mga dwarf [hindi marinig] sa labas ng formula masyadong? 

Jason HIRSCHHORN: Hindi, hindi. Kaya ang saklaw ng ito ay para lamang sa loob ng kulot tirante para sa para sa loop, oo. Sharon: Ngunit kung initialize mo dwarf sa labas ng para sa loop, pagkatapos ay maaari mo itong gamitin sa ibang lugar Mayroong isa pang tanong? Walang? OK. 

Kaya usapan natin nang kaunti tungkol sa nesting para sa mga loop o nesting conditionals, kung pahayag. Kaya narito ang isang halimbawa ng kung saan ang maaari naming ma-nest ang isang para sa loop. Ipagpalagay natin na tayo ay pag-print ang talaan ng mga x kung dito mismo. Maaari naming gusto to-- muna kung namin lamang huwag tingnan ang code at sa tingin lang namin tungkol dito, namin gustong pumunta sa bawat hilera at i-print ang bawat haligi, i-right? Ay na magkaroon ng kahulugan? OK. 

Kaya dito kami ng pagpunta sa pamamagitan ng ang bawat hilera para sa isa lamang sa bawat hilera, at mayroong tatlong mga hilera. At pagkatapos ay sa loob ng bawat hilera para sa bawat hanay, at may apat na haligi, i-print ang isang x. kaya. Kapag hilera ay 0 at haligi ay 0, i-print namin ang x. At pagkatapos ay panatilihin namin ang pagpunta sa pamamagitan ng haligi loop. Hilera pa rin ang 0, ngunit hanay ay isa. At pagkatapos ay haligi ay 2, at pagkatapos ay haligi ay 3. At pagkatapos ay lumabas kami out sa na loop dahil pagkatapos ng hanay Hindi na mas mababa sa 4. At pagkatapos ay i-print kami ng isang bagong linya, at pumunta kami sa bagong linya. At pagkatapos ay pumunta namin sa pamamagitan ng susunod na sunud-sunod, at hilera ay makakakuha ng incremented, at pumunta kami sa pamamagitan na muli. Ay na magkaroon ng kahulugan? Oo? 

MAG-AARAL: Kaya upang ma-nest [hindi marinig] ay paglalagay lang ito sa loob ng para sa loop? 

Sharon: Kaya nesting paraan na aming magkaroon ng para sa loop sa loob ng isang para sa loop, tulad ng pag-uumpisa. 

MAG-AARAL: Hindi mo kailangan ng espesyal na pag-ikot o anumang bagay? Ilagay mo lamang ito sa loob mismo ng ito? Sharon: Tamang. Oo? 

MAG-AARAL: Maaaring maging [hindi marinig], ngunit mukhang mayroong isang labis na puwang sa pagitan ng lahat ng mga x ni. Hindi ko alam kung that's-- Kung na ay upang aktwal na gawin ang mga programa, Gusto ito gawin ang isang bagay tulad na? 

Sharon: Kaya walang. Iyon ay pagpindot sa Enter. Iyon ay hindi maganda sa aming bahagi. Humihingi. 

Hannah: Paano mo baguhin ito programa kung ginawa mo ang isa sa mga dagdag na linya? 

MAG-AARAL: [hindi marinig]. Sharon: Mahusay. MAG-AARAL: Maaari mo ring i-print ang parehong bagay sa pamamagitan ng paglipat sa buong hanay, tama? 

Sharon: Hm? 

MAG-AARAL: Kaya i-print ang iyong maliit xxx, ang unang linya Maaaring sabihin print, at sa halip na sabihing hilera, sinasabi nito na hanay. 

Sharon: Kaya maaari mong baguhin mga pangalan ng variable upang gawin iyon. Iyan ba kung ano ang iyong sinasabi sa iyo? 

MAG-AARAL: Hindi, lamang ako sinasabi that-- kaya ikaw ay hilera sa pag-print una at pagkatapos ay pag-print ng mga hanay. Maaari kang mag-print din sa unang hanay at pagkatapos hilera upang makuha ang parehong diagram? Sharon: maaari mong, ngunit pagkatapos ay magkakaroon ka maging maingat ng kung saan ilagay mo ang bagong linya. At kung paano nais mong lumipat pabalik? Jason HIRSCHHORN: Kung nakalipat ka lang ito at ang mga halaga ay naiiba, sa halip ng pagkakaroon ng four-- ano ito? Tatlong ng apat. Ako ay mayroon kang apat na hilera at tatlong hanay. Ay na magkaroon ng kahulugan? 

MAG-AARAL: Oo. 

Jason HIRSCHHORN: Kaya oo, maaari mong gawin iyon. Oo, talagang. Sharon: Ngunit iyon ay magiging literal lamang lumilipat ang mga pangalan ng variable. Magandang? OK. Ang lahat ng mga karapatan, P magtakda ng isang. OK, kaya ang unang bahagi nito ikaw ay ginagawa ito, Mario. Kidding lang. Ito ay mas katulad na ito. At kaya kapag kami ay tumingin lamang sa nested para sa loop, paggawa ng talahanayan na iyon, isipin ang tungkol sa kung paano mo maaaring magagawang i-print ang mga hashtag sa ganitong paraan. At pagkatapos ay dito mismo kung paano gagawin mo -print sa karapatang ito dito, ang bukas na espasyo. 

MAG-AARAL: [hindi marinig]. Sharon: Oo, i-print mo lang ng puwang. OK, kaya sa tingin lamang tungkol iyon. Hannah: At pagkatapos ay ang parehong bahagi ng problema set ay isang programa na tinatawag na greedy.c, sa gayon ay handa mo pagpunta sa nais na sa tingin tungkol sa conditionals at tinitiyak na ay maaaring gumawa ng tamang pagbabago. At isa maliit na babala na mayroon kami para sa iyo ay mag-ingat ng mga lumulutang na halaga point. Kung nangangahulugan na walang pasubali wala sa iyo, Makikita ito ay sakop sa aralin sa linggong ito at din sa [hindi marinig] maglakad sa pamamagitan ng, na ka guys ay matutong mahal sa mga hanay ng problema. 

Ang isang bagay na talagang Iminumungkahi ko, lalo na Mario.c, kapag ginagawa mo ang problema -set, kung hindi ka makaalis, simulan sa pamamagitan ng paggawa ito sa papel. Isulat ito at aktwal na umupo doon at magpanggap na mga computer, at pumunta sabihin through-- Ako ay ang computer, kung paano Gusto ko sundin na ito para sa loop sa pamamagitan? Paano gagawin ang aking mga variable sa para sa loop pagbabago? Kaya ang paggawa nito sa papel Ginagawang 10 beses na mas madali kapag pumunta ka sa umupo sa computer. Kaya lamang ang aking maliit na plug. 

Sharon: At din huwag isipin na kailangang code ang lahat nang sabay-sabay. Tiyakin mong gawin ang isang umuulit na proseso. Gumawa ng isang kaunti, i-print ito, tingnan kung ano ang mangyayari. Minsan ito ay isang maliit na pagsubok at error. At dumating sa oras ng opisina. Super masaya. Jason HIRSCHHORN: Kaya anumang mga katanungan? Ang lahat ng mga karapatan guys, na ang iyong unang seksyon. Hannah: Salamat sa pagdating. Jason HIRSCHHORN: Salamat para sa darating. Sharon: Salamat sa iyo. [Palakpakan]