1 00:00:00,000 --> 00:00:03,160 >> DAVID J. MALAN: Ας υποθέσουμε ότι θέλουμε να γράψουμε ένα πρόγραμμα που ζητάει απ 'όλους στην 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 και ένας βρόχος do-ενώ για να 12 00:00:26,410 --> 00:00:28,220 πάρετε έναν ακέραιο n. 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 μας επιτρέπει να αποθηκεύσετε οποιοδήποτε αριθμό ints μέσα από αυτό, ακόμη και αν δεν ξέρουμε 30 00:01:18,710 --> 00:01:22,190 κατά τη σύνταξη του προγράμματος μου, πόσες όπως ints θα πάμε να χρειαστεί. 31 00:01:22,190 --> 00:01:25,970 Έτσι, ας κάνουν πίσω και να διαγράψετε αυτά αρκετές ints, και αντί να αντικαταστήσει 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 θέλουν ν ints. 35 00:01:35,460 --> 00:01:39,570 Και ως εκ τούτου, θα είμαστε συλλογικά αναφέρονται σε αυτές τις ints τις ηλικίες. 36 00:01:39,570 --> 00:01:43,490 >> Τώρα, ακριβώς σε μια στιγμή που θα είναι σε θέση να πάρει σε καθένα από τα ints στην παρούσα συστοιχία 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 Για int παίρνω 0. 40 00:01:54,780 --> 00:01:59,464 Ι είναι μικρότερο από το Ν, ο αριθμός των ατόμων στην αίθουσα, εγώ συν συν. 41 00:01:59,464 --> 00:02:06,610 >> Και τώρα μέσα σε αυτό το βρόχο, ας πούμε printf ηλικία του ατόμου αριθμό, ποσοστό που 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, έτσι διευκρινίζοντας ότι το 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, το Ι είναι μικρότερο από το Ν, ο αριθμός των ατόμων στην 52 00:02:48,110 --> 00:02:49,680 δωμάτιο, μου συν συν. 53 00:02:49,680 --> 00:02:57,210 >> Και τώρα στο εσωτερικό αυτού του βρόχου, ας πούμε printf ένα χρόνο από τώρα τον αριθμό άτομο, 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 προσδιορίζοντας πάει να πάρει το i-οστό ηλικία μας συστοιχία των ηλικιών, προσθέστε 1 σε αυτό, και στη συνέχεια 60 00:03:23,740 --> 00:03:28,370 εισάγετε το ποσό αυτό στο σύμβολο κράτησης θέσης μας, κοντά paren, ερωτηματικό. 61 00:03:28,370 --> 00:03:33,280 >> Ας τώρα να μεταγλωττίσετε το πρόγραμμα με make ηλικίες, και ας το τρέξει με τελεία 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