1 00:00:00,000 --> 00:00:03,160 >> Дэвід Дж. Малан: Выкажам здагадку, мы хочам напісаць праграма, якая просіць усіх у 2 00:00:03,160 --> 00:00:06,740 пакой для свайго ўзросту, а затым адбіткаў , Колькі гадоў гэтыя людзі будуць 3 00:00:06,740 --> 00:00:07,520 такім чынам годзе? 4 00:00:07,520 --> 00:00:09,900 Цяпер, відавочна арыфметычнае для гэтага Праблема будзе даволі 5 00:00:09,900 --> 00:00:10,660 проста. 6 00:00:10,660 --> 00:00:14,090 Але цікавае пытанне, калі мы не ведаю загадзя, колькі людзей 7 00:00:14,090 --> 00:00:16,790 будуць у гэтым пакоі, як мы маглі б ісці аб захоўванні 8 00:00:16,790 --> 00:00:17,980 усе іх узрост? 9 00:00:17,980 --> 00:00:19,680 Што ж, давайце зірнем. 10 00:00:19,680 --> 00:00:22,760 >> Давайце пачнем з першай падказкі Карыстальнік, як гэта зрабіў я, для 11 00:00:22,760 --> 00:00:26,410 колькасць людзей у пакоі, выкарыстоўваючы GetInt і зрабі той час як цыкл для таго, каб 12 00:00:26,410 --> 00:00:28,220 атрымаць натуральнае п. 13 00:00:28,220 --> 00:00:32,310 Выкажам здагадку, што мы цяпер хачу спытаць кожны такі чалавек у пакоі для іх ўзросту. 14 00:00:32,310 --> 00:00:35,820 Ну, мае інстынкты было б выкарыстоўваць завесы, каб зрабіць гэта заахвоціла, але я таксама 15 00:00:35,820 --> 00:00:37,840 трэба месца для захоўвання ўзрост тых людзей. 16 00:00:37,840 --> 00:00:40,760 І мае першыя інстынкты не было б выкарыстоўваць зменную для першага 17 00:00:40,760 --> 00:00:43,690 ўзрост чалавека, іншай зменнай па ўзросту другога чалавека, 18 00:00:43,690 --> 00:00:44,780 роду па лініі. 19 00:00:44,780 --> 00:00:46,230 Int ўзрост - 20 00:00:46,230 --> 00:00:48,850 добра, давайце назавем гэта 1 для першы чалавек. 21 00:00:48,850 --> 00:00:51,480 Int ўзрост 2 для другога чалавека. 22 00:00:51,480 --> 00:00:53,980 Int ўзрост 3 для трэцяй асобы. 23 00:00:53,980 --> 00:00:56,750 >> Але пачакайце, гэта не магчыма, лепшы шлях, каб спусціцца. 24 00:00:56,750 --> 00:01:00,620 Таму што я не ведаю загадзя напісанне і складанне гэтай праграмы, як 25 00:01:00,620 --> 00:01:02,330 многія карыстальнікі Ёсць будзе. 26 00:01:02,330 --> 00:01:06,590 І больш за тое, калі ёсць столькі, колькі 100 карыстальнікаў, заяўляючы 100 зменных 27 00:01:06,590 --> 00:01:10,350 роду дзіўным імем, як гэта не адчуваю, што вельмі лепшы дызайн. 28 00:01:10,350 --> 00:01:14,430 >> Ну, на шчасце існуе іншая тып зменнай называецца масіў, 29 00:01:14,430 --> 00:01:18,710 дазваляе захоўваць любую колькасць цэлых лікаў ўнутры яго, нават калі мы не ведаем, 30 00:01:18,710 --> 00:01:22,190 калі пісаў сваю праграму, колькі такія Інтс мы збіраемся трэба. 31 00:01:22,190 --> 00:01:25,970 Так што давайце вяртацца назад і выдаліць іх некалькі Інтс, а замест гэтага замяніць яго 32 00:01:25,970 --> 00:01:29,620 з адной зменнай называецца, кажуць, узростаў, множны лік. 33 00:01:29,620 --> 00:01:33,420 Але давайце больш канкрэтна задаць на гэтай лініі кода ў квадратных дужках, што мы 34 00:01:33,420 --> 00:01:35,460 хачу п цэлых лікаў. 35 00:01:35,460 --> 00:01:39,570 І таму, мы будзем разам звярнуцца да гэтых цэлымі як узростаў. 36 00:01:39,570 --> 00:01:43,490 >> Зараз праз хвіліну я буду мець магчымасць атрымаць у кожным з цэлых лікаў у гэтым масіве 37 00:01:43,490 --> 00:01:47,270 Аналагічным шляхам квадратнай дужкі абазначэння, пачынаючы з 0. 38 00:01:47,270 --> 00:01:51,720 Так давайце пяройдзем цяпер у цыкле для заахвоціць карыстальнікаў для іх век. 39 00:01:51,720 --> 00:01:54,780 Для унутр я атрымліваю 0. 40 00:01:54,780 --> 00:01:59,464 Я менш N, лік людзей, ў пакоі, я плюс плюс. 41 00:01:59,464 --> 00:02:06,610 >> І зараз у гэтым цыкле, скажам Е ўзрост чалавек лік, працэнт I 42 00:02:06,610 --> 00:02:09,430 з'яўляецца запаўняльнікам, коска. 43 00:02:09,430 --> 00:02:13,210 І цяпер, замест таго, каб пачынаць адлік з 0 у праграме сябе, давайце на 44 00:02:13,210 --> 00:02:17,180 Найменшую прырашчэнне я на 1, так што нармальна чалавек з дапамогай гэтай праграмы 45 00:02:17,180 --> 00:02:20,120 не павінен разлічваць, як вучоны моц. 46 00:02:20,120 --> 00:02:26,130 Давайце цяпер рабіць узростаў, кранштэйны I, тым самым удакладніўшы, што я-я ўзрост у нашай 47 00:02:26,130 --> 00:02:31,480 Масіў узростаў збіраецца атрымаць вяртаецца значэнне GetInt. 48 00:02:31,480 --> 00:02:37,800 >> Цяпер ніжэй гэтай завесы, пяройдзем выказаць здагадку, што некаторы час праходзіць. 49 00:02:37,800 --> 00:02:41,690 І хай цяпер пяройдзем у іншую пятлю на самай справе старэюць ўсё ў пакоі 50 00:02:41,690 --> 00:02:42,800 на адзін год. 51 00:02:42,800 --> 00:02:48,110 Такім чынам, яшчэ раз, для Int я атрымліваю 0, я менш чым N, лік людзей у 52 00:02:48,110 --> 00:02:49,680 нумар, я плюс плюс. 53 00:02:49,680 --> 00:02:57,210 >> І зараз ўнутры гэтай завесы, скажам Е праз год чалавек лік, 54 00:02:57,210 --> 00:03:00,990 адсоткаў я з'яўляецца запаўняльнікам, будзе быць, адсоткаў я яшчэ адзін 55 00:03:00,990 --> 00:03:03,210 запаўняльнік, гадоў. 56 00:03:03,210 --> 00:03:07,230 А потым падключыць на тых, запаўняльнікі, давайце спачатку сказаць, што я плюс 57 00:03:07,230 --> 00:03:11,220 1, так што зноў мы пачынаем лічыць для карыстача ад 1. 58 00:03:11,220 --> 00:03:18,630 А потым давайце падключыць ўзросту гэтай асобы як ўзрост кранштэйна I плюс 1, тым самым 59 00:03:18,630 --> 00:03:23,740 паказаўшы паехаць г-ю ўзрост у нашай Масіў узростаў, дадаць да яго 1, а затым 60 00:03:23,740 --> 00:03:28,370 ўставіць гэтую суму ў нашым запаўняльніка, блізкія дужка, кропка з коскі. 61 00:03:28,370 --> 00:03:33,280 >> Давайце зараз кампіляцыі гэтай праграмы з указаннем маркі ўзрост, і давайце запусцім яго з пункту 62 00:03:33,280 --> 00:03:34,990 слэш узростаў. 63 00:03:34,990 --> 00:03:38,770 І выкажам здагадку, што ёсць толькі тры людзі ў пакоі, і хтосьці 18, 64 00:03:38,770 --> 00:03:40,700 хтосьці 19, хтосьці 20. 65 00:03:40,700 --> 00:03:45,350 Ну, у год, кожны з тых людзей, будзе 19, 20, і 21, 66 00:03:45,350 --> 00:03:46,600 адпаведна. 67 00:03:46,600 --> 00:03:48,948