1 00:00:00,000 --> 00:00:03,160 >> DAVID J. MALAN: Katakan kita mahu menulis satu program yang meminta semua orang di 2 00:00:03,160 --> 00:00:06,740 bilik untuk umur mereka, dan kemudian cetakan bagaimana lama mereka akan menjadi 3 00:00:06,740 --> 00:00:07,520 tahun itu? 4 00:00:07,520 --> 00:00:09,900 Kini, jelas aritmetik untuk ini masalah akan menjadi agak 5 00:00:09,900 --> 00:00:10,660 terus-terang. 6 00:00:10,660 --> 00:00:14,090 Tetapi persoalan yang menarik ialah, jika kita tidak mengetahui terlebih dahulu berapa ramai orang 7 00:00:14,090 --> 00:00:16,790 akan berada di dalam bilik ini, bagaimana kita boleh pergi tentang menyimpan 8 00:00:16,790 --> 00:00:17,980 semua peringkat umur mereka? 9 00:00:17,980 --> 00:00:19,680 Nah, mari kita melihat. 10 00:00:19,680 --> 00:00:22,760 >> Mari kita mulakan dengan yang pertama mendorong pengguna, seperti yang saya lakukan di sini, bagi 11 00:00:22,760 --> 00:00:26,410 beberapa orang di dalam bilik menggunakan getInt dan gelung do-sementara untuk 12 00:00:26,410 --> 00:00:28,220 mendapatkan integer n. 13 00:00:28,220 --> 00:00:32,310 Katakan kita kini mahu untuk meminta setiap apa-apa orang di dalam bilik untuk usia mereka. 14 00:00:32,310 --> 00:00:35,820 Nah, naluri saya akan menggunakan gelung untuk melakukan itu mendorong, tetapi saya juga 15 00:00:35,820 --> 00:00:37,840 memerlukan tempat untuk menyimpan peringkat umur mereka rakyat. 16 00:00:37,840 --> 00:00:40,760 Dan naluri pertama saya tidak akan menggunakan pembolehubah yang pertama 17 00:00:40,760 --> 00:00:43,690 umur orang itu, pemboleh ubah lain untuk umur orang yang kedua, 18 00:00:43,690 --> 00:00:44,780 jenis garisan. 19 00:00:44,780 --> 00:00:46,230 Umur Int - 20 00:00:46,230 --> 00:00:48,850 baik, mari kita memanggilnya 1 untuk orang pertama. 21 00:00:48,850 --> 00:00:51,480 Int umur 2 untuk orang yang kedua. 22 00:00:51,480 --> 00:00:53,980 Int umur 3 untuk orang ketiga. 23 00:00:53,980 --> 00:00:56,750 >> Tetapi tunggu satu minit, ini tidak mungkin jalan yang terbaik untuk pergi ke bawah. 24 00:00:56,750 --> 00:01:00,620 Kerana saya tidak tahu lebih awal daripada menulis dan menyusun program ini bagaimana 25 00:01:00,620 --> 00:01:02,330 ramai pengguna ada akan menjadi. 26 00:01:02,330 --> 00:01:06,590 Dan lebih-lebih lagi, jika ada seramai Pengguna 100, 100 mengisytiharkan pembolehubah 27 00:01:06,590 --> 00:01:10,350 semacam aneh dinamakan seperti ini tidak rasa seperti reka bentuk yang terbaik. 28 00:01:10,350 --> 00:01:14,430 >> Nah, bersyukur kerana terdapat wujud lain jenis pembolehubah yang dipanggil satu pameran yang 29 00:01:14,430 --> 00:01:18,710 membolehkan kita untuk menyimpan apa-apa bilangan Ints di dalamnya, walaupun kita tidak tahu 30 00:01:18,710 --> 00:01:22,190 semasa menulis program saya berapa ramai Ints itu kita akan perlu. 31 00:01:22,190 --> 00:01:25,970 Jadi mari kita menarik balik dan memadam beberapa Ints, sebaliknya menggantikannya 32 00:01:25,970 --> 00:01:29,620 dengan satu pembolehubah dipanggil, berkata, peringkat umur, majmuk. 33 00:01:29,620 --> 00:01:33,420 Tetapi mari kita lagi nyatakan di baris ini kod dalam kurungan persegi yang kita 34 00:01:33,420 --> 00:01:35,460 mahu n Ints. 35 00:01:35,460 --> 00:01:39,570 Oleh itu, kita akan secara kolektif merujuk kepada Ints ini sebagai peringkat umur. 36 00:01:39,570 --> 00:01:43,490 >> Sekarang dalam seketika saya akan dapat untuk mendapatkan di setiap Ints dalam array ini 37 00:01:43,490 --> 00:01:47,270 juga melalui kurungan persegi notasi, bermula pada 0. 38 00:01:47,270 --> 00:01:51,720 Jadi mari kita meneruskan sekarang dalam gelung untuk mendorong pengguna untuk usia mereka. 39 00:01:51,720 --> 00:01:54,780 Untuk int saya mendapat 0. 40 00:01:54,780 --> 00:01:59,464 Saya adalah kurang daripada N, bilangan orang yang di dalam bilik, saya plus plus. 41 00:01:59,464 --> 00:02:06,610 >> Dan kini dalam gelung ini, katakan umur printf bilangan orang, peratus saya 42 00:02:06,610 --> 00:02:09,430 adalah pemegang tempat, koma. 43 00:02:09,430 --> 00:02:13,210 Dan sekarang, daripada mula mengira dari 0 dalam program itu sendiri, mari kita di 44 00:02:13,210 --> 00:02:17,180 kenaikan-kurangnya saya sebanyak 1 supaya normal orang yang menggunakan program ini 45 00:02:17,180 --> 00:02:20,120 tidak perlu mengira seperti saintis komputer mungkin. 46 00:02:20,120 --> 00:02:26,130 Mari sekarang kita buat peringkat umur, kurungan saya, dengan itu yang menyatakan bahawa i-ke-zaman yang kita 47 00:02:26,130 --> 00:02:31,480 pelbagai peringkat umur akan mendapatkan nilai pulangan getInt. 48 00:02:31,480 --> 00:02:37,800 >> Sekarang di bawah gelung ini, mari kita meneruskan untuk menganggap bahawa masa berlalu. 49 00:02:37,800 --> 00:02:41,690 Dan mari kita kini meneruskan dalam gelung lain untuk benar-benar semakin tua semua orang di dalam bilik 50 00:02:41,690 --> 00:02:42,800 oleh satu tahun. 51 00:02:42,800 --> 00:02:48,110 Jadi sekali lagi, untuk int saya mendapat 0, saya kurang daripada N, bilangan orang di 52 00:02:48,110 --> 00:02:49,680 bilik, saya plus plus. 53 00:02:49,680 --> 00:02:57,210 >> Dan kini di dalam gelung ini, katakan printf setahun dari sekarang beberapa orang, 54 00:02:57,210 --> 00:03:00,990 peratus I adalah pemegang tempat yang, akan menjadi, peratus saya merupakan satu lagi 55 00:03:00,990 --> 00:03:03,210 pemegang tempat, tahun. 56 00:03:03,210 --> 00:03:07,230 Dan kemudian untuk dimasukkan ke dalam mereka ruang letak, mari kita pertama mengatakan saya ditambah 57 00:03:07,230 --> 00:03:11,220 1, supaya sekali lagi kita mula mengira untuk pengguna daripada 1. 58 00:03:11,220 --> 00:03:18,630 Dan kemudian mari kita pasangkan umur orang itu sebagai peringkat umur kurungan saya campur 1, dengan itu 59 00:03:18,630 --> 00:03:23,740 menyatakan pergi mendapatkan i-ke-zaman yang kita pelbagai peringkat umur, tambah 1 kepadanya, dan kemudian 60 00:03:23,740 --> 00:03:28,370 memasukkan jumlah wang itu ke dalam pemegang tempat kami, paren rapat, koma bertitik. 61 00:03:28,370 --> 00:03:33,280 >> Sekarang mari kita menyusun program ini dengan solekan peringkat umur, dan mari kita menjalankannya dengan titik 62 00:03:33,280 --> 00:03:34,990 mengurangkan peringkat umur. 63 00:03:34,990 --> 00:03:38,770 Dan menganggap bahawa hanya terdapat tiga orang di dalam bilik, dan seseorang adalah 18, 64 00:03:38,770 --> 00:03:40,700 seseorang adalah 19, seseorang ialah 20. 65 00:03:40,700 --> 00:03:45,350 Nah, dalam satu tahun, setiap orang-orang orang akan menjadi 19, 20, dan 21, 66 00:03:45,350 --> 00:03:46,600 masing-masing. 67 00:03:46,600 --> 00:03:48,948