1 00:00:10,539 --> 00:00:35,659 lo que vamos a hacer nosotros es programar 2 00:00:35,659 --> 00:00:38,000 y en la programación 3 00:00:38,000 --> 00:00:43,039 lo primero que tenemos que hacer es saber la diferencia 4 00:00:43,039 --> 00:00:50,479 entre lo que es un algoritmo y lo que es un programa 5 00:00:50,479 --> 00:00:53,950 eso es lo primero 6 00:00:53,950 --> 00:01:02,179 un algoritmo es una secuencia ordenada de pasos 7 00:01:02,179 --> 00:01:05,840 que resuelven un problema 8 00:01:05,840 --> 00:01:08,909 punto final 9 00:01:08,909 --> 00:01:20,140 Por tanto, un algoritmo es una cosa que tiene que ver con un concepto, ¿vale? 10 00:01:20,219 --> 00:01:34,480 Es un concepto, son unas instrucciones de cómo resolver un problema, pero de forma abstracta, no es algo concreto, ¿vale? 11 00:01:34,480 --> 00:01:41,239 Por ejemplo, supongamos que yo me he quedado sin tiza, ¿vale? 12 00:01:41,239 --> 00:01:48,879 no tengo tiza para pintar en la pizarra, ¿qué hago? Imagínate, yo ahora mismo me acabo de convertir en un robot 13 00:01:48,879 --> 00:02:00,420 y solamente obedezco órdenes directas. Venga, ¿qué hago? Tengo mi tiza que se me ha acabado, ¿qué hago? 14 00:02:00,920 --> 00:02:01,719 Quedarme parado. 15 00:02:02,239 --> 00:02:05,640 Quedarme parado, vale. Para vosotros bien, que el resto no mola. 16 00:02:07,719 --> 00:02:12,360 Hasta que me vayan, quedarme parado hasta que me den una tiza y si nadie me da una tiza yo tengo que resolver mi propio problema. 17 00:02:12,740 --> 00:02:15,919 buscar una tiza y cogerla 18 00:02:15,919 --> 00:02:18,199 podemos decirle 19 00:02:18,199 --> 00:02:19,919 baja por tiza, que es una orden 20 00:02:19,919 --> 00:02:21,759 bájate a por tiza, claro 21 00:02:21,759 --> 00:02:23,520 pero es que esa orden es una orden compleja 22 00:02:23,520 --> 00:02:25,960 que voy a desgranarla en órdenes más sencillas 23 00:02:26,979 --> 00:02:27,759 ¿no? 24 00:02:27,860 --> 00:02:29,539 vete hasta la escalera, baja la escalera 25 00:02:29,539 --> 00:02:31,159 pregunta por la tiza y sube 26 00:02:31,159 --> 00:02:33,280 bueno, pero esas también son muy complejas 27 00:02:33,280 --> 00:02:35,639 entonces tenemos que irlo desgranando hasta llegar 28 00:02:35,639 --> 00:02:37,639 a órdenes tan sencillas 29 00:02:37,639 --> 00:02:39,580 que el propio ordenador 30 00:02:39,580 --> 00:02:41,039 las pueda entender, por ejemplo 31 00:02:41,039 --> 00:02:55,300 Si yo soy el robot y estoy sin tiza, pues tienes que decir, avanza hasta la puerta, ¿vale? Yo cojo, y eso ya es complejo, porque sería girar a la izquierda, dar diez pasos, repite, dar un paso hasta que llegues a la puerta, cuando llegues a la puerta, ¿vale? 32 00:02:55,740 --> 00:03:02,560 ¿La puerta está abierta o cerrada? Está cerrada. Tendrás que abrir la puerta, porque si dice vete para abajo y está la puerta cerrada, me estrello contra la puerta. 33 00:03:02,560 --> 00:03:04,460 Un robot es tonto, ya os lo digo 34 00:03:04,460 --> 00:03:05,919 Un robot es tonto 35 00:03:05,919 --> 00:03:09,020 Hace lo que se le dice, si se le dice que es estrella, es estrella 36 00:03:09,020 --> 00:03:10,719 ¿Vale? Entonces 37 00:03:10,719 --> 00:03:12,460 ¿Avanza hasta la puerta? Para 38 00:03:12,460 --> 00:03:14,759 ¿Está la puerta abierta? No 39 00:03:14,759 --> 00:03:16,120 No, abre la puerta 40 00:03:16,120 --> 00:03:18,219 ¿Está la puerta abierta? Sí, no va a dar nada 41 00:03:18,219 --> 00:03:19,960 Cruza la puerta 42 00:03:19,960 --> 00:03:21,819 ¿Avanza hasta las escaleras? 43 00:03:22,280 --> 00:03:23,759 Que a la izquierda, a los pasos 44 00:03:23,759 --> 00:03:24,580 ¿Vale? ¿Y ahora qué? 45 00:03:25,139 --> 00:03:27,080 ¿Baja las escaleras? ¿Y cómo bajas las escaleras? 46 00:03:27,400 --> 00:03:29,199 De uno en uno 47 00:03:29,199 --> 00:03:30,479 ¿De uno en uno? ¿Cuántas veces? 48 00:03:30,479 --> 00:03:34,969 Entonces tenemos que hacer un bucle 49 00:03:34,969 --> 00:03:37,210 Pero no sabemos cuantas veces hay que repetirlo 50 00:03:37,210 --> 00:03:39,110 Entonces tenemos que poner un bucle con una condición 51 00:03:39,110 --> 00:03:41,530 Mientras que haya escalones 52 00:03:41,530 --> 00:03:42,830 Baja un escalón 53 00:03:42,830 --> 00:03:44,330 Por ejemplo 54 00:03:44,330 --> 00:03:47,310 No, no, mientras haya escalones 55 00:03:47,310 --> 00:03:48,310 Baja un escalón 56 00:03:48,310 --> 00:03:51,250 Entonces yo miro, hay escalones, sí, pum, bajo uno 57 00:03:51,250 --> 00:03:53,810 Miro, hay escalones, sí, pum, bajo uno 58 00:03:53,810 --> 00:03:56,129 Y así, repito, repito, repito 59 00:03:56,129 --> 00:03:57,530 Hasta que mire 60 00:03:57,530 --> 00:03:59,849 Y como he llegado al último, ya no hay más escalones 61 00:03:59,849 --> 00:04:01,110 Entonces salgo del bucle 62 00:04:01,110 --> 00:04:02,210 ya no lo repito más veces 63 00:04:02,210 --> 00:04:03,430 he repetido el bucle 64 00:04:03,430 --> 00:04:05,909 mientras había escalones 65 00:04:05,909 --> 00:04:08,349 vale, avanza hasta la consejería 66 00:04:08,349 --> 00:04:09,189 pide una tiza 67 00:04:09,189 --> 00:04:12,090 coge la tiza, da media vuelta 68 00:04:12,090 --> 00:04:13,770 avanza hasta las escaleras 69 00:04:13,770 --> 00:04:15,069 otra vez un bucle 70 00:04:15,069 --> 00:04:18,209 mientras haya escalones, sube un escalón 71 00:04:19,389 --> 00:04:21,370 pum pum pum pum 72 00:04:21,370 --> 00:04:22,790 hasta que deje de haber escalones 73 00:04:22,790 --> 00:04:24,129 avanza hasta la puerta 74 00:04:24,129 --> 00:04:25,329 está la puerta abierta 75 00:04:25,329 --> 00:04:26,689 porque a lo mejor ha habido algún cabrón 76 00:04:26,689 --> 00:04:30,569 está abierta la puerta 77 00:04:30,569 --> 00:04:32,550 no, que la han cerrado 78 00:04:32,550 --> 00:04:44,040 vuelve a abrirla, porque si no me estrella, etc. Eso es un algoritmo, una secuencia ordenada 79 00:04:44,040 --> 00:04:50,579 de pasos que yo tengo que ejecutar para resolver un problema. Eso es un algoritmo. Y se puede 80 00:04:50,579 --> 00:04:54,579 decir, un algoritmo se puede escribir con el lenguaje normal como lo acabo de hacer 81 00:04:54,579 --> 00:04:59,699 yo, con el lenguaje natural, con el castellano, ¿vale? O con el lenguaje que habléis en 82 00:04:59,699 --> 00:05:09,180 costadas. Porque es un concepto, es una idea, ¿vale? Es un razonamiento. Por tanto, un 83 00:05:09,180 --> 00:05:17,560 algoritmo no necesita de un lenguaje de programación, no necesita de nada concreto, sino que el 84 00:05:17,560 --> 00:05:25,560 algoritmo es los pasos, el concepto de cómo resuelvo yo el problema, ¿vale? Si hacemos 85 00:05:25,560 --> 00:05:33,480 esto, nos acostumbraremos a pensar como programadores. Los programadores son unos seres especiales 86 00:05:33,480 --> 00:05:39,220 que suelen vivir en cuevas, llamados sótanos, delante de una pantalla, muchas horas, ¿vale? 87 00:05:39,459 --> 00:05:47,379 Y esta gente piensa de una forma especial, ¿vale? Porque resuelven los problemas en 88 00:05:47,379 --> 00:05:51,720 forma de algoritmo, siempre. Entonces, así es como tenemos que empezar a pensar a partir 89 00:05:51,720 --> 00:05:59,790 Y después, claro, ya sabemos lo que tenemos que hacer, tenemos la lista de órdenes, ¿vale? 90 00:05:59,850 --> 00:06:06,829 Ahora yo estoy aquí, me he convertido en un robot, y digo, dime las órdenes, dámelas. 91 00:06:08,470 --> 00:06:09,589 Venga, entonces, ¿qué hacemos primero? 92 00:06:12,160 --> 00:06:16,959 Dime, dame una orden, que me dé mi vuelta. 93 00:06:18,759 --> 00:06:19,500 Escribe la orden. 94 00:06:20,300 --> 00:06:21,000 No tengo que decirla. 95 00:06:32,459 --> 00:06:32,720 X. 96 00:06:32,759 --> 00:06:37,019 Ahora vamos a la orden. 97 00:06:37,019 --> 00:06:40,420 Párate, abre la puerta 98 00:06:40,420 --> 00:06:42,100 Está la puerta cerrada, la pregunta abrió 99 00:06:42,100 --> 00:06:43,339 Ah, está la puerta cerrada 100 00:06:43,339 --> 00:06:43,839 Sí 101 00:06:43,839 --> 00:06:45,060 Abre la puerta 102 00:06:45,060 --> 00:06:46,699 Bueno, ¿qué es lo que hace? 103 00:06:47,439 --> 00:06:48,860 Tienes que irme dando las órdenes 104 00:06:48,860 --> 00:06:51,019 Vale, ahora imagínate que en vez de ser yo 105 00:06:51,019 --> 00:06:53,560 Soy un yo alternativo 106 00:06:53,560 --> 00:06:54,800 De un universo alternativo 107 00:06:54,800 --> 00:06:56,160 Que soy chino 108 00:06:56,160 --> 00:06:58,180 Dame las órdenes 109 00:06:58,180 --> 00:07:02,500 Venga 110 00:07:02,500 --> 00:07:04,839 Aquí estoy, sin tifa, esperando 111 00:07:04,839 --> 00:07:05,740 Gila de leche 112 00:07:05,740 --> 00:07:25,639 ¿Eh? Gila de leche, no entendel. No entendel. A ver, ¿entiendes la dificultad? El mismo algoritmo lo podemos escribir en diferentes lenguajes en función de quien queremos que lo ejecute. 113 00:07:25,639 --> 00:07:29,379 Pues cuando yo lo traduzco a un lenguaje concreto 114 00:07:29,379 --> 00:07:30,759 Lo que construyo es un programa 115 00:07:30,759 --> 00:07:35,360 Por lo tanto, un algoritmo y un programa 116 00:07:35,360 --> 00:07:38,300 Son cosas muy parecidas, pero no son lo mismo 117 00:07:38,300 --> 00:07:40,279 Un algoritmo lo puede hacer cualquiera 118 00:07:40,279 --> 00:07:44,079 Para escribir un programa tengo que conocer el idioma 119 00:07:44,079 --> 00:07:45,759 El lenguaje de programación 120 00:07:45,759 --> 00:07:48,939 Si quiero escribir en Java, tengo que aprender Java 121 00:07:48,939 --> 00:07:52,540 Si quiero escribir en C, tengo que aprender C 122 00:07:52,540 --> 00:07:54,720 y si quiero escribir en Processing 123 00:07:54,720 --> 00:07:56,500 y si quiero escribir en Python 124 00:07:56,500 --> 00:07:58,339 tengo que aprender el lenguaje 125 00:07:58,339 --> 00:08:01,060 y el mismo algoritmo 126 00:08:01,060 --> 00:08:03,519 lo puedo escribir en diferentes lenguajes 127 00:08:03,519 --> 00:08:05,699 en función de quien lo vaya a ejecutar 128 00:08:05,699 --> 00:08:07,319 ¿entendéis? 129 00:08:07,660 --> 00:08:08,240 por lo tanto 130 00:08:08,240 --> 00:08:11,360 el algoritmo es un concepto 131 00:08:11,360 --> 00:08:13,040 y el programa son las 132 00:08:13,040 --> 00:08:14,680 órdenes concretas 133 00:08:14,680 --> 00:08:18,220 de hecho 134 00:08:18,220 --> 00:08:23,920 un programa sería 135 00:08:23,920 --> 00:08:28,480 una secuencia de órdenes escritas 136 00:08:28,480 --> 00:08:30,879 en un lenguaje de programación concreto. 137 00:08:31,879 --> 00:08:36,360 ¿Cómo se llama? ¿Una secuencia? Una secuencia de órdenes que se llaman 138 00:08:36,360 --> 00:08:39,639 comandos. Eso es el programa, ¿no? Sí. 139 00:08:40,139 --> 00:08:43,799 El programa es una secuencia de órdenes 140 00:08:43,799 --> 00:08:46,419 que se llaman, entre paréntesis, comandos. 141 00:08:47,740 --> 00:08:50,440 ¿Vale? Una secuencia de órdenes 142 00:08:50,440 --> 00:08:53,960 Concretas 143 00:08:53,960 --> 00:08:55,600 Bueno, no, espera 144 00:08:55,600 --> 00:08:58,019 Como he dicho, es una secuencia de órdenes 145 00:08:58,019 --> 00:08:58,820 Comandos 146 00:08:58,820 --> 00:09:02,039 Escritos en un lenguaje de programación 147 00:09:02,039 --> 00:09:02,860 Concreto, eso 148 00:09:02,860 --> 00:09:06,000 Escritos en un lenguaje 149 00:09:06,000 --> 00:09:07,279 De programación concreto 150 00:09:07,279 --> 00:09:11,190 Es una secuencia de órdenes 151 00:09:11,190 --> 00:09:12,090 Comandos 152 00:09:12,090 --> 00:09:15,009 Escritos 153 00:09:15,009 --> 00:09:17,250 En un lenguaje de programación 154 00:09:17,250 --> 00:09:18,509 Concreto 155 00:09:18,509 --> 00:09:19,970 ¿Entendéis la diferencia? 156 00:09:20,330 --> 00:09:22,269 Claro 157 00:09:22,269 --> 00:09:31,590 Claro, yo cojo el algoritmo, que son las cosas que tengo que hacer, pero cuando yo tengo que ordenar al computador, si me dan un computador chino tendré que ordenarlo en chino. 158 00:09:31,669 --> 00:09:34,110 Y si me dan un computador coreano, tendré que ordenarlo en coreano. 159 00:09:35,629 --> 00:09:35,830 ¿Vale? 160 00:09:37,350 --> 00:09:41,470 Entonces, esto es lo difícil. 161 00:09:42,730 --> 00:09:44,269 Esto es lo que hace un niño de 7 años. 162 00:09:45,370 --> 00:09:49,269 Porque tú puedes aprender un lenguaje, son 150 comandos o 200 comandos. 163 00:09:49,269 --> 00:09:57,129 dos. Te los aprendes, aprendes lo que hace cada uno y ya está. Lo chupo es esto. Es 164 00:09:57,129 --> 00:10:03,509 enfrentarte a un problema y estructurarte para, a través de pequeños pasos, resolverlo. 165 00:10:04,669 --> 00:10:13,440 ¿Vale? Entonces, esto es muy importante, que entendáis esa diferencia. Y luego, una 166 00:10:13,440 --> 00:10:18,700 vez que tengas un algoritmo construido, traducirlo a un lenguaje de programaciones es inmediato, 167 00:10:18,700 --> 00:10:29,700 Porque prácticamente cada cajita de mi algoritmo, cada paso, va a tener una orden equivalente en el lenguaje correspondiente que la va a ejecutar, ¿vale? 168 00:10:30,059 --> 00:10:32,620 Con lo cual va a haber una correspondencia prácticamente directa. 169 00:10:34,000 --> 00:10:36,379 ¿De acuerdo? Algoritmo versus programa. 170 00:10:37,919 --> 00:10:38,580 Eso es lo primero. 171 00:10:38,679 --> 00:10:43,820 Lo segundo, ¿qué es un diagrama de flujo? 172 00:10:44,899 --> 00:10:45,559 ¿A quién le suele? 173 00:10:46,860 --> 00:10:50,320 Diagrama de... 174 00:10:56,860 --> 00:11:03,759 Estos son conceptos que como no habéis hecho programación de verdad, nunca, pues hay que empezar a darlos de cero. 175 00:11:04,080 --> 00:11:14,259 La idea, estamos introduciendo un pequeño cambio dentro de la asignatura de tecnología y vamos a empezar a dar programación de robots desde el mundo. 176 00:11:23,539 --> 00:11:27,139 Y podríamos empezar a trabajar directamente ya con algoritmos y con robots. 177 00:11:28,240 --> 00:11:34,500 Como vosotros no habéis pasado por eso, ¿qué nos lleva? 178 00:11:34,500 --> 00:11:36,559 nos va a llevar más tiempo de lo normal 179 00:11:36,559 --> 00:11:38,779 con lo cual, además, con la filomena 180 00:11:38,779 --> 00:11:40,600 y con la semana santa y con 181 00:11:40,600 --> 00:11:42,799 las fiestas y no sé qué, que hay cuatro días 182 00:11:42,799 --> 00:11:43,879 para el verano, ya 183 00:11:43,879 --> 00:11:46,480 no sé hasta dónde vamos a poder llegar, ¿vale? 184 00:11:46,480 --> 00:11:47,919 Yo espero que me dé tiempo a construir algo 185 00:11:47,919 --> 00:11:50,840 ¿vale? Vamos a trabajar con placas de robots 186 00:11:50,840 --> 00:11:52,620 vamos a programarlas, pero no sé 187 00:11:52,620 --> 00:11:54,320 hasta dónde vamos a llegar, ¿vale? 188 00:11:54,379 --> 00:11:56,700 Yo espero que me dé tiempo a hacer algo que se mueva 189 00:11:56,700 --> 00:11:58,779 ¿de acuerdo? Pero si no, por lo menos 190 00:11:58,779 --> 00:12:05,419 tendríamos un bachillerato, ahí sí que vamos a 191 00:12:05,419 --> 00:12:08,490 empezar. Bueno 192 00:12:08,490 --> 00:12:14,399 Diagrama de flujo, bueno, ¿qué es un diagrama de flujo? 193 00:12:14,480 --> 00:12:16,200 Definición, dos puntos, comillas 194 00:12:16,200 --> 00:12:17,779 Venga 195 00:12:17,779 --> 00:12:20,200 Pues un diagrama de flujo es 196 00:12:20,200 --> 00:12:22,539 Una representación 197 00:12:22,539 --> 00:12:25,480 Gráfica 198 00:12:25,480 --> 00:12:27,879 De un algoritmo, punto final 199 00:12:27,879 --> 00:12:30,669 ¿Vale? 200 00:12:31,370 --> 00:12:33,350 Ya está, una representación gráfica de un algoritmo 201 00:12:33,350 --> 00:12:35,870 ¿Y qué dibujitos vamos a utilizar? 202 00:12:36,029 --> 00:12:37,730 Pues utilizamos los siguientes símbolos 203 00:12:37,730 --> 00:12:39,429 ¿Vale? Para hacer el dibujo 204 00:12:39,429 --> 00:12:42,490 Círculos 205 00:12:42,490 --> 00:12:52,039 que serán lo que vamos a llamar terminales 206 00:12:52,039 --> 00:12:56,159 terminaciones, donde empieza o donde termina la ejecución del programa 207 00:12:56,159 --> 00:12:59,500 ¿vale? habrá dos 208 00:12:59,500 --> 00:13:04,120 uno que será el S y otro que será el E 209 00:13:04,120 --> 00:13:06,220 el S será de start 210 00:13:06,220 --> 00:13:10,840 del inicio y el E del end, del final 211 00:13:10,840 --> 00:13:15,720 con lo cual cuando empecemos un algoritmo siempre vamos a empezar por la S, por aquí se empieza 212 00:13:15,720 --> 00:13:16,940 ¿Vale? 213 00:13:17,759 --> 00:13:19,980 Después tenemos 214 00:13:19,980 --> 00:13:22,620 Flechas 215 00:13:22,620 --> 00:13:26,500 Que las flechas son 216 00:13:26,500 --> 00:13:34,879 El orden de avance 217 00:13:34,879 --> 00:13:36,779 De mi algoritmo 218 00:13:36,779 --> 00:13:39,120 Es decir, como es una secuencia ordenada 219 00:13:39,120 --> 00:13:41,419 De pasos, como hemos explicado 220 00:13:41,419 --> 00:13:43,340 Pues el orden 221 00:13:43,340 --> 00:13:44,500 Lo dan las flechas 222 00:13:44,500 --> 00:13:47,700 Siempre tengo que avanzar en la dirección de la flecha 223 00:13:47,700 --> 00:13:48,759 No para atrás 224 00:13:48,759 --> 00:13:49,779 Ese es el orden 225 00:13:50,720 --> 00:13:53,059 Por lo tanto, yo hago una secuencia ordenada de pasos. 226 00:13:55,830 --> 00:13:56,350 Rectángulo. 227 00:14:05,990 --> 00:14:07,629 Acciones o procesos. 228 00:14:11,149 --> 00:14:15,129 El rectángulo son cosas que yo hago. 229 00:14:16,129 --> 00:14:20,090 Por ejemplo, cuando tengo que hacer unas cuentas, cuando tengo que hacer un cálculo, 230 00:14:20,090 --> 00:14:26,309 cuando tengo que hacer cualquier cosa así, va a ser una acción o un proceso. 231 00:14:27,169 --> 00:14:30,450 Es un proceso que hace el robot sin interactuar con nadie. 232 00:14:30,450 --> 00:14:32,529 es pensar, vamos a llamarlo así, por ejemplo 233 00:14:32,529 --> 00:14:33,929 espera dos segundos 234 00:14:33,929 --> 00:14:36,610 eso es un proceso, un proceso de espera 235 00:14:36,610 --> 00:14:38,929 y el robot se queda parado durante dos segundos 236 00:14:38,929 --> 00:14:40,529 y luego sigue haciendo cosas 237 00:14:40,529 --> 00:14:42,710 ¿vale? son procesos 238 00:14:42,710 --> 00:14:43,629 o acciones 239 00:14:43,629 --> 00:14:45,950 pero luego tengo el 240 00:14:45,950 --> 00:14:48,009 ¿cómo se llama esta figura? geometría 241 00:14:48,009 --> 00:14:53,100 ¿esto? no 242 00:14:53,100 --> 00:14:56,019 el trapezoide es así 243 00:14:56,019 --> 00:15:03,360 romboide 244 00:15:03,360 --> 00:15:06,309 ¿qué es? 245 00:15:06,309 --> 00:15:06,389 ¿qué es? 246 00:15:07,490 --> 00:15:08,970 eso es un romboide 247 00:15:08,970 --> 00:15:11,110 ¿vale? 248 00:15:11,870 --> 00:15:24,500 Tengo por ahí algún vídeo que yo le llamo trapecio, mal para mí, pero es un romboide, ¿vale? No es un trapecio. 249 00:15:25,799 --> 00:15:39,220 Bueno, pues este romboide son, también son acciones, pero son acciones de entrada o salida. 250 00:15:39,220 --> 00:15:43,990 Es decir, cuando hay una interacción 251 00:15:43,990 --> 00:15:46,490 ¿Vale? 252 00:15:46,730 --> 00:15:48,169 De hecho aquí en vez de acción 253 00:15:48,169 --> 00:15:48,909 Me viene más 254 00:15:48,909 --> 00:15:56,879 Interacciones 255 00:15:56,879 --> 00:15:57,460 ¿Vale? 256 00:15:58,200 --> 00:15:59,559 Interacciones de entrada a salida 257 00:15:59,559 --> 00:16:01,519 Una cosa son procesos 258 00:16:01,519 --> 00:16:03,399 Y otra cosa son interacciones 259 00:16:03,399 --> 00:16:03,960 Por ejemplo 260 00:16:03,960 --> 00:16:06,480 Avanza hasta la puerta 261 00:16:06,480 --> 00:16:07,779 Esto es una acción 262 00:16:07,779 --> 00:16:10,179 Pero cuando dices 263 00:16:10,179 --> 00:16:11,500 Abre la puerta 264 00:16:11,500 --> 00:16:13,840 Esto es una interacción 265 00:16:13,840 --> 00:16:25,740 ¿Vale? Pues esos procesos, esas acciones que tienen que ver con entrada de información hacia mí o salida hacia el exterior de mi parte, se hacen con tromboides. ¿Vale? 266 00:16:25,740 --> 00:16:52,289 Y luego tenemos, el más divertido de todos, que es el rombo, que tiene una entrada y dos salidas, una salida es para el sí, otra salida es para el no, y esto es lo que vamos a llamar decisiones o bifurcaciones. 267 00:16:52,289 --> 00:17:09,640 Es decir, en la secuencia ordenada de pasos puede haber puntos en los cuales la ejecución del programa 268 00:17:09,640 --> 00:17:15,359 pueda ir por un lado o por el otro en función de una condición. 269 00:17:17,339 --> 00:17:26,480 ¿Vale? Entonces la condición se representa con el rojo y si la respuesta a la condición es sí, 270 00:17:26,480 --> 00:17:31,279 por ejemplo está abierta la puerta si es que sí 271 00:17:31,279 --> 00:17:39,359 yo hago algo que es nada y si es que no hago otra cosa que es abrir la puerta 272 00:17:39,359 --> 00:17:43,220 tengo dos caminos pero luego sus dos caminos se vuelven a unir en un único 273 00:17:43,220 --> 00:17:48,720 flujo que sigue avanzando que es avanza o cruza la puerta cruza la puerta lo 274 00:17:48,720 --> 00:17:51,079 tengo que hacer 275 00:17:51,079 --> 00:18:07,859 Bueno, voy a borrar, ¿vale? ¿Lo tenéis? Bien. Vamos a hacer un ejemplo de un diagrama 276 00:18:07,859 --> 00:18:13,319 de flujo. El diagrama de flujo que a mí me gusta mucho. El diagrama de flujo, quiero 277 00:18:13,319 --> 00:18:27,319 café, ¿vale? Yo estoy trabajando en mi casa, estoy preparando clases o corrigiendo exámenes 278 00:18:27,900 --> 00:18:31,140 o haciendo algo ahí en mi ordenador y de repente me dan las seis y media de la tarde 279 00:18:31,140 --> 00:18:32,500 y digo, ojo, como me apetece un café. 280 00:18:33,579 --> 00:18:35,059 Quiero café. Tengo un problema, ¿no? 281 00:18:35,839 --> 00:18:36,660 Que quiero café. 282 00:18:38,180 --> 00:18:39,759 ¿La solución del problema cuál es? 283 00:18:40,640 --> 00:18:44,509 La solución del problema es tomar café. 284 00:18:45,309 --> 00:18:45,529 ¿Vale? 285 00:18:46,390 --> 00:18:48,710 ¿Cómo, qué secuencia ordenada de pasos 286 00:18:48,710 --> 00:18:49,569 tengo que seguir 287 00:18:49,569 --> 00:18:52,430 para, de mi problema, 288 00:18:52,569 --> 00:18:53,549 que es que quiero café, 289 00:18:54,269 --> 00:18:56,450 lleguemos a el problema resuelto? 290 00:18:56,490 --> 00:18:57,849 Es decir, me tome el café. 291 00:18:58,430 --> 00:19:00,809 ¿Vale? ¿Cómo empiezan todos los programas, 292 00:19:00,809 --> 00:19:01,690 todos los algoritmos? 293 00:19:03,730 --> 00:19:04,789 Con la bola de mí. 294 00:19:05,369 --> 00:19:10,369 ¿Vale? Ahí es donde empezamos. Y a partir de aquí sale una flecha. 295 00:19:10,369 --> 00:19:16,059 Bueno, yo estoy sentado en mi mesa, ahora me cojo, me abstraigo en el centro, 296 00:19:16,059 --> 00:19:21,950 voy a pensar que yo soy un robot estúpido y que me tienen que ordenar todo lo que hago. 297 00:19:21,950 --> 00:19:31,950 Vale, pues yo estoy sentado, tengo café, y entonces me llega la primera cosa, que es 298 00:19:31,950 --> 00:19:41,380 mira si tienes una taza de café. Porque si tu mujer te ha venido y te ha puesto una taza, te lo tomas. 299 00:19:41,380 --> 00:20:01,079 ¿No? Entonces, ¿tienes café? Esto es una pregunta, por lo tanto, dentro del rombo yo coloco la condición. ¿Lo veis? ¿Tienes café? Una pregunta. 300 00:20:01,079 --> 00:20:07,019 Y siempre estas condiciones tienen que tener salidas posibles 301 00:20:07,019 --> 00:20:09,740 Dos, la sí, la no 302 00:20:09,740 --> 00:20:13,500 No me vale la no lo sé, ni la de quizá tal vez 303 00:20:13,500 --> 00:20:16,140 Eso para un robot no existe 304 00:20:16,140 --> 00:20:18,740 Un robot solo entiende o cero o uno 305 00:20:18,740 --> 00:20:21,660 O sí o no, ¿vale? 306 00:20:23,000 --> 00:20:24,640 ¿Tienes café? Sí 307 00:20:24,640 --> 00:20:37,220 Tomar café es una interacción 308 00:20:37,220 --> 00:20:44,769 Y al final del programa 309 00:20:44,769 --> 00:20:53,869 Bueno, es que la complicación viene si no tengo el café al lado, pero es que si lo 310 00:20:53,869 --> 00:21:02,519 tengo al lado, no pasa nada. ¿No? ¿Quieres café? Sí. Pues tómate el café. Ya he terminado 311 00:21:02,519 --> 00:21:07,680 mi problema, está resuelto. ¿Sí o no? Sí. ¿Veis que esto es una interacción? Y esto 312 00:21:07,680 --> 00:21:17,240 es una pregunta. Bien. No tienes café. Voy a hacer órdenes complejas que luego habría 313 00:21:17,240 --> 00:21:23,299 que dividir en opciones más sencillas. Pero yo lo voy a hacer en complejo. Vale, pues 314 00:21:23,299 --> 00:21:32,039 entonces, ¿cómo resuelvo el problema de que no tengo café? Vete a la cocina y prepárate 315 00:21:32,039 --> 00:21:40,769 un café. Venga, pues ir a la cocina. Ir a la cocina, no interactúo con nadie. Voy a 316 00:21:40,769 --> 00:21:51,000 hacerlo en... porque si no me hago un diagrama de flujo que me ocupa... Vale, porque si no 317 00:21:51,000 --> 00:21:54,680 voy a hacer un diagrama de flujo que tiene 7 pizarras, entonces voy a hacerlo así, con 318 00:21:54,680 --> 00:21:59,519 órdenes complejas, que entendemos, y esto luego tendría que desgranarlo en pasos más 319 00:21:59,519 --> 00:22:08,910 sencillos, en pasos más sencillos, vale, ir a la cocina, coger la taza, pero antes de 320 00:22:08,910 --> 00:22:13,970 coger la taza tendría que mirar algo, tengo café, claro, no tengo café en la cocina, 321 00:22:14,490 --> 00:22:28,339 no, tengo café en la cocina, se entiende, vale, esto es, tienes café en taza, ya preparado, 322 00:22:28,339 --> 00:22:29,920 ¿Tienes café preparado? 323 00:22:30,019 --> 00:22:31,039 Voy a ponerle el preparado 324 00:22:31,039 --> 00:22:35,220 ¿Tienes café preparado? 325 00:22:35,599 --> 00:22:36,799 Sí, tómate el café 326 00:22:36,799 --> 00:22:38,240 No, vete a la cocina 327 00:22:38,240 --> 00:22:38,920 ¿Tienes café? 328 00:22:39,700 --> 00:22:41,039 Café molido, se entiende 329 00:22:41,039 --> 00:22:45,089 ¿Sí? 330 00:22:46,089 --> 00:22:48,269 Y no, no tengo café en la cocina 331 00:22:48,269 --> 00:22:49,910 ¿O sí? 332 00:22:50,470 --> 00:22:50,809 Vale 333 00:22:50,809 --> 00:22:53,289 Pues entonces, si tengo café, ¿qué hago? 334 00:22:55,859 --> 00:22:56,779 Hacerte el café 335 00:22:56,779 --> 00:23:03,309 Que se interactúa con la cafetera y demás 336 00:23:03,309 --> 00:23:04,250 ¿No? 337 00:23:05,630 --> 00:23:17,509 Y después, poner café en la taza, que sería cógete la taza, llévala al lado de la cafetera, etc, etc. 338 00:23:17,509 --> 00:23:38,880 Y fijaros lo que he hecho ahí. ¿Qué he hecho? He enlazado mi flujo al flujo principal, que quiere decir que aquí sigo la flecha principal, tomo el café y termino el día de hoy. 339 00:23:38,880 --> 00:23:57,079 Me quedan locos. ¿Qué pasa si no tengo café? Porque tienes que irte a comprar café. 340 00:23:57,079 --> 00:24:12,519 Ir a comprar. Y cuando lo tenga, ¿qué hago? Hacemos el café, lo ponemos en la taza, después me lo tomo y ya hemos terminado. 341 00:24:12,519 --> 00:24:19,240 lo veis entonces esto que estoy haciendo si os fijáis es lo que se llama un diagrama de flujo 342 00:24:19,240 --> 00:24:26,440 es un diagrama gráfico que me va dando los diferentes pasos que yo tengo que hacer para 343 00:24:26,440 --> 00:24:32,079 resolver un problema y esto vale para cualquier cosa o sea no solo para borrar vale nosotros 344 00:24:32,079 --> 00:24:37,059 tenemos que construir una casa de donde podemos hacer los pasos que necesitas para construir una 345 00:24:37,059 --> 00:24:42,200 casa y dibujarlos en este combate y lo tienes ahí clarísimo pues primero tengo que ir a comprar 346 00:24:42,200 --> 00:24:51,859 los materiales, luego tengo que contratar a los obreros, luego tengo que... 347 00:24:51,859 --> 00:25:05,819 Esto, ya la ida a la cocina, fíjate, lo voy a poner como el uno, pues me loco aquí y digo, el uno, el ir a la cocina, ¿qué supone? 348 00:25:06,619 --> 00:25:14,559 Pues supone levantarte de la silla, ir hasta las escaleras, un buque, bajar las escaleras, 349 00:25:14,559 --> 00:25:21,559 Después, entrar en la cocina, las puertas, abrir y cerrar las puertas, ¿vale? 350 00:25:21,559 --> 00:25:28,000 Y ya está, ya estoy en la cocina, ¿vale? 351 00:25:28,000 --> 00:25:31,000 Y ya tengo todo lo que me tenía en este punto. 352 00:25:31,000 --> 00:25:36,000 Con lo cual, para llegar a la cocina, me voy a ejecutar este programa. 353 00:25:36,000 --> 00:25:39,000 Y cuando termine, estoy en la cocina. 354 00:25:39,000 --> 00:25:44,000 Aquí hay un hacer café, pero hacer café también se puede desgranar, ¿no? 355 00:25:44,000 --> 00:26:03,059 Enciende la cafetera, saca el café del bote, ponlo en el sitio adecuado, rellena la cafetera con agua, enchúfala, dale al botón, espera, pon la taza debajo para que no se derrame, la taza tienes que ir a la cena, cogerla, sacarla, cogerla, todo eso son órdenes. 356 00:26:03,059 --> 00:26:05,680 Y entonces le hago otro programa 357 00:26:05,680 --> 00:26:11,289 Y luego 358 00:26:11,289 --> 00:26:12,769 Aquí por ejemplo 359 00:26:12,769 --> 00:26:14,089 El café en la taza 360 00:26:14,089 --> 00:26:17,670 Aquí podremos haber puesto 361 00:26:17,670 --> 00:26:18,630 Otro de 362 00:26:18,630 --> 00:26:21,529 Vuelve a la habitación 363 00:26:21,529 --> 00:26:23,829 Porque claro, eso se puede hacer en la cocina 364 00:26:23,829 --> 00:26:25,670 Pero ya estamos trabajando en mi habitación 365 00:26:25,670 --> 00:26:28,049 Pues aquí tendría que haber 366 00:26:28,049 --> 00:26:28,809 Un vuelve a la habitación 367 00:26:28,809 --> 00:26:31,089 Y luego ya vuelvo con mi café preparado 368 00:26:31,089 --> 00:26:33,390 Ya me siento en mi silla y ya me tomo mi café 369 00:26:33,390 --> 00:26:35,289 Si lo tengo al lado 370 00:26:35,289 --> 00:26:36,670 No me hace falta hacer todo eso 371 00:26:36,670 --> 00:26:43,910 lo tomo directamente consigo mi habitación con lo cual los diagramas de flujo nos ayudan a 372 00:26:43,910 --> 00:26:50,049 estructurar la mente para pensar como programadores y ahora lo que te digo yo 373 00:26:50,049 --> 00:26:54,009 coge el robot. Tienes café preparado, yo soy el robot, ¿vale? Y entonces toda la hora 374 00:26:54,009 --> 00:27:00,009 te vas a decirme las órdenes. ¿Tienes café preparado? Si hay una orden que es café preparado 375 00:27:00,009 --> 00:27:03,089 en castellano, me lo dices. Pero si es un chino, me lo tendrás que hacer en chino. 376 00:27:03,170 --> 00:27:08,150 Si soy inglés, me lo tendrás que hacer en inglés. Y entonces ya traducir esto al lenguaje 377 00:27:08,150 --> 00:27:12,210 de programación es inmediato. Tengo que saber el lenguaje correspondiente y los comandos 378 00:27:12,210 --> 00:27:18,609 que tengo disponibles. Y ya los ejecuto. Ya está. ¿Vale? Entonces ya escribo las órdenes 379 00:27:18,609 --> 00:27:23,170 en el lenguaje adecuado. Pero el concepto lo tengo claro. Esto es cómo se resuelve 380 00:27:23,170 --> 00:27:32,690 el problema. ¿Vale? Bueno, pues esto se llaman diagramas de flujo y es básicamente a lo 381 00:27:32,690 --> 00:27:36,549 que nos vamos a dedicar. Hacer diagramas de flujo para resolver los problemas. 382 00:27:37,230 --> 00:27:48,450 Yo no quiero ir preguntando, ¿vale? ¿Qué es una... qué es qué? Porque cuando yo voy 383 00:27:48,450 --> 00:27:58,559 a comprar, se supone que voy interactuando, comprando, pagando. Esto es una interacción, 384 00:27:58,559 --> 00:28:15,559 este no interactuó con nada, es simplemente una acción, yo me desplazo de aquí a allí, pero no interactuó con nadie, en este sí, en este me voy vacío y vuelvo con café, ¿entendéis? hay una interacción, por eso lo hemos comprobado, 385 00:28:15,559 --> 00:28:35,240 En el vuelo de la habitación también me gusta rectangular, como decisiones por el camino o lo que sea, las decisiones a lo mejor si me encuentro una cuerda, aquí dentro sí que habrá una interacción, ¿me explico? 386 00:28:35,240 --> 00:28:47,859 Pero como concepto es una acción, ¿vale? No hay interacción, entonces yo en el nivel en el que me muevo decido si es una interacción o es una acción, son muy parecidos, ¿vale? 387 00:28:47,859 --> 00:29:03,359 Normalmente en un robot eso es mucho más claro, porque cuando activo un motor es una interacción, cuando sumo un 2 más 2 no he interactuado con nadie, estoy tomando decisiones y pensando, son acciones, pero cuando he interactuado con un motor o cuando le he... 388 00:29:03,359 --> 00:29:19,839 Pero bueno, lo que quiero decir es que veáis que el concepto algoritmo y el concepto diagrama de trozos se aplica a cualquier problema, no hace falta estar programando. 389 00:29:19,839 --> 00:29:26,839 Esto se aplica a cualquier programa. A que quiero un café, a que me tengo que construir una casa o a lo que sea. 390 00:29:26,839 --> 00:29:30,839 Y es muy útil y ayuda a pensar como programador. 391 00:29:30,839 --> 00:29:37,720 Preguntas? Está claro? 392 00:29:37,720 --> 00:29:47,549 Vamos a hacer otro que ya va a ser un poco más parecido a lo que hacemos con los robots. 393 00:29:47,549 --> 00:30:07,460 vamos a hacer un robot que va a tener un sensor de distancia que se desarrolla, estoy mirando el robot desde arriba, vale, esto es un robot visto desde arriba, dos ruedas, dos ruedas y un sensor de distancia, vale, 394 00:30:07,460 --> 00:30:09,940 y yo voy a ejecutar el siguiente programa 395 00:30:09,940 --> 00:31:28,460 en él, ole 396 00:31:28,460 --> 00:31:31,220 ahí lo tenéis 397 00:31:31,220 --> 00:31:35,519 un diagrama de flojo súper fácil 398 00:31:35,519 --> 00:31:37,759 súper tonto 399 00:31:37,759 --> 00:31:39,480 mire la distancia 400 00:31:39,480 --> 00:31:43,539 la condición es si la distancia 401 00:31:43,539 --> 00:31:45,059 es menor de 10 centímetros 402 00:31:45,059 --> 00:31:46,960 vale, es la distancia 403 00:31:46,960 --> 00:31:48,579 evidentemente, si la acabo de medir 404 00:31:48,579 --> 00:31:53,130 la distancia es menor de 10 centímetros 405 00:31:53,130 --> 00:31:54,369 sí o no 406 00:31:54,369 --> 00:31:56,990 bueno, pues si es menor 407 00:31:56,990 --> 00:31:58,130 que 10 centímetros 408 00:31:58,130 --> 00:32:10,680 para los motores, los motores de las ruedas, claro, y si no, enciende los motores y después 409 00:32:10,680 --> 00:32:24,079 espera un segundo y volvemos arriba, ¿vale? Robot, aquí tenemos una pared, vamos a ejecutarlo, 410 00:32:24,079 --> 00:32:30,539 ¿vale? Así mentalmente, vamos a ejecutarlo, a ver qué pasa, ¿os parece? El objetivo de 411 00:32:30,539 --> 00:32:39,160 este robot es no chuparse contra las paredes. ¿Vale? A ver si lo hace. Estamos aquí. Le 412 00:32:39,160 --> 00:32:43,559 damos al botón de encendido, conectamos las pilas y empieza a funcionar el robot. ¿Qué 413 00:32:43,559 --> 00:32:51,099 hace lo primero? Medir. Viene la distancia. Estamos a un metro. ¿La distancia es menor 414 00:32:51,099 --> 00:32:59,279 de 10 centímetros? Sí. Estamos a un metro. ¿Estamos a menos de 10 centímetros? No. Entonces 415 00:32:59,279 --> 00:33:05,240 ¿Qué hacemos? Encendemos los motores, 1 y 2, y esto empieza a saltar. Esperamos un segundo. 416 00:33:06,039 --> 00:33:08,039 En este segundo el robot llega aquí. 417 00:33:11,369 --> 00:33:12,190 ¿Vuelve a medir la distancia? 418 00:33:12,710 --> 00:33:20,630 Y entonces, después de esperar, vuelve a medir. Mide la distancia. Vale, ahora son 80 centímetros. 419 00:33:20,990 --> 00:33:21,809 ¿Es menor de 10? 420 00:33:22,369 --> 00:33:22,609 Sí. 421 00:33:25,009 --> 00:33:27,549 ¿Y si no es menor de 10, qué hace? Enciende los motores. 422 00:33:27,549 --> 00:33:39,470 Y espera otro segundo. ¿Vale? Bueno, ahora se repite. ¿Hasta cuándo llegamos a la distancia de 9 centímetros? 423 00:33:39,470 --> 00:33:46,470 Ya estamos cerca de la pared, medimos la distancia, 9 centímetros, ¿es menor de 10? 424 00:33:46,470 --> 00:33:48,470 ¿Qué hago? Apagamos motores. 425 00:33:48,470 --> 00:33:53,839 Apagamos motores, pum, que paro, ya no me he chocado, bien, he conseguido el objetivo del robot. 426 00:33:53,839 --> 00:33:55,839 Espera un segundo. 427 00:33:55,839 --> 00:33:57,839 ¿Vuelve a abrir el raíz o vuelve a quedar parado? 428 00:33:57,839 --> 00:33:59,839 Nueve metros, claro, y se queda parado. 429 00:33:59,839 --> 00:34:05,920 Y ahora llega un listo, coge la pared, coge un brick de leche y lo quita. 430 00:34:05,920 --> 00:34:07,920 ¿Dónde está el robot? 431 00:34:07,920 --> 00:34:08,920 Manda. 432 00:34:08,920 --> 00:34:11,920 Manda, pues ahora tengo más de 10 centímetros, pues avanza. 433 00:34:11,920 --> 00:34:19,300 de hacer un sensor de seguimiento de los coches modernos estos un estómago que tú estás en un 434 00:34:19,300 --> 00:34:23,500 atasco le das un botón al coche y el coche es capaz de seguir al de adelante sin chocarse 435 00:34:28,239 --> 00:34:35,159 y no se despista porque está continuamente midiendo la distancia es un robot 436 00:34:35,159 --> 00:34:38,179 y entonces de repente yo tengo mi coche 437 00:34:38,179 --> 00:34:40,119 estoy en un atasco, le doy al botón 438 00:34:40,119 --> 00:34:42,119 y le digo stop and go, perfecto 439 00:34:42,119 --> 00:34:43,280 ¿y qué es lo que hace eso? 440 00:34:43,780 --> 00:34:45,219 pues hace que mi coche esté parado 441 00:34:45,219 --> 00:34:47,320 yo ya levanto los pies de los pedales 442 00:34:47,320 --> 00:34:49,840 y tal, y entonces cuando el coche de adelante 443 00:34:49,840 --> 00:34:51,539 avanza, mi coche coge 444 00:34:51,539 --> 00:34:53,780 y adelanta, y cuando el de adelante 445 00:34:53,780 --> 00:34:55,460 para, el mío se para detrás 446 00:34:55,460 --> 00:34:58,039 y se queda esperando 447 00:34:58,039 --> 00:35:00,280 y cuando el coche de adelante adelanta 448 00:35:00,280 --> 00:35:03,079 el mío vuelve a adelantar, y cuando el coche de adelante 449 00:35:03,079 --> 00:35:05,039 para, se vuelve a parar y no me choco nunca 450 00:35:05,039 --> 00:35:11,840 ¿Vale? Una cosa tan pronta como esta, pues los coches que lo llevan parecen súper modernos. 451 00:35:14,500 --> 00:35:19,019 ¿Lo veis? ¿Vale? O sea, fíjate que algo lindo. Una tontería. 452 00:35:23,280 --> 00:35:30,739 O sensores de lluvia. Pues tienes un detector de lluvia, si detectas lluvia, activa los limpias y si no la detectas, pues no lo actives. 453 00:35:31,239 --> 00:35:36,719 Sensor de la universidad. Si la luz es muy baja, enciende las luces del coche y si no, las apagas. 454 00:35:36,719 --> 00:35:40,960 todos los sistemas automáticos que llevan los coches que te cobran un montón 455 00:35:40,960 --> 00:35:47,219 de pasta por ellos son cosas que cuestan no llega a 30 centímetros 456 00:35:47,219 --> 00:35:49,880 de serie 457 00:35:55,880 --> 00:35:59,940 esto de hecho nosotros en este año si dios quiere haremos un sensor de 458 00:35:59,940 --> 00:36:04,300 aparcamiento de estos que cuando echa para atrás de repente carro lo mismo si 459 00:36:04,300 --> 00:36:07,539 cuando me acerco mucho en lugar de parar los motores imaginaros que esto 460 00:36:07,539 --> 00:36:13,179 simplemente no tiene motores y lo que tiene es una luz o un zumbador 461 00:36:13,179 --> 00:36:16,260 y yo le digo cuando trae de menos de 10 centímetros pita 462 00:36:16,260 --> 00:36:21,179 y mientras tanto no hagan nada, pues él está ahí parado, si yo muevo la pared 463 00:36:21,179 --> 00:36:25,659 en este caso, claro, lo monto en el coche, si la pared está cerca, cuando está muy cerca pica 464 00:36:25,659 --> 00:36:27,659 haces un sensor de paro 465 00:36:27,659 --> 00:36:32,460 o sea, muchísimas cosas de estas que me hacen ser sofisticados son gilipolleces 466 00:36:32,460 --> 00:36:35,079 de verdad 467 00:36:51,300 --> 00:37:02,039 mil veces por segundo detectar la distancia 468 00:37:02,039 --> 00:37:15,340 puedo hacerlo 469 00:37:15,340 --> 00:37:23,829 bajar el tiempo de space milisegundos 100 milisegundos una de una millonésima de 470 00:37:23,829 --> 00:37:31,570 segundos casi prácticamente lo que tarda es no pedir la distancia 471 00:37:31,570 --> 00:37:38,710 puedes a lo mejor un milisegundo o dos. Entonces, si yo aquí le digo, espera, 100 milisegundos, 472 00:37:40,929 --> 00:37:48,309 estoy chequeando 10 veces por segundo, por segundo, ¿vale? 10 veces por segundo la distancia 473 00:37:48,309 --> 00:37:52,789 a la pared. Imagínate en un segundo lo que estos motores a tope pueden avanzar, ¿cómo 474 00:37:52,789 --> 00:37:58,849 avanzan? 20 centímetros. Pues si lo chequeo 10 veces por segundo, avanza 2 centímetros. 475 00:37:58,849 --> 00:38:01,530 o sea que cada 2 centímetros 476 00:38:01,530 --> 00:38:02,789 estoy chequeando 477 00:38:02,789 --> 00:38:05,389 pero si estoy midiendo 478 00:38:05,389 --> 00:38:07,409 distancias de menos de 10 me da tiempo de sobra 479 00:38:07,409 --> 00:38:08,349 como muchos creen 8 480 00:38:08,349 --> 00:38:11,190 si no miro el límite me voy a acercar hasta 8 centímetros 481 00:38:11,190 --> 00:38:11,929 porque ya tengo marca 482 00:38:11,929 --> 00:38:14,389 todo eso hay que controlarlo 483 00:38:14,389 --> 00:38:17,309 ¿vale? pero la cuestión es 484 00:38:17,309 --> 00:38:19,949 ¿con qué frecuencia miro yo los sensores? 485 00:38:21,610 --> 00:38:23,349 porque los sensores los tengo que medir 486 00:38:23,349 --> 00:38:25,289 los tengo que mirar con una cierta frecuencia 487 00:38:25,289 --> 00:38:27,690 cuanto más preciso 488 00:38:27,690 --> 00:38:29,750 Quiero que sea el movimiento más frecuente 489 00:38:29,750 --> 00:38:30,710 De un cuarto de la medición 490 00:38:30,710 --> 00:38:33,190 ¿Vale? ¿Entendido pues?