1 00:00:00,000 --> 00:00:03,160 >> David J. MALAN: Să presupunem că vrem să scrie un program care cere toată lumea în 2 00:00:03,160 --> 00:00:06,740 o cameră pentru vârsta lor, și apoi imprimă cum vechi acei oameni va fi un 3 00:00:06,740 --> 00:00:07,520 an de aici? 4 00:00:07,520 --> 00:00:09,900 Acum, evident, aritmetica pentru acest problema va fi destul de 5 00:00:09,900 --> 00:00:10,660 simplu. 6 00:00:10,660 --> 00:00:14,090 Dar interesant întrebarea este, dacă ne-am Nu știe în avans cât de mulți oameni 7 00:00:14,090 --> 00:00:16,790 vor fi în această cameră, cum am putea merge cu privire la stocarea 8 00:00:16,790 --> 00:00:17,980 toate vârstele lor? 9 00:00:17,980 --> 00:00:19,680 Ei bine, haideți să aruncăm o privire. 10 00:00:19,680 --> 00:00:22,760 >> Să începem mai întâi determinat utilizatorului, așa cum am făcut aici, pentru 11 00:00:22,760 --> 00:00:26,410 numărul de persoane în cameră, folosind getint și o buclă do-în timp ce, în scopul de a 12 00:00:26,410 --> 00:00:28,220 a obține un număr întreg n. 13 00:00:28,220 --> 00:00:32,310 Să presupunem că acum vrem să întreb fiecare astfel de persoană în camera de vârsta lor. 14 00:00:32,310 --> 00:00:35,820 Ei bine, instinctele mele ar fi de a utiliza un buclă a face acest lucru a determinat, dar eu, de asemenea, 15 00:00:35,820 --> 00:00:37,840 au nevoie de un loc pentru a stoca vârstele acelor oameni. 16 00:00:37,840 --> 00:00:40,760 Și primele mele instincte nu ar fi de a utiliza o variabilă pentru prima 17 00:00:40,760 --> 00:00:43,690 varsta persoanei, o altă variabilă pentru vârsta a doua persoanei, 18 00:00:43,690 --> 00:00:44,780 un fel de-a lungul liniilor. 19 00:00:44,780 --> 00:00:46,230 Vârstă Int - 20 00:00:46,230 --> 00:00:48,850 bine, hai să-i spunem 1 pentru prima persoană. 21 00:00:48,850 --> 00:00:51,480 Int vârsta de 2 ani pentru a doua persoană. 22 00:00:51,480 --> 00:00:53,980 Int vârsta de 3 ani pentru a treia persoană. 23 00:00:53,980 --> 00:00:56,750 >> Dar stai un minut, acest lucru nu este, probabil, cea mai bună cale de a merge în jos. 24 00:00:56,750 --> 00:01:00,620 Pentru că nu știu în avans de scrierea și compilarea acestui program cum 25 00:01:00,620 --> 00:01:02,330 mulți utilizatori de acolo vor fi. 26 00:01:02,330 --> 00:01:06,590 Și în plus, în cazul în care nu există la fel de multe ca 100 de utilizatori, declarând 100 de variabile 27 00:01:06,590 --> 00:01:10,350 un fel de ciudat numit ca acest lucru nu simt ca cel mai bun design. 28 00:01:10,350 --> 00:01:14,430 >> Ei bine, din fericire, există o altă tip de variabilă numită o matrice care 29 00:01:14,430 --> 00:01:18,710 ne permite să stocați un număr nelimitat de int în interiorul de ea, chiar dacă nu știm 30 00:01:18,710 --> 00:01:22,190 atunci când scrieți programul meu de câte astfel int vom avea nevoie. 31 00:01:22,190 --> 00:01:25,970 Deci, haideți să reiau ideea și șterge aceste mai multe int, și în loc să o înlocuiască 32 00:01:25,970 --> 00:01:29,620 cu o variabilă numită, spun, varsta, plural. 33 00:01:29,620 --> 00:01:33,420 Dar haideți să specificați în continuare pe această linie de cod în paranteze pătrate pe care le 34 00:01:33,420 --> 00:01:35,460 Vreau n int. 35 00:01:35,460 --> 00:01:39,570 Și, prin urmare, vom face în mod colectiv se referă la aceste int ca vârstele. 36 00:01:39,570 --> 00:01:43,490 >> Acum, intr-o clipa voi fi în stare să mă la fiecare dintre cele ints în această matrice 37 00:01:43,490 --> 00:01:47,270 similar cu titlu de paranteză notație, incepand de la 0. 38 00:01:47,270 --> 00:01:51,720 Așa că haideți să procedeze acum într-o buclă de cere utilizatorilor pentru vârsta lor. 39 00:01:51,720 --> 00:01:54,780 Pentru int mă 0. 40 00:01:54,780 --> 00:01:59,464 I este mai mică decât N, numărul de persoane in camera, am plus plus. 41 00:01:59,464 --> 00:02:06,610 >> Și acum în această buclă, să zicem printf vârstă de numărul de persoane, la suta I 42 00:02:06,610 --> 00:02:09,430 este un substituent, virgulă. 43 00:02:09,430 --> 00:02:13,210 Și acum, mai degrabă decât de la începe numărarea 0 în programul de sine, hai la 44 00:02:13,210 --> 00:02:17,180 Cel creștere I, până la 1, astfel încât o normală persoană care utilizează acest program 45 00:02:17,180 --> 00:02:20,120 nu trebuie să conta ca un s-ar putea om de știință de calculator. 46 00:02:20,120 --> 00:02:26,130 Să facem acum vârstele, suport eu, prin urmare, precizând că vârsta i-lea în nostru 47 00:02:26,130 --> 00:02:31,480 matrice de varsta este de gând pentru a obține valoarea de returnare a getint. 48 00:02:31,480 --> 00:02:37,800 >> Acum, sub această buclă, să procedați să presupunem că ceva timp trece. 49 00:02:37,800 --> 00:02:41,690 Și să procedeze acum într-o altă buclă la varsta de fapt, toată lumea în sala de 50 00:02:41,690 --> 00:02:42,800 cu un an. 51 00:02:42,800 --> 00:02:48,110 Deci, din nou, pentru int primesc 0, I este mai puțin decât N, numărul de persoane din 52 00:02:48,110 --> 00:02:49,680 cameră, am plus plus. 53 00:02:49,680 --> 00:02:57,210 >> Și acum în interiorul această buclă, să zicem printf un an de acum numărul de persoane, 54 00:02:57,210 --> 00:03:00,990 la sută I este un substituent, va fi, suta I este un alt 55 00:03:00,990 --> 00:03:03,210 substituent, de ani. 56 00:03:03,210 --> 00:03:07,230 Și apoi să conectați în cele substituenți, să spunem că în primul rând am plus 57 00:03:07,230 --> 00:03:11,220 1, astfel încât nou, vom începe numărarea pentru utilizator de la 1. 58 00:03:11,220 --> 00:03:18,630 Și apoi să conectați în vârstă acelei persoane ca vârstele suport I plus 1, astfel 59 00:03:18,630 --> 00:03:23,740 specificând să iau vârsta i-lea în nostru matrice de vârste, se adaugă 1 la ea, și apoi 60 00:03:23,740 --> 00:03:28,370 introduce această sumă în substituent nostru, paren apropiate, punct și virgulă. 61 00:03:28,370 --> 00:03:33,280 >> Hai acum compila acest program cu make vârstele, și să-l rulați cu punct 62 00:03:33,280 --> 00:03:34,990 slash vârstele. 63 00:03:34,990 --> 00:03:38,770 Și să presupunem că există doar trei persoane în cameră, și cineva este de 18, 64 00:03:38,770 --> 00:03:40,700 cineva este de 19, cineva este de 20. 65 00:03:40,700 --> 00:03:45,350 Ei bine, într-un an, fiecare dintre acei oameni va fi de 19, 20, și 21, 66 00:03:45,350 --> 00:03:46,600 respectiv. 67 00:03:46,600 --> 00:03:48,948