1 00:00:00,000 --> 00:00:03,160 >> DAVID J. MALAN: Supongamos que queremos escribir un programa que pide todo el mundo en 2 00:00:03,160 --> 00:00:06,740 una habitación para su edad, y luego imprime qué edad las personas será un 3 00:00:06,740 --> 00:00:07,520 año de ahí? 4 00:00:07,520 --> 00:00:09,900 Ahora, obviamente, la aritmética para este problema va a ser bastante 5 00:00:09,900 --> 00:00:10,660 sencillo. 6 00:00:10,660 --> 00:00:14,090 Pero la pregunta interesante es, si nos no saber de antemano cuántas personas 7 00:00:14,090 --> 00:00:16,790 van a estar en esta sala, ¿cómo podríamos ir por el almacenamiento 8 00:00:16,790 --> 00:00:17,980 todas sus edades? 9 00:00:17,980 --> 00:00:19,680 Bueno, vamos a echar un vistazo. 10 00:00:19,680 --> 00:00:22,760 >> Comencemos primero que llevó al usuario, como lo he hecho aquí, para la 11 00:00:22,760 --> 00:00:26,410 número de personas en la habitación utilizando getInt y un bucle do-while con el fin de 12 00:00:26,410 --> 00:00:28,220 conseguir un entero n. 13 00:00:28,220 --> 00:00:32,310 Supongamos que ahora queremos pedir cada uno de esos persona en la habitación para su edad. 14 00:00:32,310 --> 00:00:35,820 Bueno, mi instinto sería utilizar un bucle para hacer eso provocó, pero también 15 00:00:35,820 --> 00:00:37,840 necesita un lugar para almacenar las edades de esas personas. 16 00:00:37,840 --> 00:00:40,760 Y mis primeros instintos no habría utilizar una variable para la primera 17 00:00:40,760 --> 00:00:43,690 edad de la persona, otra variable para la edad de la segunda persona, 18 00:00:43,690 --> 00:00:44,780 especie de largo de líneas. 19 00:00:44,780 --> 00:00:46,230 Edad Int. - 20 00:00:46,230 --> 00:00:48,850 bueno, vamos a llamarlo 1 para la primera persona. 21 00:00:48,850 --> 00:00:51,480 Int. edad 2 para la segunda persona. 22 00:00:51,480 --> 00:00:53,980 Int. edad 3 para la tercera persona. 23 00:00:53,980 --> 00:00:56,750 >> Pero espere un minuto, esto no es tal vez el mejor camino para bajar. 24 00:00:56,750 --> 00:01:00,620 Porque yo no sé de antemano de escribir y compilar este programa cómo 25 00:01:00,620 --> 00:01:02,330 muchos usuarios no van a ser. 26 00:01:02,330 --> 00:01:06,590 Y por otra parte, si hay tantos como 100 usuarios, declarando 100 variables 27 00:01:06,590 --> 00:01:10,350 especie de extraño nombre de este tipo no hace sentirse como el mejor diseño. 28 00:01:10,350 --> 00:01:14,430 >> Bueno, por suerte existe otra tipo de variable llamado una matriz que 29 00:01:14,430 --> 00:01:18,710 nos permite almacenar cualquier número de enteros dentro de ella, incluso si no sabemos 30 00:01:18,710 --> 00:01:22,190 al escribir mi programa de cuántos tales ints que van a necesitar. 31 00:01:22,190 --> 00:01:25,970 Así que vamos a retroceder y eliminar estos varios enteros, y en lugar de reemplazarlo 32 00:01:25,970 --> 00:01:29,620 con una variable llamada, decir, las edades, en plural. 33 00:01:29,620 --> 00:01:33,420 Pero vamos a especificar con mayor detalle en esta línea de código entre corchetes que nos 34 00:01:33,420 --> 00:01:35,460 querer n ints. 35 00:01:35,460 --> 00:01:39,570 Y por lo tanto, lo haremos colectivamente referirse a estos ints como las edades. 36 00:01:39,570 --> 00:01:43,490 >> Ahora, en un momento voy a ser capaz de obtener en cada uno de los enteros en esta matriz 37 00:01:43,490 --> 00:01:47,270 de manera similar a modo de corchete notación, a partir de 0. 38 00:01:47,270 --> 00:01:51,720 Así que vamos a proceder ahora en un bucle para incitar a los usuarios a sus edades. 39 00:01:51,720 --> 00:01:54,780 Para int tengo 0. 40 00:01:54,780 --> 00:01:59,464 I es menor que N, el número de personas en la habitación, me plus plus. 41 00:01:59,464 --> 00:02:06,610 >> Y ahora dentro de este bucle, digamos printf edad de la persona número, porcentaje que 42 00:02:06,610 --> 00:02:09,430 es un marcador de posición, coma. 43 00:02:09,430 --> 00:02:13,210 Y ahora, en lugar de empezar a contar a partir 0 en el propio programa, vamos a 44 00:02:13,210 --> 00:02:17,180 incremento más que para el 1 de modo que una normal, persona que utiliza este programa 45 00:02:17,180 --> 00:02:20,120 no tiene que contar como un poderío científico de la computación. 46 00:02:20,120 --> 00:02:26,130 Ahora vamos a hacer las edades, el soporte que, por lo tanto especificando que la edad de orden i en nuestro 47 00:02:26,130 --> 00:02:31,480 gama de edades se va a poner el valor de retorno de getInt. 48 00:02:31,480 --> 00:02:37,800 >> Ahora por debajo de este bucle, vamos a proceder asumir que pasa algún tiempo. 49 00:02:37,800 --> 00:02:41,690 Y ahora vamos a proceder en otro bucle a todo el mundo en la sala de envejecer en realidad 50 00:02:41,690 --> 00:02:42,800 por un año. 51 00:02:42,800 --> 00:02:48,110 Así que de nuevo, por int tengo 0, I es menos que N, el número de personas en el 52 00:02:48,110 --> 00:02:49,680 habitación, me plus plus. 53 00:02:49,680 --> 00:02:57,210 >> Y ahora dentro de este bucle, digamos printf dentro de un año el número de personas, 54 00:02:57,210 --> 00:03:00,990 por ciento que es un marcador de posición, voluntad sea, ciento Yo es otro 55 00:03:00,990 --> 00:03:03,210 marcador de posición, años de edad. 56 00:03:03,210 --> 00:03:07,230 Y a continuación, para conectar a los marcadores de posición, primero vamos a decir que más 57 00:03:07,230 --> 00:03:11,220 1, por lo que de nuevo empezamos a contar para el usuario a partir de 1. 58 00:03:11,220 --> 00:03:18,630 Y luego vamos a enchufar en la edad de la persona como soporte de las edades que más 1, de ese modo 59 00:03:18,630 --> 00:03:23,740 especificando ir a buscar la edad de orden i en nuestro gama de edades, añadir 1 a la misma, y ​​luego 60 00:03:23,740 --> 00:03:28,370 insertar esa suma en nuestro marcador de posición, cerca paren, y coma. 61 00:03:28,370 --> 00:03:33,280 >> Ahora vamos a compilar este programa con maquillaje edades, y lo ejecutamos con el punto 62 00:03:33,280 --> 00:03:34,990 recortar las edades. 63 00:03:34,990 --> 00:03:38,770 Y supongamos que hay sólo tres personas en la sala, y alguien es 18, 64 00:03:38,770 --> 00:03:40,700 alguien tiene 19 años, una persona es de 20. 65 00:03:40,700 --> 00:03:45,350 Bueno, en un año, cada una de esas personas va a ser de 19, 20 y 21, 66 00:03:45,350 --> 00:03:46,600 respectivamente. 67 00:03:46,600 --> 00:03:48,948