1 00:00:00,000 --> 00:00:02,980 vale, pues vamos a volver un poquito a este 2 00:00:02,980 --> 00:00:05,019 para ver si lo podemos reducir 3 00:00:05,019 --> 00:00:07,080 un poco, porque fijaos 4 00:00:07,080 --> 00:00:08,820 que esto de 5 00:00:08,820 --> 00:00:12,800 copiar y pegar al final 6 00:00:12,800 --> 00:00:14,960 la opción del 2 7 00:00:14,960 --> 00:00:28,390 pues lo del caso 2 8 00:00:28,390 --> 00:00:30,170 copiarlo y pegarlo 9 00:00:30,170 --> 00:00:32,469 en el 3 y en el 4 y en el 5 10 00:00:32,469 --> 00:00:34,530 ya está, podríamos copiar el caso 2 11 00:00:34,530 --> 00:00:36,310 en el 3, en el 4 y en el 5 12 00:00:36,310 --> 00:00:38,929 cambiando el 20 por 50 13 00:00:38,929 --> 00:00:39,710 y... 14 00:00:39,710 --> 00:00:42,189 vale, pues funciona, pero es que 15 00:00:42,189 --> 00:00:43,810 nos quedarían tropecientas mil líneas 16 00:00:43,810 --> 00:00:46,350 entonces, una vez que hemos copiado y pegado 17 00:00:46,350 --> 00:00:48,109 es cuando nos podemos dar cuenta de, pero a ver 18 00:00:48,109 --> 00:00:49,369 si estoy haciendo todo el rato lo mismo 19 00:00:49,369 --> 00:00:52,369 en todos los casos, en el 2, en el 3, en el 4 20 00:00:52,369 --> 00:00:53,869 en todos estoy concatenando 21 00:00:53,869 --> 00:00:56,130 un prefijo a un sufijo 22 00:00:56,130 --> 00:00:58,270 que es el mismo, entonces estoy haciendo 23 00:00:58,270 --> 00:01:00,090 eso, entonces ¿por qué los tengo que 24 00:01:00,090 --> 00:01:01,450 distinguir todos uno por uno? 25 00:01:01,450 --> 00:01:13,090 No puedo a lo mejor compactarlo y decir si es de 2 en adelante, prefijo este en función del caso, sufijo en función del caso y concateno y ya está. 26 00:01:13,650 --> 00:01:15,950 No lo dejaríamos un poquito más compacto a lo mejor. 27 00:01:16,650 --> 00:01:19,769 Vamos a ver cómo nos queda y ya está y pasamos de este ejercicio. 28 00:01:19,930 --> 00:01:30,719 Entonces, para no borrar esto voy a hacer ejercicio 31 versión B en otro paste. 29 00:01:35,159 --> 00:01:37,180 ejercicio 31 30 00:01:37,180 --> 00:01:38,659 versión 2 31 00:01:38,659 --> 00:01:44,109 vale, pues 32 00:01:44,109 --> 00:01:47,469 venga, pues he hecho 33 00:01:47,469 --> 00:01:50,790 Lenin, vete a tu sitio, por favor 34 00:01:50,790 --> 00:01:55,000 he copiado el ejercicio 31 35 00:01:55,000 --> 00:01:56,019 entero tal cual 36 00:01:56,019 --> 00:01:58,840 y vamos a ver que podemos hacer 37 00:01:58,840 --> 00:02:01,060 del caso 2 en adelante 38 00:02:01,060 --> 00:02:02,620 porque el caso 0 39 00:02:02,620 --> 00:02:04,599 y el caso 1 van por libre realmente 40 00:02:04,599 --> 00:02:05,859 no hay patrones en ellos 41 00:02:05,859 --> 00:02:07,319 no hay patrones 42 00:02:07,319 --> 00:02:10,699 Entonces los podemos dejar por libre 43 00:02:10,699 --> 00:02:14,280 Pero del caso 2 en adelante si hay un patrón 44 00:02:14,280 --> 00:02:18,539 Que lo que cambia es el prefijo 45 00:02:18,539 --> 00:02:22,180 Y el sufijo luego es igual 46 00:02:22,180 --> 00:02:27,050 Entonces podríamos 47 00:02:27,050 --> 00:02:39,050 Voy a copiar para 48 00:02:39,050 --> 00:02:42,050 Es decir, para el caso 3 49 00:02:42,050 --> 00:02:46,349 Y para el 4 y para el 5 50 00:02:46,349 --> 00:02:51,449 A ver como lo podríamos 51 00:02:51,449 --> 00:02:58,219 Vale, pues primero 52 00:02:58,219 --> 00:02:59,699 Podemos sacarnos 53 00:02:59,699 --> 00:03:04,180 Caso 3, 4, 5 54 00:03:04,180 --> 00:03:05,379 A ver donde estamos 55 00:03:05,379 --> 00:03:12,659 Aquí 56 00:03:12,659 --> 00:03:25,120 Vale, es que con un if 57 00:03:25,120 --> 00:03:25,659 El se 58 00:03:25,659 --> 00:03:28,219 Va a quedar mucho mejor 59 00:03:28,219 --> 00:03:29,400 Venga 60 00:03:29,400 --> 00:03:36,719 vale, pues lo pulimos entero 61 00:03:36,719 --> 00:03:38,599 para que nos quede más claro 62 00:03:38,599 --> 00:03:39,560 lo pulimos entero 63 00:03:39,560 --> 00:03:42,719 unidades, decenas 64 00:03:42,719 --> 00:03:44,919 entonces, primera cosa 65 00:03:44,919 --> 00:03:45,759 que podemos hacer 66 00:03:45,759 --> 00:03:48,439 poner lo que sería el sufijo, las unidades 67 00:03:48,439 --> 00:03:49,479 en texto, ¿verdad? 68 00:03:51,879 --> 00:03:53,479 y ahora aquí podríamos hacer 69 00:03:53,479 --> 00:03:56,400 entonces aquí tendríamos un 70 00:03:56,400 --> 00:03:59,699 prefijo 71 00:03:59,699 --> 00:04:11,430 ¿vale? entonces 72 00:04:11,430 --> 00:04:14,830 El sufijo está en función de las unidades 73 00:04:14,830 --> 00:04:21,810 Y ahora en el caso de que sea 1 74 00:04:21,810 --> 00:04:26,149 Pues el sufijo es igual a 1 75 00:04:26,149 --> 00:04:36,860 En el caso de que sea 2 76 00:04:36,860 --> 00:04:51,990 Ahora lo completamos 77 00:04:51,990 --> 00:05:09,300 En el caso de que sea 2 78 00:05:09,300 --> 00:05:10,620 Pues será 2 79 00:05:10,620 --> 00:05:13,579 En el caso de que sea 3 80 00:05:13,579 --> 00:05:17,360 Pues será, el sufijo será 3 81 00:05:17,360 --> 00:05:20,220 En el caso de que sea 4 82 00:05:20,220 --> 00:05:25,790 Pues será 4 83 00:05:25,790 --> 00:05:27,470 En el caso de que sea 5 84 00:05:27,470 --> 00:05:59,879 Y en el caso de que sea 9, pues 9 85 00:05:59,879 --> 00:06:11,399 Y aquí terminamos este switch de aquí 86 00:06:11,399 --> 00:06:13,379 Este existe, ¿no? 87 00:06:13,420 --> 00:06:14,100 Por ahora lo quito 88 00:06:14,100 --> 00:06:18,600 Entonces, ahí tengo ya un sufijo 89 00:06:18,600 --> 00:06:19,800 1, 2, 3 90 00:06:19,800 --> 00:06:21,399 Que seguramente me sea útil 91 00:06:21,399 --> 00:06:23,500 Porque muchos de los resultados 92 00:06:23,500 --> 00:06:25,959 empiezan por un prefijo 93 00:06:25,959 --> 00:06:27,740 distinto, empiezan por 30io 94 00:06:27,740 --> 00:06:29,500 40io, pero 95 00:06:29,500 --> 00:06:31,560 acaban igual, acaban por 96 00:06:31,560 --> 00:06:33,519 2, 1, 3, 4 97 00:06:33,519 --> 00:06:35,740 acaban igual, entonces ese sufijo seguramente me sea 98 00:06:35,740 --> 00:06:37,680 muy útil, pues ya lo tengo ahí construido con ese 99 00:06:37,680 --> 00:06:39,779 switch case, y ahora ya 100 00:06:39,779 --> 00:06:41,600 podemos distinguir los casos, lo vamos a hacer 101 00:06:41,600 --> 00:06:43,540 con un if el save para cambiar 102 00:06:43,540 --> 00:06:45,279 pues ahora ya sí 103 00:06:45,279 --> 00:06:47,620 en función de este numerito que me han dado 104 00:06:47,620 --> 00:06:53,850 si las decenas 105 00:06:53,850 --> 00:06:54,629 decenas 106 00:06:54,629 --> 00:06:57,850 es igual a cero, ya sabemos que 107 00:06:57,850 --> 00:06:58,569 eso va por libre 108 00:06:58,569 --> 00:07:01,189 hacemos lo que haya que hacer 109 00:07:01,189 --> 00:07:03,829 que ya sabemos que es por libre, que aquí 110 00:07:03,829 --> 00:07:05,829 habrá de nuevo only if el safe 111 00:07:05,829 --> 00:07:07,529 o en switch case, para poner 112 00:07:07,529 --> 00:07:09,930 cero, uno, dos, tres, porque esto irá por libre 113 00:07:09,930 --> 00:07:11,970 esto lo podéis 114 00:07:11,970 --> 00:07:12,829 completar 115 00:07:12,829 --> 00:07:15,949 con el switch case correspondiente, no hay otra 116 00:07:15,949 --> 00:07:17,910 en función de si las unidades son cero 117 00:07:17,910 --> 00:07:18,230 bueno 118 00:07:18,230 --> 00:07:21,850 bueno, podemos usar 119 00:07:21,850 --> 00:07:23,329 el propio sufijo, si lo tenemos aquí 120 00:07:23,329 --> 00:07:25,209 si las unidades son 0 121 00:07:25,209 --> 00:07:26,610 aquí solamente 122 00:07:26,610 --> 00:07:29,149 claro, mostrar el sufijo 123 00:07:29,149 --> 00:07:31,470 salvo si es 0, que entonces mostrará 0 124 00:07:31,470 --> 00:07:32,009 vale 125 00:07:32,009 --> 00:07:35,790 en el caso, vamos a añadir el caso 0 126 00:07:35,790 --> 00:07:37,769 aunque luego 127 00:07:37,769 --> 00:07:39,470 no lo usamos para concatenar el otro 128 00:07:39,470 --> 00:07:50,399 pero en el caso 0 129 00:07:50,399 --> 00:07:52,040 pues ese 130 00:07:52,040 --> 00:07:54,199 sufijo sería igual a 131 00:07:54,199 --> 00:07:55,259 0 132 00:07:55,259 --> 00:08:00,810 y break 133 00:08:00,810 --> 00:08:04,000 vale, pues entonces ya tenemos 134 00:08:04,000 --> 00:08:06,339 esa variable ahí que nos va a ser bastante útil 135 00:08:06,339 --> 00:08:07,860 0, 1, 2, 3 136 00:08:07,860 --> 00:08:09,480 ahora ya, si las decenas son 0 137 00:08:09,480 --> 00:08:12,060 el resultado está claro, es mostrar 138 00:08:12,060 --> 00:08:12,500 esto 139 00:08:12,500 --> 00:08:21,939 mostrar lo que me haya dado a mí en el 140 00:08:21,939 --> 00:08:23,819 sufijo, el numerito que me haya dado 141 00:08:23,819 --> 00:08:25,879 depende del número, ¿vale? depende de las 142 00:08:25,879 --> 00:08:27,600 unidades, y ahora 143 00:08:27,600 --> 00:08:32,909 si no estamos en el caso de que 144 00:08:32,909 --> 00:08:34,870 las decenas sean 0, sino que 145 00:08:34,870 --> 00:08:37,009 las decenas es igual a 1 146 00:08:37,009 --> 00:08:39,029 pues aquí sí que va 147 00:08:39,029 --> 00:08:40,929 bastante por libre, porque 148 00:08:40,929 --> 00:08:49,409 tengo el 10, 11, 12, 13, 14, 15, que no siguen patrones, esos los tendría que distinguir 149 00:08:49,409 --> 00:08:55,210 con un switch case de las decenas o con un if-else-if, a elegir, con un switch case o 150 00:08:55,210 --> 00:09:05,509 un if-else-if, y luego, si no es ninguno de esos, sí que podríamos hacer, ya concatenar 151 00:09:05,509 --> 00:09:09,250 al sufijo, ¿vale? Entonces 152 00:09:09,250 --> 00:09:12,809 en este caso, por ejemplo, si el numerito 153 00:09:12,809 --> 00:09:16,289 si el número que es n 154 00:09:16,289 --> 00:09:24,330 si el número que es n es mayor o igual 155 00:09:24,330 --> 00:09:26,750 que el 16 156 00:09:26,750 --> 00:09:32,389 entonces aquí el resultado lo podemos acortar 157 00:09:32,389 --> 00:09:39,759 poniendo 10 y más 158 00:09:39,759 --> 00:09:41,220 Sufijo, ¿verdad? 159 00:09:41,980 --> 00:09:43,860 16, 7 o 19 160 00:09:43,860 --> 00:09:45,120 ¿Vale? Entonces si es mayor 161 00:09:45,120 --> 00:09:48,159 Claro 162 00:09:48,159 --> 00:09:50,860 Y luego el resto de los casos 163 00:09:50,860 --> 00:09:52,659 El save 164 00:09:52,659 --> 00:09:55,440 N igual a 165 00:09:55,440 --> 00:09:56,299 15 166 00:09:56,299 --> 00:09:59,860 Pues aquí ya, esto sí que habría que hacerlo por separado 167 00:09:59,860 --> 00:10:00,899 Obviamente 168 00:10:00,899 --> 00:10:02,820 System.out 15 169 00:10:02,820 --> 00:10:04,639 Y resto 170 00:10:04,639 --> 00:10:05,700 Para no 171 00:10:05,700 --> 00:10:16,740 N igual a 16 172 00:10:16,740 --> 00:10:19,340 ¿Vale? 173 00:10:19,799 --> 00:10:21,759 Y resto de casos 174 00:10:21,759 --> 00:10:25,440 Esto sí que hay que hacerlo por libre 175 00:10:25,440 --> 00:10:26,799 Si decenas es igual a cero 176 00:10:26,799 --> 00:10:28,019 Lo hemos completado en este 177 00:10:28,019 --> 00:10:29,100 Este está claro 178 00:10:29,100 --> 00:10:31,860 Si decenas es igual a uno 179 00:10:31,860 --> 00:10:33,100 Tenemos dos casos 180 00:10:33,100 --> 00:10:35,440 Que sea mayor o igual que 16 el número 181 00:10:35,440 --> 00:10:38,059 Pero tendría que poner menor que 20 182 00:10:38,059 --> 00:10:42,580 Sí, pero es que estoy en el subcaso 183 00:10:42,580 --> 00:10:43,559 De que decenas es igual a uno 184 00:10:43,559 --> 00:10:44,539 Entonces no hace falta 185 00:10:44,539 --> 00:10:46,059 Porque estoy en este subcaso 186 00:10:46,059 --> 00:10:48,299 Si no, efectivamente tendría que completarlo así 187 00:10:48,299 --> 00:10:50,419 Pero como estoy dentro de este el save 188 00:10:50,419 --> 00:10:53,200 no va a ser de 20 en adelante 189 00:10:53,200 --> 00:10:55,080 vale 190 00:10:55,080 --> 00:10:56,720 ahora ya 191 00:10:56,720 --> 00:10:58,279 en el resto de casos 192 00:10:58,279 --> 00:11:03,289 si estoy de 20 en adelante 193 00:11:03,289 --> 00:11:05,129 vale 194 00:11:05,129 --> 00:11:07,980 pues ahora ya aquí 195 00:11:07,980 --> 00:11:09,240 tendríamos que 196 00:11:09,240 --> 00:11:16,559 aquí se puede plantear de muchas maneras 197 00:11:16,559 --> 00:11:17,120 si 198 00:11:17,120 --> 00:11:20,379 estoy de 20 en adelante 199 00:11:20,379 --> 00:11:22,679 si las unidades son 0 200 00:11:22,679 --> 00:11:24,720 también es un caso 201 00:11:24,720 --> 00:11:26,940 especial porque 20, 30, 40 202 00:11:26,940 --> 00:11:31,100 Entonces, si las unidades son 0 203 00:11:31,100 --> 00:11:41,090 Si las unidades son igual a 0 204 00:11:41,090 --> 00:11:44,889 Aquí podríamos distinguir 205 00:11:44,889 --> 00:11:55,340 Sí, bueno, más que las unidades 206 00:11:55,340 --> 00:11:56,919 Como luego vamos a tener que distinguir 207 00:11:56,919 --> 00:11:58,220 Esto lo más fácil es hacer 208 00:11:58,220 --> 00:12:02,860 Si el número es igual a 20 209 00:12:02,860 --> 00:12:05,519 Pues entonces 210 00:12:05,519 --> 00:12:08,700 Si el número es igual a 20 211 00:12:08,700 --> 00:12:10,799 Hacemos el prefijo 212 00:12:10,799 --> 00:12:13,419 Igual a 20 213 00:12:13,419 --> 00:12:15,720 Y aquí vamos distinguiendo 214 00:12:15,720 --> 00:12:17,980 Si el número 215 00:12:17,980 --> 00:12:19,480 Es igual a 30 216 00:12:19,480 --> 00:12:21,059 Y luego ya lo concatenamos con el otro 217 00:12:21,059 --> 00:12:24,809 Es igual a 30 218 00:12:24,809 --> 00:12:26,669 Entonces 219 00:12:26,669 --> 00:12:31,269 El prefijo igual a 30 220 00:12:31,269 --> 00:12:34,480 Perdón 221 00:12:34,480 --> 00:12:35,759 Ay que tontería estoy haciendo 222 00:12:35,759 --> 00:12:36,940 Igual a 20 223 00:12:36,940 --> 00:12:42,519 El prefijo igual a 224 00:12:42,519 --> 00:12:44,159 30 225 00:12:44,159 --> 00:12:49,009 Hago solo el 40 y el resto sería igual 226 00:12:49,009 --> 00:12:56,850 Si el número es igual a 40 227 00:12:56,850 --> 00:13:05,789 El prefijo sería igual a 40 228 00:13:05,789 --> 00:13:09,289 Y así resto de casos 229 00:13:09,289 --> 00:13:11,110 Que lo pongo ahí en comentario 230 00:13:11,110 --> 00:13:22,240 Y ahora, una vez que tengo el prefijo fijado 231 00:13:22,240 --> 00:13:25,000 En el caso de que esté de 20 en adelante 232 00:13:25,000 --> 00:13:26,840 Una vez que tengo el prefijo fijado 233 00:13:26,840 --> 00:13:28,720 El caso final 234 00:13:28,720 --> 00:13:30,879 Aunque los 20 van a quedar mal 235 00:13:30,879 --> 00:13:33,139 porque es 20, pero habría que hacer otra distinción 236 00:13:33,139 --> 00:13:34,960 más que hace muy pesado 237 00:13:34,960 --> 00:13:35,919 entonces 238 00:13:35,919 --> 00:13:38,919 una vez que 239 00:13:38,919 --> 00:13:40,720 tengo ya fijado el prefijo 240 00:13:40,720 --> 00:13:42,500 en el caso de que sea de 20 en adelante 241 00:13:42,500 --> 00:13:44,259 ahora ya 242 00:13:44,259 --> 00:13:45,659 podemos hacer 243 00:13:45,659 --> 00:13:48,200 si las unidades 244 00:13:48,200 --> 00:13:53,919 resulta que fueran igual a 0 245 00:13:53,919 --> 00:13:55,980 lo que tengo que mostrar es el prefijo sin más 246 00:13:55,980 --> 00:13:57,759 20, 30, 40, lo que fuera 247 00:13:57,759 --> 00:14:00,899 mostrar el prefijo 248 00:14:00,899 --> 00:14:12,080 Pero si las unidades no fueran cero, en el caso S, que tengo que mostrar el prefijo concatenado con I y concatenado con el sufijo. 249 00:14:13,799 --> 00:14:22,679 Prefijo concatenado con I y concatenado con esto. 250 00:14:27,539 --> 00:14:28,840 Ya tengo otra versión. 251 00:14:38,879 --> 00:14:39,980 Bueno, me faltaría completarlos. 252 00:14:40,659 --> 00:14:42,000 Esto es el save de 50. 253 00:14:42,000 --> 00:14:44,799 Aquí ya, claro, este programa 254 00:14:44,799 --> 00:14:46,620 ¿Qué haría? Primero, te fija las unidades 255 00:14:46,620 --> 00:14:48,059 Esta variable te la fija por libre 256 00:14:48,059 --> 00:14:51,100 0, 1, 2, vale, ahora ya empezamos a distinguir 257 00:14:51,100 --> 00:14:52,700 Resulta que decenas 258 00:14:52,700 --> 00:14:53,440 Es igual a 0 259 00:14:53,440 --> 00:14:55,940 Mostramos las unidades, ahí no hay duda 260 00:14:55,940 --> 00:14:57,940 Mostramos unidades, listo 261 00:14:57,940 --> 00:15:00,899 ¿Que estamos en la primera decena? 262 00:15:01,899 --> 00:15:02,679 Pues si estamos 263 00:15:02,679 --> 00:15:04,159 En mayor o igual que 16 264 00:15:04,159 --> 00:15:06,919 10 más las unidades 265 00:15:06,919 --> 00:15:07,440 Que sean 266 00:15:07,440 --> 00:15:10,860 Si estamos en 15, 16, 17, eso ya por libre 267 00:15:10,860 --> 00:15:13,539 15, 16, 17, esto ya se puede completar 268 00:15:13,539 --> 00:15:15,860 System out, 15, system out, 16 269 00:15:15,860 --> 00:15:19,480 Perdón, en igual a 15, 14 270 00:15:19,480 --> 00:15:21,539 Perdón, 14 271 00:15:21,539 --> 00:15:23,919 13, 12, 11 272 00:15:23,919 --> 00:15:25,539 Esto tendría que completar los system out 273 00:15:25,539 --> 00:15:27,720 15, system out 14, el siguiente system out 274 00:15:27,720 --> 00:15:29,500 13, el resto de casos 275 00:15:29,500 --> 00:15:31,779 Lo completaría ya con el system out 276 00:15:31,779 --> 00:15:33,240 Específico, igual que aquí, ¿no? 277 00:15:33,360 --> 00:15:38,120 Aquí, system out 278 00:15:38,120 --> 00:15:44,549 Venga, 15 279 00:15:44,549 --> 00:15:46,289 Pues igual que aquí pondría 280 00:15:46,289 --> 00:15:48,470 14, hasta 281 00:15:48,470 --> 00:15:55,019 el 11, perdón 282 00:15:55,019 --> 00:15:55,879 aquí 14 283 00:15:55,879 --> 00:15:58,740 resto de casos 284 00:15:58,740 --> 00:15:59,980 hasta el 11 285 00:15:59,980 --> 00:16:02,960 hasta el 286 00:16:02,960 --> 00:16:04,480 11, vale 287 00:16:04,480 --> 00:16:06,980 entonces la primera decena ya la tengo 288 00:16:06,980 --> 00:16:09,320 cubierta, para los mayores de 16 289 00:16:09,320 --> 00:16:11,159 lo consigo 290 00:16:11,159 --> 00:16:13,019 así, y de 15 a 291 00:16:13,019 --> 00:16:14,919 11 ya los tengo que hacer a mano, ahí no hay 292 00:16:14,919 --> 00:16:16,240 tutía, de 15 a 11 a mano 293 00:16:16,240 --> 00:16:19,240 y ahora, de las decenas del 20 en adelante 294 00:16:19,240 --> 00:16:20,940 es la concatenación 295 00:16:20,940 --> 00:16:22,500 De un prefijo y un sufijo 296 00:16:22,500 --> 00:16:25,200 Lo único es que el 20 297 00:16:25,200 --> 00:16:26,700 Tiene un matiz, porque me va a salir 298 00:16:26,700 --> 00:16:29,200 20 y 1, 20 y 2 299 00:16:29,200 --> 00:16:31,120 Entonces el 20 tendría que tratarlo por libre 300 00:16:31,120 --> 00:16:32,600 Pero para no alargarlo demasiado 301 00:16:32,600 --> 00:16:35,399 Vamos a tratarlos igual, 31, 40 y 302 00:16:35,399 --> 00:16:36,820 Entonces todos 303 00:16:36,820 --> 00:16:38,759 Funcionan igual 304 00:16:38,759 --> 00:16:40,700 Todos de 20 en adelante funcionan igual 305 00:16:40,700 --> 00:16:43,200 Es un prefijo concatenado a las unidades que sean 306 00:16:43,200 --> 00:16:44,740 Pues el prefijo 307 00:16:44,740 --> 00:16:46,379 Lo fijo en función del numerito 308 00:16:46,379 --> 00:16:48,320 Si es 20, si es 30 309 00:16:48,320 --> 00:16:52,860 bueno, perdón, si es igual a 20 310 00:16:52,860 --> 00:16:55,259 no, si es mayor o igual que 20 y menor o igual que 30 311 00:16:55,259 --> 00:16:56,500 esta condición estaría mal puesta 312 00:16:56,500 --> 00:16:59,679 si es mayor o igual 313 00:16:59,679 --> 00:17:03,700 que 20 y menor o igual 314 00:17:03,700 --> 00:17:06,599 y menor que 30 315 00:17:06,599 --> 00:17:09,359 perdón, y menor que 30 316 00:17:09,359 --> 00:17:12,319 es decir, si estoy en la segunda decena 317 00:17:12,319 --> 00:17:13,279 el prefijo es 20 318 00:17:13,279 --> 00:17:16,980 y así con todos 319 00:17:16,980 --> 00:17:20,220 Si estoy en la tercera decena 320 00:17:20,220 --> 00:17:22,420 Es decir, mayor o igual que 30 321 00:17:22,420 --> 00:17:24,400 Y menor o 322 00:17:24,400 --> 00:17:25,680 Y menor que 40 323 00:17:25,680 --> 00:17:27,519 Entonces el prefijo sería 30 324 00:17:27,519 --> 00:17:29,940 Pero si estoy 325 00:17:29,940 --> 00:17:32,000 En la cuarta decena 326 00:17:32,000 --> 00:17:33,859 Es decir 327 00:17:33,859 --> 00:17:35,859 Mayor o igual que 40 328 00:17:35,859 --> 00:17:39,000 Y menor que 50 329 00:17:39,000 --> 00:17:40,400 Entonces el prefijo sería 40 330 00:17:40,400 --> 00:17:42,000 Y así resto de casos 331 00:17:42,000 --> 00:17:44,039 Hasta 90, tendríamos que poner, claro 332 00:17:44,039 --> 00:17:46,359 Resto de casos 333 00:17:46,359 --> 00:17:57,299 Ya tengo el prefijo. Y ahora ya, ¿qué número es? Pues será, en todos los casos, prefijo concatenado con i y el sufijo, salvo si las unidades son 0. 334 00:17:57,740 --> 00:18:04,680 Porque si las unidades son 0, pues entonces no es 20 y 0, 30 y 0. En ese caso es el prefijo solo, sin más. 335 00:18:04,680 --> 00:18:06,799 Vale, solo, sin más 336 00:18:06,799 --> 00:18:09,940 Vale, pues salvo por el matiz 337 00:18:09,940 --> 00:18:11,880 De que 21, 22 338 00:18:11,880 --> 00:18:14,380 No se escribe 21, 22 339 00:18:14,380 --> 00:18:16,339 Que lo podríamos sacar por libre 340 00:18:16,339 --> 00:18:17,920 Esto ya debería funcionar 341 00:18:17,920 --> 00:18:24,079 Vamos a ver si nos hemos equivocado en algo 342 00:18:24,079 --> 00:18:31,240 Por ejemplo 343 00:18:31,240 --> 00:18:34,240 Meto un número cualquiera de la primera decena 344 00:18:34,240 --> 00:18:37,380 7, vale, meto el 0 345 00:18:37,380 --> 00:18:39,460 cero, estupendo, voy a meter 346 00:18:39,460 --> 00:18:41,559 uno de la segunda decena de los raros 347 00:18:41,559 --> 00:18:43,660 que había contemplado 348 00:18:43,660 --> 00:18:45,440 ya, el quince, este lo había contemplado 349 00:18:45,440 --> 00:18:47,519 quince, muy bien, voy a meter 350 00:18:47,519 --> 00:18:49,700 uno ahora de los genéricos de la segunda decena 351 00:18:49,700 --> 00:18:51,119 diecisiete, muy bien 352 00:18:51,119 --> 00:18:53,180 voy a meter ahora ya 353 00:18:53,180 --> 00:18:55,460 de las otras decenas que he contemplado 354 00:18:55,460 --> 00:18:57,680 el treinta y cinco, treinta y cinco 355 00:18:57,680 --> 00:19:01,049 muy bien, sí 356 00:19:01,049 --> 00:19:02,549 un tres 357 00:19:02,549 --> 00:19:04,910 y 358 00:19:04,910 --> 00:19:07,390 vale, de la primera decena, si ya la habíamos 359 00:19:07,390 --> 00:19:10,049 vale, vamos a poner este 360 00:19:10,049 --> 00:19:11,410 20, muy bien 361 00:19:11,410 --> 00:19:14,490 el 40 362 00:19:14,490 --> 00:19:15,690 vale, pero si pongo 363 00:19:15,690 --> 00:19:18,130 45, pues me concatenará 364 00:19:18,130 --> 00:19:20,190 ese prefijo 40 al sufijo 5 365 00:19:20,190 --> 00:19:22,009 45, lo único que 366 00:19:22,009 --> 00:19:23,910 queda raro aquí es si pongo 1 367 00:19:23,910 --> 00:19:25,769 como esto, porque el 20 368 00:19:25,769 --> 00:19:27,329 no es 20 y 5 369 00:19:27,329 --> 00:19:30,049 entonces para el caso del 20 370 00:19:30,049 --> 00:19:31,869 tendría que hacer solamente una 371 00:19:31,869 --> 00:19:33,269 distinción más, y es 372 00:19:33,269 --> 00:19:34,910 si las unidades son 0 o no 373 00:19:34,910 --> 00:19:37,390 Porque si son 0 es 20 374 00:19:37,390 --> 00:19:39,789 Y si no, tengo que cambiar el prefijo 375 00:19:39,789 --> 00:19:40,589 A 20 376 00:19:40,589 --> 00:19:43,470 Cambiarlo a 20, nada más 377 00:19:43,470 --> 00:19:49,319 Es decir, aquí en el 378 00:19:49,319 --> 00:19:50,460 Caso 20 379 00:19:50,460 --> 00:19:54,269 Tendría que hacer otro if más 380 00:19:54,269 --> 00:19:56,549 Si las unidades son 0, pero bueno, no merece la pena 381 00:19:56,549 --> 00:20:00,950 Vale, pues ahora ya 382 00:20:00,950 --> 00:20:03,369 Sin bucles, sin funciones 383 00:20:03,369 --> 00:20:05,470 No hay forma de compactar esto más 384 00:20:05,470 --> 00:20:09,319 ¿Vale? No hay forma de compactarlo más 385 00:20:09,319 --> 00:20:10,859 Vamos a 386 00:20:10,859 --> 00:20:13,519 Pedírselo a nuestro amigo 387 00:20:13,519 --> 00:20:15,859 A ver si nos es capaz de hacer algo mejor 388 00:20:15,859 --> 00:20:17,900 Sin usar 389 00:20:17,900 --> 00:20:19,900 Funciones, ni Arrays, ni nada de eso 390 00:20:19,900 --> 00:20:21,619 A ver si 391 00:20:21,619 --> 00:20:29,430 A ver como lo resuelves 392 00:20:29,430 --> 00:20:31,269 En Java 393 00:20:31,269 --> 00:20:33,849 Sin Arrays 394 00:20:33,849 --> 00:20:35,309 Ni 395 00:20:35,309 --> 00:20:40,119 Creando métodos 396 00:20:40,119 --> 00:20:43,319 Auxiliares 397 00:20:43,319 --> 00:20:44,559 Ni bucles 398 00:20:44,559 --> 00:20:46,980 Es decir 399 00:20:46,980 --> 00:20:47,720 Solo con 400 00:20:47,720 --> 00:20:52,210 Sin bucle, sin array, sin método 401 00:20:52,210 --> 00:20:53,690 Solo usando if el save 402 00:20:53,690 --> 00:20:55,690 Bueno, podrías un switch también, no pasa nada 403 00:20:55,690 --> 00:20:57,670 A ver, ¿qué hace? 404 00:20:59,950 --> 00:21:00,890 Bueno, primero con 405 00:21:00,890 --> 00:21:02,190 No sé si se ve 406 00:21:02,190 --> 00:21:04,829 Primero, bueno 407 00:21:04,829 --> 00:21:06,769 El valida que esté fuera de rango 408 00:21:06,769 --> 00:21:09,650 Hace un primer if para ver si es válido 409 00:21:09,650 --> 00:21:11,069 Pero bueno, ya está 410 00:21:11,069 --> 00:21:12,369 Nosotros hemos asumido que era válido 411 00:21:12,369 --> 00:21:14,210 Ahora ya 412 00:21:14,210 --> 00:21:17,190 Saca este texto de aquí 413 00:21:17,190 --> 00:21:18,609 lo que hemos llamado nosotros 414 00:21:18,609 --> 00:21:21,410 sufijo, 1, 2, 3 415 00:21:21,410 --> 00:21:22,210 4, 5 416 00:21:22,210 --> 00:21:24,470 bueno y lo saca para 417 00:21:24,470 --> 00:21:29,009 para los casos raros también 418 00:21:29,009 --> 00:21:33,059 y ahora para el resto 419 00:21:33,059 --> 00:21:33,900 de los casos 420 00:21:33,900 --> 00:21:37,420 va concatenando 10 y 20 421 00:21:37,420 --> 00:21:39,200 va concatenando 422 00:21:39,200 --> 00:21:41,059 con esto, le he dicho que no usara métodos auxiliares 423 00:21:41,059 --> 00:21:42,980 y lo ha usado, va concatenando 424 00:21:42,980 --> 00:21:45,259 con un método auxiliar, es decir, este código 425 00:21:45,259 --> 00:21:47,079 lo ha sacado un método aparte 426 00:21:47,079 --> 00:21:48,259 pero es lo mismo que hemos hecho nosotros dentro 427 00:21:48,259 --> 00:21:51,339 vale, vamos 428 00:21:51,339 --> 00:21:53,539 no ha hecho nada diferente 429 00:21:53,539 --> 00:21:55,539 no se puede compactar nada más 430 00:21:55,539 --> 00:21:57,700 vale, ha puesto aquí 431 00:21:57,700 --> 00:21:59,299 un operador ternario para 432 00:21:59,299 --> 00:22:05,359 bueno, si se lo pedís vosotros 433 00:22:05,359 --> 00:22:06,940 no sé si lo hará con esta misma 434 00:22:06,940 --> 00:22:08,460 versión o con otra distinta 435 00:22:08,460 --> 00:22:10,140 pero 436 00:22:10,140 --> 00:22:12,019 viene a ser lo mismo 437 00:22:12,019 --> 00:22:14,420 vale 438 00:22:14,420 --> 00:22:15,880 te voy a decir eso, profesor 439 00:22:15,880 --> 00:22:17,299 si en el examen 440 00:22:17,299 --> 00:22:19,299 los cuales que pedíamos 441 00:22:19,299 --> 00:22:24,640 Venga, pues vamos al 26 442 00:22:24,640 --> 00:22:35,670 Ejer 26 443 00:22:35,670 --> 00:22:40,700 El ejercicio 26 444 00:22:40,700 --> 00:22:41,579 Dice 445 00:22:41,579 --> 00:22:49,289 Pedir un día 446 00:22:49,289 --> 00:22:51,349 Un mes y un año 447 00:22:51,349 --> 00:22:54,890 E indicar si la fecha es correcta 448 00:22:54,890 --> 00:22:56,890 Vale, de nuevo habrá que anidar unas cuantas cositas 449 00:22:57,450 --> 00:23:00,890 Pues ala 450 00:23:00,890 --> 00:23:18,269 vale 451 00:23:18,269 --> 00:23:28,619 pues venga, vamos a pedirle 452 00:23:28,619 --> 00:23:31,019 las tres cosas que son los datos de entrada 453 00:23:31,019 --> 00:23:37,380 el día 454 00:23:37,380 --> 00:23:48,470 el mes y el año 455 00:24:15,599 --> 00:24:24,309 Vale, datos de entrada 456 00:24:24,309 --> 00:24:26,549 Pues aquí de nuevo es un montón 457 00:24:26,549 --> 00:24:28,170 De anidar y felserif 458 00:24:28,170 --> 00:24:30,609 Cositas, la idea es ver si conseguimos 459 00:24:30,609 --> 00:24:32,609 Hacer un anidamiento lo menos complejo 460 00:24:32,609 --> 00:24:34,529 Posible, y en este caso 461 00:24:34,529 --> 00:24:36,789 Que realmente hay muchas cosas que contemplar 462 00:24:36,789 --> 00:24:38,730 Lenin, ¿te puedes 463 00:24:38,730 --> 00:24:40,349 Sentar en tu sitio y no 464 00:24:40,349 --> 00:24:41,789 Andar paseando por ahí? 465 00:24:44,019 --> 00:24:45,359 Ya, ya lo sé, pero eso 466 00:24:45,359 --> 00:24:47,799 A mí me dificulta mucho 467 00:24:47,799 --> 00:24:49,740 Pero todo contempla muchas breves a la vez 468 00:24:49,740 --> 00:24:52,480 O sea, primero, hablar sin decir demasiadas tonterías, 469 00:24:52,599 --> 00:24:53,859 sin perder el hilo del discurso. 470 00:24:54,380 --> 00:24:55,359 No distraerme, ¿no? 471 00:24:55,460 --> 00:24:57,279 Y es muy complicado si hay ruido de fondo, 472 00:24:57,359 --> 00:24:58,000 si no está por aquí. 473 00:24:58,799 --> 00:25:03,940 No se puede contemplar tantas... 474 00:25:03,940 --> 00:25:08,039 Bueno, pues entonces, aquí el ejercicio en sí es fácil 475 00:25:08,039 --> 00:25:10,160 porque se trata de contemplar todos los casos. 476 00:25:10,880 --> 00:25:13,380 El problema aquí está en que nos quede un código 477 00:25:13,380 --> 00:25:15,259 más o menos legible, nada más. 478 00:25:15,720 --> 00:25:17,000 La dificultad no es el problema. 479 00:25:17,119 --> 00:25:19,799 El anterior no era difícil porque rápidamente 480 00:25:19,799 --> 00:25:21,279 veíais en la cabeza lo que teníais que hacer, 481 00:25:21,279 --> 00:25:24,519 que era pues ir concatenando 482 00:25:24,519 --> 00:25:25,940 ir haciendo switch case 483 00:25:25,940 --> 00:25:28,299 ir haciendo if y en función del numerito 484 00:25:28,299 --> 00:25:29,460 pues poner una cosa u otra 485 00:25:29,460 --> 00:25:31,900 difícil no era porque sabíais lo que había que hacer 486 00:25:31,900 --> 00:25:32,619 desde el principio 487 00:25:32,619 --> 00:25:35,180 pero el asunto es como hago yo un código 488 00:25:35,180 --> 00:25:36,619 que no sea demasiado lioso 489 00:25:36,619 --> 00:25:39,420 como hago los if, como hago los else y ya está 490 00:25:39,420 --> 00:25:40,759 pues aquí es lo mismo 491 00:25:40,759 --> 00:25:43,279 vamos a ver si nos sale un código 492 00:25:43,279 --> 00:25:44,400 que sea más o menos legible 493 00:25:44,400 --> 00:25:47,700 entonces una cosa sencilla 494 00:25:47,700 --> 00:25:49,599 puede ser quitarse primero 495 00:25:49,599 --> 00:25:55,039 Y quitarse primero los casos no válidos 496 00:25:55,039 --> 00:25:56,579 Porque eso es lo más fácil de comprobar 497 00:25:56,579 --> 00:25:59,220 Ahí no hay nada que anidar 498 00:25:59,220 --> 00:26:00,400 ¿Vale? 499 00:26:01,920 --> 00:26:13,819 Entonces, ¿cuáles serían los casos no válidos? 500 00:26:14,539 --> 00:26:16,279 Pues los casos no válidos serían 501 00:26:16,279 --> 00:26:19,720 Si el mes, por ejemplo 502 00:26:19,720 --> 00:26:26,509 Si el mes es mayor que 12 503 00:26:26,509 --> 00:26:27,569 O 504 00:26:27,569 --> 00:26:30,549 El mes es 505 00:26:30,549 --> 00:26:31,730 Menor que uno 506 00:26:31,730 --> 00:26:33,869 ¿Vale? 507 00:26:34,109 --> 00:26:35,569 Pues ese caso es no válido 508 00:26:35,569 --> 00:26:36,670 ¿Verdad? 509 00:26:38,109 --> 00:26:39,250 Entonces ahí 510 00:26:39,250 --> 00:26:44,339 Fecha no válida 511 00:26:44,339 --> 00:26:46,359 Vale 512 00:26:46,359 --> 00:26:52,809 Aquí hay una cosa 513 00:26:52,809 --> 00:26:55,250 Que nos facilita 514 00:26:55,250 --> 00:26:57,069 En estos casos en los que hay que anidar 515 00:26:57,069 --> 00:26:58,809 Tanto las cosas 516 00:26:58,809 --> 00:26:59,130 Dime 517 00:26:59,130 --> 00:27:02,769 Pero intenta decir 518 00:27:02,769 --> 00:27:04,049 cuando hacemos el descanso 519 00:27:04,049 --> 00:27:04,990 vale 520 00:27:04,990 --> 00:27:08,490 hay una cosa que nos facilita la vida es 521 00:27:08,490 --> 00:27:10,650 si la fecha no válida, si yo pudiera irme 522 00:27:10,650 --> 00:27:12,630 de aquí y largarme y abandonar 523 00:27:12,630 --> 00:27:14,250 el programa, fenomenal 524 00:27:14,250 --> 00:27:16,609 porque si no, ahora tengo 525 00:27:16,609 --> 00:27:18,690 que hacer un else, en el caso de que sea válido 526 00:27:18,690 --> 00:27:20,789 y aquí ya me viene un anidamiento 527 00:27:20,789 --> 00:27:22,650 super rollo, en el caso de que sea válido 528 00:27:22,650 --> 00:27:24,769 ahora, vamos a ver que pasa 529 00:27:24,769 --> 00:27:26,609 con el día, ya empezamos a anidar y es 530 00:27:26,609 --> 00:27:28,730 un rollo que no veas, entonces si yo pudiera 531 00:27:28,730 --> 00:27:30,190 en este punto 532 00:27:30,190 --> 00:27:32,650 pirarme y decir no hagas 533 00:27:32,650 --> 00:27:34,250 Nada más, programa terminado 534 00:27:34,250 --> 00:27:36,849 Qué suerte, porque no tendría que poner aquí un ELSE 535 00:27:36,849 --> 00:27:38,710 Repito, en el caso de que el mes sea 536 00:27:38,710 --> 00:27:40,289 Válido y empezará a anidar 537 00:27:40,289 --> 00:27:42,029 Y ahora qué pasa con el día 538 00:27:42,029 --> 00:27:43,950 Bueno, pues afortunadamente 539 00:27:43,950 --> 00:27:45,309 Tenemos 540 00:27:45,309 --> 00:27:48,289 Esta sentencia 541 00:27:48,289 --> 00:27:55,640 Que termina el programa en ese momento 542 00:27:55,640 --> 00:27:57,539 ¿Vale? Porque yo en este 543 00:27:57,539 --> 00:27:58,779 Momento quiero terminar 544 00:27:58,779 --> 00:27:59,619 ¿Quiero terminar? 545 00:28:00,920 --> 00:28:01,900 Ya está, quiero terminar 546 00:28:01,900 --> 00:28:03,980 La fecha no es válida, fuera 547 00:28:03,980 --> 00:28:06,440 Termina, ala, ya está 548 00:28:06,440 --> 00:28:09,519 System Exit significa que el programa 549 00:28:09,519 --> 00:28:11,200 se termina, entonces ya no sigue 550 00:28:11,200 --> 00:28:13,019 después del if con todo lo que hubiera 551 00:28:13,019 --> 00:28:15,319 no sigue, da igual lo que haya después 552 00:28:15,319 --> 00:28:16,839 porque el programa termina 553 00:28:16,839 --> 00:28:19,240 entonces, este numerito de aquí 554 00:28:19,240 --> 00:28:20,039 ¿qué significa? 555 00:28:20,759 --> 00:28:23,400 es un numerito de control que se le da al sistema 556 00:28:23,400 --> 00:28:25,380 operativo por si el sistema operativo quisiera 557 00:28:25,380 --> 00:28:25,940 usarlo 558 00:28:25,940 --> 00:28:29,200 ¿y por qué querría usar esto 559 00:28:29,200 --> 00:28:30,000 el sistema operativo? 560 00:28:30,680 --> 00:28:33,039 bueno, ya sabéis que el sistema operativo, entre muchas otras cosas 561 00:28:33,039 --> 00:28:35,619 gestiona todos los procesos 562 00:28:35,619 --> 00:28:38,000 que se están ejecutando en nuestra CPU 563 00:28:38,000 --> 00:28:40,480 y para cada proceso 564 00:28:40,480 --> 00:28:43,700 se encarga de gestionar la memoria 565 00:28:43,700 --> 00:28:45,099 que se le reserva al proceso, 566 00:28:45,279 --> 00:28:46,680 su memoria de datos, todo. 567 00:28:47,640 --> 00:28:50,140 Bueno, pues cuando nuestro programa Java arranque 568 00:28:50,140 --> 00:28:52,940 será otro proceso más del sistema operativo, 569 00:28:53,119 --> 00:28:54,980 otro más, junto con el Eclipse, 570 00:28:55,079 --> 00:28:55,900 el explorador de archivos, 571 00:28:56,039 --> 00:28:56,980 todo lo que está arrancado. 572 00:28:58,079 --> 00:29:00,759 Bueno, pues ¿qué ocurre cuando hacemos System Exit? 573 00:29:01,000 --> 00:29:03,480 Que nuestro proceso termina. 574 00:29:03,480 --> 00:29:06,319 es decir, el proceso que se inició 575 00:29:06,319 --> 00:29:08,119 cuando nuestro programa 576 00:29:08,119 --> 00:29:10,259 arrancó, ese proceso 577 00:29:10,259 --> 00:29:10,980 ha terminado 578 00:29:10,980 --> 00:29:14,160 bueno, pues al sistema operativo le gusta 579 00:29:14,160 --> 00:29:16,519 llevar un registro de los procesos 580 00:29:16,519 --> 00:29:17,539 que han terminado 581 00:29:17,539 --> 00:29:20,019 por una vía correcta 582 00:29:20,019 --> 00:29:22,019 o los que han terminado porque 583 00:29:22,019 --> 00:29:24,240 ha pasado algo raro, porque ha caído un meteorito 584 00:29:24,240 --> 00:29:25,960 en el ordenador, entonces le gusta 585 00:29:25,960 --> 00:29:28,079 llevar un registro de terminación normal 586 00:29:28,079 --> 00:29:29,599 terminación anormal 587 00:29:29,599 --> 00:29:32,160 terminación controlada, terminación no 588 00:29:32,160 --> 00:29:32,779 controlada 589 00:29:32,779 --> 00:29:36,119 cuando el sistema operativo recibe un cero 590 00:29:36,119 --> 00:29:37,640 de un proceso que se ha muerto 591 00:29:37,640 --> 00:29:40,160 asume que la terminación es controlada 592 00:29:40,160 --> 00:29:42,160 no pasa nada, entonces en su tabla de registro 593 00:29:42,160 --> 00:29:43,539 de procesos registra eso 594 00:29:43,539 --> 00:29:46,259 entonces aquí la terminación 595 00:29:46,259 --> 00:29:48,059 es controlada, yo quiero que cuando 596 00:29:48,059 --> 00:29:49,400 mi programa sale por aquí 597 00:29:49,400 --> 00:29:52,279 sale porque yo lo he mandado, se lo he ordenado 598 00:29:52,279 --> 00:29:54,440 es una finalización de proceso 599 00:29:54,440 --> 00:29:55,660 controlada bajo control 600 00:29:55,660 --> 00:29:58,240 yo he mandado que este proceso termine porque la fecha 601 00:29:58,240 --> 00:29:59,099 no es válida 602 00:29:59,099 --> 00:30:13,059 Pues ya está. Y le mando el cero porque el cero significa terminación correcta. Un número diferente del cero no. ¿Vale? Bueno, pues entonces, repito. ¿Qué me permite incorporar esta sentencia? 603 00:30:13,059 --> 00:30:15,920 porque cero 604 00:30:15,920 --> 00:30:18,180 es el valor que el sistema operativo 605 00:30:18,180 --> 00:30:20,400 interpreta como terminación normal 606 00:30:20,400 --> 00:30:22,000 no terminación anormal 607 00:30:22,000 --> 00:30:24,339 porque alguien cuando está ejecutando mi programa 608 00:30:24,339 --> 00:30:26,619 pum, ha apagado el ordenador o ha hecho algo raro 609 00:30:26,619 --> 00:30:28,299 o ha abortado mi proceso 610 00:30:28,299 --> 00:30:30,440 directamente desde la ventana 611 00:30:30,440 --> 00:30:31,500 de comandos o lo que sea 612 00:30:31,500 --> 00:30:34,099 entonces, en conclusión 613 00:30:34,099 --> 00:30:35,980 no me interesa a mí ahora tanto la gestión de procesos 614 00:30:35,980 --> 00:30:38,119 que ya la estudiáis por otro lado 615 00:30:38,119 --> 00:30:40,480 sino que esta sentencia 616 00:30:40,480 --> 00:30:41,640 me permite a mí 617 00:30:41,640 --> 00:30:43,740 salir de mi programa cuando 618 00:30:43,740 --> 00:30:45,680 necesito hacerlo, pero siempre lo haré 619 00:30:45,680 --> 00:30:47,799 bajo control, aquí quiero salir 620 00:30:47,799 --> 00:30:49,779 de mi programa cuando la 621 00:30:49,779 --> 00:30:51,720 fecha no es válida, vale, pues 622 00:30:51,720 --> 00:30:53,220 ya está, entonces 623 00:30:53,220 --> 00:30:55,299 ¿qué me ha permitido esto? 624 00:30:55,880 --> 00:30:57,759 lo que me ha permitido es no tener que poner 625 00:30:57,759 --> 00:30:59,720 aquí un else y 626 00:30:59,720 --> 00:31:01,660 que mi programa empiece a 627 00:31:01,660 --> 00:31:03,700 anidarse y anidarse y quede un rollo 628 00:31:03,700 --> 00:31:05,680 entonces cuando hablamos de códigos que tienen 629 00:31:05,680 --> 00:31:07,640 muchos niveles de anidamiento 630 00:31:07,640 --> 00:31:09,940 como este que dentro del mes hay que contemplar 631 00:31:09,940 --> 00:31:11,579 y ahora si es febrero esto 632 00:31:11,579 --> 00:31:13,839 y ahora si es no sé qué, pues puedo 633 00:31:13,839 --> 00:31:15,680 ahorrarme 634 00:31:15,680 --> 00:31:17,940 indentaciones y complejidades 635 00:31:17,940 --> 00:31:19,660 en el código saliendo y ya está. 636 00:31:19,799 --> 00:31:21,940 Entonces, si yo 637 00:31:21,940 --> 00:31:23,759 llego a este punto de aquí abajo, si yo 638 00:31:23,759 --> 00:31:25,859 llego a este punto, es porque 639 00:31:25,859 --> 00:31:27,660 el mes era válido. Sí o sí. 640 00:31:27,980 --> 00:31:29,559 Porque si el mes no hubiera sido válido, 641 00:31:29,680 --> 00:31:31,420 mi programa había terminado fuera. 642 00:31:31,859 --> 00:31:33,019 Ya está. Vale. 643 00:31:33,680 --> 00:31:35,559 Pues ahora, si el mes es válido, 644 00:31:36,559 --> 00:31:37,619 ahora yo puedo hacer también la 645 00:31:37,619 --> 00:31:38,819 validación esta de aquí. 646 00:31:38,819 --> 00:31:41,799 ahora 647 00:31:41,799 --> 00:31:44,519 si el mes es válido, ahora ya sí que 648 00:31:44,519 --> 00:31:46,460 el día será 649 00:31:46,460 --> 00:31:48,440 válido o no en función de si el mes 650 00:31:48,440 --> 00:31:50,079 es de 31 o es de 30 651 00:31:50,079 --> 00:31:52,480 entonces ahora ya aquí podemos 652 00:31:52,480 --> 00:31:54,559 hacer la condición de meses 653 00:31:54,559 --> 00:31:55,779 de 31 días 654 00:31:55,779 --> 00:31:56,759 vamos a 655 00:31:56,759 --> 00:32:02,150 poner el boolean 656 00:32:02,150 --> 00:32:04,309 por ejemplo, para practicar un poco 657 00:32:04,309 --> 00:32:07,619 mes 658 00:32:07,619 --> 00:32:10,380 31 días 659 00:32:10,380 --> 00:32:11,420 pues la condición 660 00:32:11,420 --> 00:32:13,460 mes 31 días sería válida 661 00:32:13,460 --> 00:32:14,859 sería válida si 662 00:32:14,859 --> 00:32:17,559 mes es igual a 1 663 00:32:17,559 --> 00:32:18,559 o 664 00:32:18,559 --> 00:32:21,380 mes es 665 00:32:21,380 --> 00:32:22,299 igual a 3 666 00:32:22,299 --> 00:32:27,289 o mes 667 00:32:27,289 --> 00:32:29,230 es igual a 5 668 00:32:29,230 --> 00:32:32,140 o 669 00:32:32,140 --> 00:32:34,380 mes es igual a 5 670 00:32:34,380 --> 00:32:35,220 6 7 671 00:32:35,220 --> 00:32:43,369 es que agosto 8 672 00:32:43,369 --> 00:32:47,829 si se podría seguramente 673 00:32:47,829 --> 00:32:49,589 se pudiera compactar esta aplicación 674 00:32:49,589 --> 00:32:51,490 como impar 675 00:32:51,490 --> 00:32:53,410 Entre 1 y 7, pero bueno 676 00:32:53,410 --> 00:32:54,730 Que a veces que tampoco 677 00:32:54,730 --> 00:32:57,150 Compactando tampoco luego ganas tanto 678 00:32:57,150 --> 00:32:59,829 Mes es igual a 679 00:32:59,829 --> 00:33:01,210 8, 10 680 00:33:01,210 --> 00:33:05,369 Es igual a 10 681 00:33:05,369 --> 00:33:07,529 O mes es 682 00:33:07,529 --> 00:33:08,490 Igual a 12 683 00:33:08,490 --> 00:33:11,589 Vale, ¿podemos compactar 684 00:33:11,589 --> 00:33:13,650 Esto más? Pues no lo sé, habría que ver 685 00:33:13,650 --> 00:33:15,329 Impares menores que 7 686 00:33:15,329 --> 00:33:16,250 El tema es 687 00:33:16,250 --> 00:33:18,329 Impares entre 1 y 7 688 00:33:18,329 --> 00:33:21,869 O pares entre 8 y 12 689 00:33:21,869 --> 00:33:54,140 Si somos capaces de compactar eso mejor, por ejemplo, otra forma de poner esto, ya que nos ponemos, podría ser mes por ciento dos es igual a uno, luego es, o es distinto de, mes igual a dos es igual a uno, luego es impar. 690 00:33:54,140 --> 00:34:02,640 Y y mes es menor o igual que 7 691 00:34:02,640 --> 00:34:05,119 O si no, mes par 692 00:34:05,119 --> 00:34:10,079 Igual que 7 693 00:34:10,079 --> 00:34:18,170 O si no, mes par 694 00:34:18,170 --> 00:34:30,269 Vale, la condición de arriba y la de abajo 695 00:34:30,269 --> 00:34:31,750 Creo que son idénticas, ¿no? 696 00:34:33,570 --> 00:34:35,949 Es decir, estar entre estos valores 697 00:34:35,949 --> 00:34:37,909 A ver, que he borrado un doble igual 698 00:34:37,909 --> 00:34:41,409 Estar entre estos es lo mismo que decir 699 00:34:41,409 --> 00:34:45,289 ¿Eres impar menor que 7 o eres par? 700 00:34:45,389 --> 00:34:47,590 Porque estar entre 1 y 12 ya es seguro 701 00:34:47,590 --> 00:34:49,210 Porque si no habríamos salido por aquí 702 00:34:49,210 --> 00:34:50,969 Nos habríamos ido por ahí 703 00:34:50,969 --> 00:34:54,269 Con lo cual que estamos entre 1 y 12 704 00:34:54,269 --> 00:34:55,150 Está claro 705 00:34:55,150 --> 00:34:57,690 Luego como estamos entre 1 y 12 está claro 706 00:34:57,690 --> 00:34:59,670 Me da igual decir esto 707 00:34:59,670 --> 00:35:02,469 Que decir eres impar menor que 7 708 00:35:02,469 --> 00:35:03,449 O 709 00:35:03,449 --> 00:35:04,849 Eres par 710 00:35:04,849 --> 00:35:06,429 No pero ahí sería 711 00:35:06,429 --> 00:35:12,000 Sí tienes razón es verdad 712 00:35:12,000 --> 00:35:13,780 Porque o eres 713 00:35:13,780 --> 00:35:16,340 Eres impar 714 00:35:16,340 --> 00:35:16,860 No porque 715 00:35:16,860 --> 00:35:21,420 Eres impar menor que 7 716 00:35:21,420 --> 00:35:23,039 No, porque febrero es par, entonces no entraría 717 00:35:23,039 --> 00:35:25,260 Febrero no entraría aquí 718 00:35:25,260 --> 00:35:26,739 En vez de entrar, porque 719 00:35:26,739 --> 00:35:31,289 Ah, sí, sí, sí, porque es par 720 00:35:31,289 --> 00:35:32,030 Tienes razón 721 00:35:32,030 --> 00:35:34,869 Sí, sí, sí, claro 722 00:35:34,869 --> 00:35:37,829 O eres par 723 00:35:37,829 --> 00:35:39,429 O eres, no, o eres 724 00:35:39,429 --> 00:35:42,230 Eres impar 725 00:35:42,230 --> 00:35:43,849 Menor que 7 726 00:35:43,849 --> 00:35:45,949 Entonces, si no se cumple esto 727 00:35:45,949 --> 00:35:48,309 Es porque eres mayor que 728 00:35:48,309 --> 00:35:52,250 A ver, que yo también me estoy liando 729 00:35:52,250 --> 00:35:54,750 Vamos a ver