1 00:00:01,840 --> 00:00:23,480 Otra actividad que os propongo para enseñar a los niños a hacer algoritmos 2 00:00:23,480 --> 00:00:29,839 es donde el objetivo sea que el gato nos recite una tabla de multiplicar. 3 00:00:30,579 --> 00:00:32,859 En este caso, ¿qué estoy buscando? 4 00:00:33,100 --> 00:00:36,439 Busco que los niños aprendan a utilizar el bloque unir, 5 00:00:37,340 --> 00:00:38,979 que aprendan a usar variables, 6 00:00:38,979 --> 00:00:41,240 que aprendan a usar contadores 7 00:00:41,240 --> 00:00:45,979 y que hagan un algoritmo con una estructura repetitiva. 8 00:00:45,979 --> 00:01:08,280 Repetitiva. Pensando en todo esto, ¿cuál va a ser la primera versión del programa que va a hacer el alumno? La primera opción, la más sencilla y la que supone más trabajo, es que al hacer clic en la bandera verde, el gato nos diga cada uno de los productos que se generan en una tabla de multiplicar. 9 00:01:08,280 --> 00:01:24,739 Vamos a poner tres para no extendernos demasiado. Uno por cinco igual a cinco, dos por cinco igual a diez y tres por cinco igual a quince. 10 00:01:24,739 --> 00:01:41,439 Llegamos a este punto y han hecho todos los productos y entonces les enseñamos cómo dividir una frase, cada una de las multiplicaciones en los distintos elementos que la forman. 11 00:01:41,439 --> 00:01:50,680 Entonces tenemos el operador unir y necesitamos que haya tantos globitos como elementos allá en este producto. 12 00:01:51,159 --> 00:02:05,500 Necesitamos uno para el primer factor, otro para el operador multiplicar, otro para el segundo factor, otro para el igual y otro para el resultado. 13 00:02:05,500 --> 00:02:22,340 Si yo quiero traducir esto en esta composición de frase, tendría que poner aquí el 1, aquí pondríamos el por, aquí pondríamos el 5, aquí el igual y aquí el 5. 14 00:02:22,340 --> 00:02:35,139 esto lo metemos dentro del globo decir y ya tendríamos lo mismo pero segmentado en cada uno de los elementos que forman la multiplicación 15 00:02:35,139 --> 00:02:44,599 factor 1 operador factor 2 igual resultado esto lo vamos a poner en los tres bloques en vuestro caso serían 10 16 00:02:44,599 --> 00:02:57,729 Aquí en lugar del 1 tengo el 2, en lugar de 5 el resultado es 10, aquí tenemos 3 y el resultado 15. 17 00:02:58,590 --> 00:03:01,349 El alumno hará esto 10 veces. 18 00:03:02,050 --> 00:03:11,349 Una vez que tenemos todo y vemos que funciona, les recordamos que podemos utilizar el operador multiplicar, que lo tenemos aquí. 19 00:03:11,349 --> 00:03:37,169 Si yo a este operador le pongo aquí, no tengo que hacer mentalmente ese cálculo, sino que aquí le pongo que me dé el resultado de multiplicar uno por cinco y ya no estoy calculando. El ordenador me hace el cálculo por mí. Esa es una de las utilidades que tiene usar programación, usar calculadoras, usar los ordenadores, ¿no? Que hagan la tarea por mí, me faciliten la vida. 20 00:03:37,169 --> 00:03:44,129 Vale, pues entonces aquí ponemos 3 por 5 y así vamos construyendo toda la tabla de multiplicar. 21 00:03:45,689 --> 00:03:49,430 Siguiente paso, les recordamos, ¿qué número se repite? 22 00:03:49,669 --> 00:03:55,090 Estamos repitiendo constantemente el número 5, vamos a usar una constante, ¿no? 23 00:03:55,349 --> 00:04:02,469 Vamos a usar una variable, nos unimos a las variables, creamos una variable que se llame tabla 24 00:04:02,469 --> 00:04:09,259 y al inicio a la variable le vamos a decir qué tabla de multiplicar estamos haciendo, 25 00:04:09,539 --> 00:04:10,780 que en este caso es el 5. 26 00:04:11,379 --> 00:04:15,900 Entonces, como queremos hacer la tabla del 5, la hemos guardado dentro de esta variable 27 00:04:15,900 --> 00:04:22,779 y a partir de ahora no uso el número 5, sino que uso el contenido de la variable tabla. 28 00:04:23,639 --> 00:04:26,019 Llamo al 5 por su nuevo nombre, que es tabla. 29 00:04:26,899 --> 00:04:30,560 Y entonces allá donde tengo un 5, pongo esta variable. 30 00:04:30,560 --> 00:04:41,100 Es importante enseñar a los alumnos a leer los programas, que cuando lean los bloques sepan interpretar cada uno de sus elementos. 31 00:04:41,100 --> 00:04:55,939 En este caso, yo le he dicho al gato que me una todos estos componentes en una frase donde diga 1 por tabla, que es tabla, tabla es el 5, 1 por 5 sea igual al producto de 1 por 5. 32 00:04:55,939 --> 00:05:08,259 Cuando tenemos todo hecho, vemos que aquí en esta columna tenemos una serie, una serie donde va incrementándose en una unidad. 33 00:05:08,560 --> 00:05:11,160 Tenemos los números 1, 2, 3, 4, 5. 34 00:05:12,180 --> 00:05:23,689 Vamos a ver qué ocurre si yo me creo una variable que se llame serie y a esta variable le voy a dar el valor 0. 35 00:05:23,689 --> 00:05:35,189 y voy a hacer que después de cada bloque decir, en esa variable serie, introduzca una unidad más, es decir, sumo una unidad. 36 00:05:35,189 --> 00:05:40,670 Si yo tenía un 0, cuando llego aquí, le sumo 1, pues ahora en serie tengo el número 1. 37 00:05:41,310 --> 00:05:47,649 Y si llego aquí y meto otra unidad, ahora en serie voy a tener el valor 2. 38 00:05:47,949 --> 00:05:50,629 Tenía un 1, meto una unidad, ya tengo un 2. 39 00:05:50,629 --> 00:06:00,949 y cuando vengo aquí el valor de serie va a tener otra unidad más, tengo un 3 y así vamos poniendo debajo de cada decir un sumar 40 00:06:00,949 --> 00:06:10,490 y vemos que ocurre cuando le doy a la bandera verde, vamos viendo, utilizando esta visualización de la variable, vamos viendo como cambian. 41 00:06:11,230 --> 00:06:19,529 Decimos, anda pues fíjate que este valor sería cogido, esta variable sería cogido los mismos valores que esta columna. 42 00:06:20,370 --> 00:06:25,889 ¿Qué ocurriría si yo en lugar de poner aquí este número, pongo la variable? 43 00:06:26,269 --> 00:06:33,870 Ponemos la variable serie en este factor. 44 00:06:35,290 --> 00:06:40,410 Y además, esta otra columna es igual, también hemos ido incrementando en 1. 45 00:06:40,910 --> 00:06:42,750 Vamos a poner ahí también serie. 46 00:06:48,449 --> 00:06:57,699 Cuando ejecutamos nuestro programa, vemos que se está incrementando y me está haciendo la tabla de multiplicar correcta. 47 00:06:57,699 --> 00:07:16,579 Solo hay un detalle, fijaros que al principio ha empezado con 0 y yo no tenía un 0. ¿Por qué ocurre? A mí me gusta con los niños que vayan viendo, yo cuando hago un ejercicio junto a ellos a veces cometo errores forzados, porque quiero que aprendan a analizar sus programas. 48 00:07:16,579 --> 00:07:34,639 Entonces decimos, uy, ha salido un 0 que no teníamos antes. ¿Por qué? Pues entonces vemos aquí que a serie hemos empezado con el valor 0 y como no queremos saber la multiplicación de 0 por 5, porque desde el principio la hemos planificado empezando con el 1, pues aquí decimos 1. 49 00:07:34,639 --> 00:07:39,600 Y ahora sí, ahora hace la multiplicación que nosotros queríamos. 50 00:07:41,259 --> 00:07:46,939 Nos paramos a analizar nuestro programa y decimos ¿cuántos bloques diferentes tenemos en el programa? 51 00:07:47,819 --> 00:07:53,980 Pues mirad, tenemos uno, estos los vamos a considerar diferentes porque en cada caso hemos usado una variable distinta. 52 00:07:54,579 --> 00:07:57,579 Tenemos uno, dos, tres, cuatro, cinco bloques. 53 00:07:58,660 --> 00:08:03,040 ¿Cuántos bloques se repiten? Pues hay dos bloques que se están repitiendo. 54 00:08:03,500 --> 00:08:13,439 ¿Cuántas veces se repiten? Se repiten 10 veces y esa repetición está siempre una detrás de la otra y en el mismo orden. 55 00:08:13,779 --> 00:08:23,740 Como están siempre una detrás de la otra y en el mismo orden, podríamos poner un bucle, podríamos decir en control que se repita 10 veces. 56 00:08:24,220 --> 00:08:30,079 ¿Qué vamos a repetir 10 veces? ¿Los 10 bloques? No, porque lo haríamos 100 veces, eso no tiene sentido. 57 00:08:30,079 --> 00:08:44,080 Lo que vamos a hacer es utilizar los dos bloques que estamos repitiendo continuamente, esos dos bloques, diez veces. Si ahora le doy a la bandera verde, pues me va a hacer toda la tabla de multiplicar. 58 00:08:44,080 --> 00:08:49,960 multiplicar. Habremos visto, yo les mantengo una copia del programa, lo que es la versión anterior 59 00:08:49,960 --> 00:08:56,559 al lado para que puedan comparar. Fijaros que tenemos un montón de líneas que las hemos 60 00:08:56,559 --> 00:09:03,600 sustituido por un trozo de código muy pequeño. Hemos simplificado nuestro programa. Además, 61 00:09:03,740 --> 00:09:09,340 estamos generalizando nuestro programa porque con sólo cambiar el valor de la variable tabla 62 00:09:09,340 --> 00:09:12,240 podemos reproducir cualquier tabla de multiplicar 63 00:09:12,240 --> 00:09:15,399 o podemos cambiar el operador producto 64 00:09:15,399 --> 00:09:17,419 por cualquier operador matemático 65 00:09:17,419 --> 00:09:22,159 y generar series con sumas, restas o divisiones.