1 00:00:00,000 --> 00:00:03,160 >> David J. MALAN: Ipagpalagay na gusto naming isulat isang programa na nagtatanong ng lahat ng tao sa 2 00:00:03,160 --> 00:00:06,740 isang silid para sa kanilang edad, at pagkatapos ay i-imprenta kung paano ang lumang mga taong iyon ay magiging isang 3 00:00:06,740 --> 00:00:07,520 taon kaya? 4 00:00:07,520 --> 00:00:09,900 Ngayon, malinaw naman ang palatuusan para sa problema ay magiging walang kinikilingan 5 00:00:09,900 --> 00:00:10,660 prangka. 6 00:00:10,660 --> 00:00:14,090 Ngunit ang mga kagiliw-giliw na tanong ay, kung kami hindi alam nang maaga kung gaano karaming mga tao 7 00:00:14,090 --> 00:00:16,790 ay pagpunta sa maging sa kuwartong ito, paano maaari kaming pumunta tungkol sa pag-iimbak 8 00:00:16,790 --> 00:00:17,980 lahat ng kanilang mga edad? 9 00:00:17,980 --> 00:00:19,680 Well, sabihin tumagal ng isang hitsura. 10 00:00:19,680 --> 00:00:22,760 >> Simulan sa pamamagitan ng unang pagdikta Hayaan ang user, bilang gumawa ako dito, para sa mga 11 00:00:22,760 --> 00:00:26,410 bilang ng mga tao sa room paggamit getInt at isang do-loop habang upang 12 00:00:26,410 --> 00:00:28,220 makakuha ng isang integer n. 13 00:00:28,220 --> 00:00:32,310 Ipagpalagay na gusto ngayon naming hilingin sa bawat tulad tao sa room para sa kanilang edad. 14 00:00:32,310 --> 00:00:35,820 Well, ang aking mga instincts ay magiging upang gamitin ang isang loop upang gawin iyon pagdikta, ngunit ko rin 15 00:00:35,820 --> 00:00:37,840 kailangan sa isang lugar upang mag-imbak edad ng mga taong iyon ni. 16 00:00:37,840 --> 00:00:40,760 At sa aking unang instincts doon ay magiging upang gamitin ang isang variable para sa unang 17 00:00:40,760 --> 00:00:43,690 edad tao, isa pang variable para sa edad ang pangalawang tao, 18 00:00:43,690 --> 00:00:44,780 uri ng mga linya. 19 00:00:44,780 --> 00:00:46,230 Edad int - 20 00:00:46,230 --> 00:00:48,850 well, sabihin tawagan ni ito 1 para sa ang unang taong. 21 00:00:48,850 --> 00:00:51,480 Int edad 2 para sa ikalawang tao. 22 00:00:51,480 --> 00:00:53,980 Int edad 3 para sa ikatlong tao. 23 00:00:53,980 --> 00:00:56,750 >> Ngunit maghintay ng isang minuto, hindi ito marahil ang pinakamahusay na landas upang pumunta pababa. 24 00:00:56,750 --> 00:01:00,620 Dahil hindi ko alam nang maaga ng pagsulat at kino-compile ang program na ito kung paano 25 00:01:00,620 --> 00:01:02,330 maraming mga user doon ay pagpunta sa maging. 26 00:01:02,330 --> 00:01:06,590 At saka, kung mayroong ng maraming mga bilang 100 mga gumagamit, deklarasyon 100 mga variable 27 00:01:06,590 --> 00:01:10,350 uri ng mga nang kakatwa pinangalanan tulad ng hindi na ito gumagana parang ang pinakamahusay na disenyo. 28 00:01:10,350 --> 00:01:14,430 >> Well, thankfully doon ay umiiral sa isa pang uri ng variable na tinatawag na isang array na 29 00:01:14,430 --> 00:01:18,710 ay nagbibigay-daan sa amin upang mag-imbak ng anumang bilang ng mga ints sa loob nito, kahit na hindi namin alam kung 30 00:01:18,710 --> 00:01:22,190 kapag sumusulat ng aking mga programa kung gaano karaming tulad ints kami ay pagpunta sa kailangan. 31 00:01:22,190 --> 00:01:25,970 Kaya sabihin pag-urong at tanggalin ang mga ilang ints, at sa halip ay papalitan ito 32 00:01:25,970 --> 00:01:29,620 may isang variable na tinatawag na, sabihin, edad, plural. 33 00:01:29,620 --> 00:01:33,420 Ngunit ng karagdagang tukuyin sa linyang ito ipaalam ng code sa square bracket na namin 34 00:01:33,420 --> 00:01:35,460 gusto n ints. 35 00:01:35,460 --> 00:01:39,570 At samakatuwid, kami ay sama-sama sumangguni sa mga ints bilang ng edad. 36 00:01:39,570 --> 00:01:43,490 >> Ngayon sa isang sandali lamang Kukunin ko magagawang upang makakuha ng sa bawat isa sa mga ints sa array na ito 37 00:01:43,490 --> 00:01:47,270 katulad sa paraan ng square bracket pagtatanda, simula sa 0. 38 00:01:47,270 --> 00:01:51,720 Kaya sabihin magpatuloy ngayon sa isang loop upang i-prompt ang mga gumagamit para sa kanilang edad. 39 00:01:51,720 --> 00:01:54,780 Para sa int nakukuha ko 0. 40 00:01:54,780 --> 00:01:59,464 Ako ay mas mababa kaysa N, ang bilang ng mga tao sa room, ako plus plus. 41 00:01:59,464 --> 00:02:06,610 >> At ngayon sa loob ng loop, sabihin nating printf edad na numero ng tao, porsyento ko 42 00:02:06,610 --> 00:02:09,430 ay isang placeholder, kuwit. 43 00:02:09,430 --> 00:02:13,210 At ngayon, sa halip na simulan ang pagbibilang mula sa 0 sa sarili nito, sabihin sa programa 44 00:02:13,210 --> 00:02:17,180 hindi bababa sa paglakas ako ng 1 sa gayon ay isang normal na tao na gumagamit ng program na ito 45 00:02:17,180 --> 00:02:20,120 hindi kailangang bilangin tulad ng isang computer na siyentipiko ay maaaring. 46 00:02:20,120 --> 00:02:26,130 Sabihin ngayon gawin edad, bracket ko, at sa gayon pagtukoy na ang mga i-ika-edad sa aming 47 00:02:26,130 --> 00:02:31,480 array ng edad ay pagpunta upang makakuha ng ang balik halaga ng getInt. 48 00:02:31,480 --> 00:02:37,800 >> Ngayon sa ibaba na ito loop, ni magpatuloy ipaalam upang ipalagay na nagpapasa ng ilang panahon. 49 00:02:37,800 --> 00:02:41,690 At ngayon ay magpatuloy sa isa pang loop ipaalam upang aktwal na edad lahat ng tao sa kuwarto 50 00:02:41,690 --> 00:02:42,800 sa pamamagitan ng isang taon. 51 00:02:42,800 --> 00:02:48,110 Kaya muli, para sa int nakukuha ko 0, ako ay mas kaysa N, ang bilang ng mga tao sa mga 52 00:02:48,110 --> 00:02:49,680 room, ako plus plus. 53 00:02:49,680 --> 00:02:57,210 >> At ngayon sa loob ng loop na ito, sabihin nating printf isang taon mula ngayon bilang tao, 54 00:02:57,210 --> 00:03:00,990 porsiyento ako ay isang placeholder, habilin maging, porsiyento ako ay isa pang 55 00:03:00,990 --> 00:03:03,210 placeholder, taong gulang. 56 00:03:03,210 --> 00:03:07,230 At pagkatapos ay mag-plug sa mga mga placeholder, sabihin muna kong sabihin plus 57 00:03:07,230 --> 00:03:11,220 1, sa gayon ay muling sisimulan namin ang pagbibilang para sa mga gumagamit mula sa 1. 58 00:03:11,220 --> 00:03:18,630 At ni-plug ng edad ng taong iyon pagkatapos ay hayaan bilang edad bracket ko plus 1, at sa gayon 59 00:03:18,630 --> 00:03:23,740 pagtukoy go makuha ang mga i-ika-edad sa aming array ng edad, magdagdag ng 1 dito, at pagkatapos ay 60 00:03:23,740 --> 00:03:28,370 isingit kabuuan na sa aming mga placeholder, malapit paren, tuldok-kuwit. 61 00:03:28,370 --> 00:03:33,280 >> Ngayon compile ng program na ito na may make Hayaan edad, at magpatakbo ng ito sa tuldok ipaalam 62 00:03:33,280 --> 00:03:34,990 iwa edad. 63 00:03:34,990 --> 00:03:38,770 At ipagpalagay na may tatlong lamang mga tao sa room, at ang isang tao ay 18, 64 00:03:38,770 --> 00:03:40,700 ang isang tao ay 19, ang isang tao ay 20. 65 00:03:40,700 --> 00:03:45,350 Well, sa isang taon, ang bawat isa ng mga tao ay magiging 19, 20, at 21, 66 00:03:45,350 --> 00:03:46,600 ayon sa pagkakabanggit. 67 00:03:46,600 --> 00:03:48,948