1 00:00:00,000 --> 00:00:03,160 >> David J. Malan dink ons ​​wil skryf 'n program wat almal in vra 2 00:00:03,160 --> 00:00:06,740 'n kamer vir hul ouderdom, en dan druk uit te vind hoe oud die mense 'n sal wees 3 00:00:06,740 --> 00:00:07,520 jaar vandaar? 4 00:00:07,520 --> 00:00:09,900 Nou, natuurlik die rekenkundige vir hierdie probleem gaan redelik wees 5 00:00:09,900 --> 00:00:10,660 eenvoudig. 6 00:00:10,660 --> 00:00:14,090 Maar die interessante vraag is, as ons nie vooraf weet hoeveel mense 7 00:00:14,090 --> 00:00:16,790 gaan wees in hierdie kamer, hoe kon ons gaan oor die stoor 8 00:00:16,790 --> 00:00:17,980 al hul ouderdomme? 9 00:00:17,980 --> 00:00:19,680 Wel, laat ons neem 'n blik. 10 00:00:19,680 --> 00:00:22,760 >> Kom ons begin deur eers waarna die gebruiker, as ek hier gedoen het, vir die 11 00:00:22,760 --> 00:00:26,410 aantal mense in die kamer met behulp van getint en 'n do-while lus om te 12 00:00:26,410 --> 00:00:28,220 kry 'n heelgetal n. 13 00:00:28,220 --> 00:00:32,310 Gestel ons wil nou elke sodanige vra persoon in die kamer vir hul ouderdom. 14 00:00:32,310 --> 00:00:35,820 Wel, sou my instink wees om te gebruik om 'n lus om dit te doen waarna, maar ek het ook 15 00:00:35,820 --> 00:00:37,840 'n plek om te stoor die mense se ouderdomme. 16 00:00:37,840 --> 00:00:40,760 En my eerste instink sou daar 'n veranderlike te gebruik vir die eerste 17 00:00:40,760 --> 00:00:43,690 persoon se ouderdom, 'n ander veranderlike Vir die tweede persoon se ouderdom, 18 00:00:43,690 --> 00:00:44,780 soort van saam lyne. 19 00:00:44,780 --> 00:00:46,230 Int ouderdom - 20 00:00:46,230 --> 00:00:48,850 Wel, kom ons noem dit 1 vir die eerste persoon. 21 00:00:48,850 --> 00:00:51,480 Int ouderdom 2 vir die tweede persoon. 22 00:00:51,480 --> 00:00:53,980 Int die ouderdom van 3 vir die derde persoon. 23 00:00:53,980 --> 00:00:56,750 >> Maar wag 'n minuut, is dit nie dalk die beste pad om te gaan. 24 00:00:56,750 --> 00:01:00,620 Omdat ek weet nie in die hand van skryf en die opstel van hierdie program hoe 25 00:01:00,620 --> 00:01:02,330 baie gebruikers daar gaan wees. 26 00:01:02,330 --> 00:01:06,590 Verder, as daar is soveel as 100 gebruikers, verklaar 100 veranderlikes 27 00:01:06,590 --> 00:01:10,350 soort van eienaardige naam soos hierdie nie voel soos die beste ontwerp. 28 00:01:10,350 --> 00:01:14,430 >> Wel, gelukkig bestaan ​​daar 'n ander tipe veranderlike genoem 'n skikking wat 29 00:01:14,430 --> 00:01:18,710 laat ons 'n aantal van ints te stoor binnekant van dit, selfs al is ons nie weet nie 30 00:01:18,710 --> 00:01:22,190 toe my program te skryf hoeveel so ints ons gaan nodig hê. 31 00:01:22,190 --> 00:01:25,970 So laat terugstap en verwyder hierdie verskeie ints, en plaas dit vervang 32 00:01:25,970 --> 00:01:29,620 met een veranderlike genoem, sê, ouderdomme, meervoud. 33 00:01:29,620 --> 00:01:33,420 Maar laat ons verder spesifiseer op hierdie lyn van die kode in vierkantige hakies dat ons 34 00:01:33,420 --> 00:01:35,460 wil n ints. 35 00:01:35,460 --> 00:01:39,570 En daarom sal ons gesamentlik verwys na hierdie ints as ouderdomme. 36 00:01:39,570 --> 00:01:43,490 >> Nou in 'n oomblik sal ek in staat wees om te kry by elk van die ints in hierdie reeks 37 00:01:43,490 --> 00:01:47,270 Net so by wyse van vierkante hakies notasie, begin by 0. 38 00:01:47,270 --> 00:01:51,720 So laat ons nou voortgaan in 'n lus om te gevra om die gebruikers vir hul ouderdomme. 39 00:01:51,720 --> 00:01:54,780 Vir int ek kry 0. 40 00:01:54,780 --> 00:01:59,464 Ek is minder as N, die aantal mense wat in die kamer, ek plus plus. 41 00:01:59,464 --> 00:02:06,610 >> En nou in hierdie lus, kom ons sê printf ouderdom van persoon nommer, persent Ek 42 00:02:06,610 --> 00:02:09,430 is 'n plekhouer, komma. 43 00:02:09,430 --> 00:02:13,210 En nou, eerder as om te begin tel van 0 in die program self, kom ons by 44 00:02:13,210 --> 00:02:17,180 minste inkrement ek met 1 so dat 'n normale persoon met behulp van hierdie program 45 00:02:17,180 --> 00:02:20,120 hoef nie te tel soos 'n rekenaar wetenskaplike krag. 46 00:02:20,120 --> 00:02:26,130 Kom ons doen nou ouderdomme, bracket ek, en daardeur spesifiseer dat die i-de ouderdom in ons 47 00:02:26,130 --> 00:02:31,480 verskeidenheid van ouderdomme is die gang te kry die terugkeer waarde van getint. 48 00:02:31,480 --> 00:02:37,800 >> Nou onder om die lus, laat ons voortgaan om te aanvaar dat 'n geruime tyd gaan. 49 00:02:37,800 --> 00:02:41,690 En laat ons nou voortgaan in 'n ander loop om werklik almal in die kamer Ouderdom 50 00:02:41,690 --> 00:02:42,800 deur een jaar. 51 00:02:42,800 --> 00:02:48,110 So weer, want ek kry int 0, ek is minder as N, die aantal mense wat in die 52 00:02:48,110 --> 00:02:49,680 kamer, ek plus plus. 53 00:02:49,680 --> 00:02:57,210 >> En nou binnekant van die loop, kom ons sê printf 'n jaar van nou af persoon nommer, 54 00:02:57,210 --> 00:03:00,990 persent Ek is 'n plekhouer, sal wees, persent Ek is 'n ander 55 00:03:00,990 --> 00:03:03,210 bevat, jaar oud. 56 00:03:03,210 --> 00:03:07,230 En dan aan te sluit in die plekhouers, laat ons eers sê ek plus 57 00:03:07,230 --> 00:03:11,220 1, sodat ons weer begin tel vir die gebruiker van 1. 58 00:03:11,220 --> 00:03:18,630 En dan laat prop in daardie persoon se ouderdom as ouderdomme bracket Ek plus 1, en daardeur 59 00:03:18,630 --> 00:03:23,740 vermelding van die i-de ouderdom gaan kry in ons verskeidenheid van ouderdomme, voeg 1 tot dit, en dan 60 00:03:23,740 --> 00:03:28,370 voeg dat som in ons plekhouer, naby paren, kommapunt. 61 00:03:28,370 --> 00:03:33,280 >> Kom ons nou hierdie program saam te stel met die make ouderdomme, en laat dit loop met dot 62 00:03:33,280 --> 00:03:34,990 streep ouderdomme. 63 00:03:34,990 --> 00:03:38,770 En veronderstel dat daar net drie mense in die kamer, en iemand is 18, 64 00:03:38,770 --> 00:03:40,700 iemand is 19, iemand is 20. 65 00:03:40,700 --> 00:03:45,350 Wel, in 'n jaar, elkeen van daardie mense gaan wees 19, 20 en 21, 66 00:03:45,350 --> 00:03:46,600 onderskeidelik. 67 00:03:46,600 --> 00:03:48,948