1 00:00:00,000 --> 00:00:02,120 así, vale, pues entonces 2 00:00:02,120 --> 00:00:03,560 el 5 es el 4 3 00:00:03,560 --> 00:00:05,179 pero cambiando 4 00:00:05,179 --> 00:00:08,099 este dato por un dato que me dan por 5 00:00:08,099 --> 00:00:10,140 teclado, este por otro que me dan por 6 00:00:10,140 --> 00:00:12,019 teclado y este por otro que me dan por teclado 7 00:00:12,019 --> 00:00:13,939 nada más, entonces podemos 8 00:00:13,939 --> 00:00:15,220 hacer un copia y pega 9 00:00:15,220 --> 00:00:18,100 del código del 4 para el 5 10 00:00:18,100 --> 00:00:21,600 ejercicios 11 00:00:22,620 --> 00:00:23,160 de aquí 12 00:00:23,160 --> 00:00:26,780 venga, pues me voy a hacer un 13 00:00:26,780 --> 00:00:28,960 copia y pega 14 00:00:28,960 --> 00:00:30,039 me hago un nuevo 15 00:00:30,039 --> 00:00:34,520 ejercicio 5 16 00:00:34,520 --> 00:00:40,729 y ahora me doy cuenta 17 00:00:40,729 --> 00:00:42,609 pues bueno, es la misma idea que la anterior 18 00:00:42,609 --> 00:00:44,929 entre un valor inicial y un valor 19 00:00:44,929 --> 00:00:46,850 final, mostrar todos 20 00:00:46,850 --> 00:00:48,890 los números que son múltiplos de 1 21 00:00:48,890 --> 00:00:50,390 que he pedido por teclado 22 00:00:50,390 --> 00:00:52,450 no de 1, sino de 1 que he pedido por teclado 23 00:00:52,450 --> 00:00:53,929 vale 24 00:00:53,929 --> 00:00:56,770 pues reutilizo código, o sea, reutilizar 25 00:00:56,770 --> 00:00:57,270 código 26 00:00:57,270 --> 00:01:00,770 nos viene muy bien, siempre que se puede 27 00:01:00,770 --> 00:01:02,689 reutilizar código con criterio 28 00:01:02,689 --> 00:01:04,829 claro, con criterio y con sentido 29 00:01:04,829 --> 00:01:06,109 va a 1 y lo reutiliza 30 00:01:06,109 --> 00:01:08,870 pero esta modificación 31 00:01:08,870 --> 00:01:10,409 repito, exige que 32 00:01:10,409 --> 00:01:11,829 el valor inicial 33 00:01:11,829 --> 00:01:13,609 no es 1 34 00:01:13,609 --> 00:01:16,849 el valor final no es 100 35 00:01:16,849 --> 00:01:18,810 y el numerito del que yo 36 00:01:18,810 --> 00:01:20,709 miro si son múltiplos o no, no es 7 37 00:01:20,709 --> 00:01:22,709 todos van a depender 38 00:01:22,709 --> 00:01:24,450 de un valor 39 00:01:24,450 --> 00:01:26,989 que yo pido previamente 40 00:01:26,989 --> 00:01:27,670 por teclado 41 00:01:27,670 --> 00:01:30,810 pues entonces como en este caso si que pido los datos 42 00:01:30,810 --> 00:01:31,629 por teclado 43 00:01:31,629 --> 00:01:34,409 Pues hago esto 44 00:01:34,409 --> 00:01:34,950 Y 45 00:01:34,950 --> 00:01:42,519 Número inicial 46 00:01:42,519 --> 00:01:44,879 Y lo leo 47 00:01:44,879 --> 00:01:54,560 Número 48 00:01:54,560 --> 00:01:55,319 Final 49 00:01:55,319 --> 00:02:02,799 Y lo leo 50 00:02:02,799 --> 00:02:04,120 Y ahora 51 00:02:04,120 --> 00:02:07,079 Valor del cual tengo que comprobar 52 00:02:07,079 --> 00:02:08,580 Si es múltiplo o no 53 00:02:08,580 --> 00:02:11,319 Pues yo que sé 54 00:02:11,319 --> 00:02:12,319 Da igual como lo llame 55 00:02:12,319 --> 00:02:17,110 Pues llamémosle 56 00:02:17,110 --> 00:02:19,189 n, por ejemplo 57 00:02:19,189 --> 00:02:21,250 nombres muy feos pero cortitos 58 00:02:21,250 --> 00:02:23,530 vale, pues entonces ahora ya 59 00:02:23,530 --> 00:02:25,210 ahora ya 60 00:02:25,210 --> 00:02:27,849 bueno, le voy a llamar num 61 00:02:27,849 --> 00:02:29,409 para no tener que cambiar la variable de abajo 62 00:02:29,409 --> 00:02:31,969 vale, entonces ahora, el problema es el mismo 63 00:02:31,969 --> 00:02:33,669 yo tengo que contar 64 00:02:33,669 --> 00:02:35,969 luego un bucle con un contador que empieza valiendo 65 00:02:35,969 --> 00:02:37,090 cero y se va incrementando 66 00:02:37,090 --> 00:02:39,169 ¿qué cuento? numeritos 67 00:02:39,169 --> 00:02:41,530 pues una variable n para esos numeritos 68 00:02:41,530 --> 00:02:43,189 esos numeritos 69 00:02:43,189 --> 00:02:45,990 ¿por dónde se van desplazando para que yo los vaya 70 00:02:45,990 --> 00:02:47,969 contando, se van desplazando 71 00:02:47,969 --> 00:02:49,169 desde n1 72 00:02:49,169 --> 00:02:52,129 luego lo inicializo 73 00:02:52,129 --> 00:02:54,110 con n1 y se va 74 00:02:54,110 --> 00:02:55,469 desplazando con n++ 75 00:02:55,469 --> 00:02:57,210 se va desplazando con n++ 76 00:02:57,210 --> 00:02:59,969 mientras sea menor 77 00:02:59,969 --> 00:03:00,909 o igual que n2 78 00:03:00,909 --> 00:03:04,110 pues ahora ya tengo estos numeritos 79 00:03:04,110 --> 00:03:05,629 n que empieza siendo n1 80 00:03:05,629 --> 00:03:08,050 se va desplazando de 1 en 1 hasta llegar 81 00:03:08,050 --> 00:03:09,990 a n2 y con cada uno 82 00:03:09,990 --> 00:03:11,949 de ellos ¿qué hago? mirar a ver si es múltiplo 83 00:03:11,949 --> 00:03:14,150 del que me han dado y si es múltiplo 84 00:03:14,150 --> 00:03:15,349 del que me han dado lo cuento 85 00:03:15,349 --> 00:03:18,150 y ya está, el mismo ejercicio de antes 86 00:03:18,150 --> 00:03:20,530 pero cambiando el valor inicial 87 00:03:20,530 --> 00:03:21,909 y el valor final 88 00:03:21,909 --> 00:03:23,669 de mi recorrido de números 89 00:03:23,669 --> 00:03:26,370 y variando 90 00:03:26,370 --> 00:03:28,189 el valor del cual compruebo 91 00:03:28,189 --> 00:03:28,949 si es múltiplo 92 00:03:28,949 --> 00:03:32,050 bueno, pues el 5 es el 93 00:03:32,050 --> 00:03:33,150 ya está, es el mismo 94 00:03:33,150 --> 00:03:39,849 ¿entendido? 95 00:03:42,689 --> 00:03:43,370 ¿si o no? 96 00:03:45,710 --> 00:03:46,189 pues 97 00:03:46,189 --> 00:03:51,110 el anterior si está entendido 98 00:03:51,110 --> 00:03:55,900 n1 es el valor 99 00:03:55,900 --> 00:03:57,039 si a ti te dicen 100 00:03:57,039 --> 00:03:59,340 cuéntame todos los múltiplos de 3 101 00:03:59,340 --> 00:04:00,960 entre 5 y 12 102 00:04:00,960 --> 00:04:03,939 n1 es 5, que es del que empiezas 103 00:04:03,939 --> 00:04:06,280 n2 es 12, que es en el que acabas 104 00:04:06,280 --> 00:04:07,979 y 105 00:04:07,979 --> 00:04:10,139 el 5 106 00:04:10,139 --> 00:04:10,960 es el múltiplo 107 00:04:10,960 --> 00:04:13,060 el valor del que ves si es múltiplo 108 00:04:13,060 --> 00:04:15,680 n1 es un valor fijo, es el que te han dado 109 00:04:15,680 --> 00:04:17,660 del que empiezas, yo empiezo en 7 110 00:04:17,660 --> 00:04:19,759 n2 es otro valor fijo 111 00:04:19,759 --> 00:04:21,899 el que te han dado que es en el que acabas 112 00:04:21,899 --> 00:04:23,079 acabo en 20 113 00:04:23,079 --> 00:04:25,319 n1 y n2 son fijos, te los han dado 114 00:04:25,319 --> 00:04:27,459 empiezo en n1 y acabo en n2 115 00:04:27,459 --> 00:04:31,120 n es el que va variando desde n1 hasta n2 116 00:04:31,120 --> 00:04:36,310 y para cada n que va variando 117 00:04:36,310 --> 00:04:37,889 desde n1 hasta n2 118 00:04:37,889 --> 00:04:39,089 porque lo voy incrementando aquí 119 00:04:39,089 --> 00:04:41,670 pues para cada uno de ellos 120 00:04:41,670 --> 00:04:42,589 compruebo la condición 121 00:04:42,589 --> 00:04:45,009 si se cumple, cuento, incremento mi cuenta 122 00:04:45,009 --> 00:04:46,889 toca contar ese, toca contar 123 00:04:46,889 --> 00:04:56,759 vale, vamos a hacer algo más de 124 00:04:56,759 --> 00:05:00,480 contar para que 125 00:05:00,480 --> 00:05:09,680 Claro, a ver, si siento esto 126 00:05:09,680 --> 00:05:12,100 no es que no funcione 127 00:05:12,100 --> 00:05:13,319 habría que ver qué hace 128 00:05:13,319 --> 00:05:16,439 lo que hace es, si n1 es mayor que n2 129 00:05:16,439 --> 00:05:18,100 no entra en el bucle nunca 130 00:05:18,100 --> 00:05:19,800 con lo cual la cuenta 131 00:05:19,800 --> 00:05:22,600 al no entrar nunca en el bucle 132 00:05:22,600 --> 00:05:23,579 cont 133 00:05:23,579 --> 00:05:25,879 no cambia nunca de valor, acaba siendo 0 134 00:05:25,879 --> 00:05:27,339 y podría estar bien 135 00:05:27,339 --> 00:05:29,740 porque entre 7 y 2 136 00:05:29,740 --> 00:05:32,600 no hay múltiplos porque es que ya te has pasado 137 00:05:32,600 --> 00:05:34,879 ¿vale? otra cosa es que te dijeran 138 00:05:34,879 --> 00:05:36,540 si el n1 es mayor que n2 139 00:05:36,540 --> 00:05:37,740 intercambia los de valor 140 00:05:37,740 --> 00:05:40,699 pero eso lo dejamos para otro ejercicio 141 00:05:40,699 --> 00:05:41,899 que hay por ahí más abajo ¿vale? 142 00:05:46,079 --> 00:05:48,300 si el número, si n es mayor que n2 143 00:05:48,300 --> 00:05:48,639 bueno 144 00:05:48,639 --> 00:05:49,620 si 145 00:05:49,620 --> 00:05:54,339 n1 es mayor que n2 146 00:05:54,339 --> 00:05:56,100 entonces lo que harías 147 00:05:56,100 --> 00:05:58,579 es iniciar n con n2 148 00:05:58,579 --> 00:06:00,279 y ahora que el 149 00:06:00,279 --> 00:06:01,540 límite superior fuera n1 150 00:06:01,540 --> 00:06:02,980 ¿vale? 151 00:06:03,100 --> 00:06:05,060 Claro, le das la vuelta 152 00:06:05,060 --> 00:06:07,720 Y el valor que le das a n 153 00:06:07,720 --> 00:06:09,259 Al principio que fuera n2 154 00:06:09,259 --> 00:06:10,240 Porque es el más pequeño 155 00:06:10,240 --> 00:06:12,199 Y luego ya este bucle 156 00:06:12,199 --> 00:06:14,139 Se incrementa hasta n1 157 00:06:14,139 --> 00:06:15,980 Pero bueno, ahora mismo 158 00:06:15,980 --> 00:06:19,160 Puedes darle otro valor 159 00:06:19,160 --> 00:06:20,220 Puedo darle 160 00:06:20,220 --> 00:06:23,519 A ver, vamos a suponer que yo le doy 161 00:06:23,519 --> 00:06:25,500 El número inicial 3 162 00:06:25,500 --> 00:06:27,500 El número final 10 163 00:06:27,500 --> 00:06:30,100 ¿Cuántos múltiplos de 5 hay? 164 00:06:30,100 --> 00:06:31,579 Que me tiene que dar 2 165 00:06:31,579 --> 00:06:33,860 2, el 5 y el 10 166 00:06:33,860 --> 00:06:43,019 Vale, vamos a hacer otro 167 00:06:43,019 --> 00:06:44,100 Aunque no está en el listado 168 00:06:44,100 --> 00:06:46,939 Para que esto de las cuentas y todo esto quede claro 169 00:06:46,939 --> 00:06:49,019 Lo voy a llamar 170 00:06:49,019 --> 00:06:51,199 Ejercicio 5 y medio 171 00:06:51,199 --> 00:06:59,089 Porque me lo acabo de inventar 172 00:06:59,089 --> 00:07:00,250 Y está entre el 5 y el 6 173 00:07:00,250 --> 00:07:08,850 Ejercicio que me acabo de inventar ahora mismo 174 00:07:08,850 --> 00:07:15,370 Para antes de pasar a lo de las sumas, pues asegurarnos, como os veo a lo mejor un poco dudosos, de que esto lo habéis entendido. 175 00:07:15,370 --> 00:08:04,709 Por ejemplo, vamos a hacer ahora otra versión. Programa que recibe un valor, el total de esos comprendidos entre 1 y ese valor, cuya decena es 4. 176 00:08:04,709 --> 00:08:16,829 Por ejemplo, el programa que solicita un número tiene que mostrar cuántos números comprendidos entre 1 y ese número tienen como decena la cifra 4. 177 00:08:20,740 --> 00:08:26,160 Venga, pues haced esto en 2-3 minutillos y ahora lo corregimos. 178 00:08:27,240 --> 00:08:28,319 ¿Por qué os reís? 179 00:08:29,560 --> 00:08:31,800 Si es lo mismo de siempre, pero cambiando la condición. 180 00:08:32,039 --> 00:08:33,679 Es para asegurarnos que lo de la... 181 00:08:35,620 --> 00:08:37,360 Vale, pues otra vez estamos en las mismas. 182 00:08:37,679 --> 00:08:41,580 Ya está 183 00:08:41,580 --> 00:08:44,019 Vale, pues otra vez estamos en las mismas 184 00:08:44,019 --> 00:08:45,019 Estamos contando 185 00:08:45,019 --> 00:08:48,360 Pues un contador que empieza valiendo cero y se irá incrementando 186 00:08:48,360 --> 00:08:49,799 En las mismas, vale, espera, bueno 187 00:08:49,799 --> 00:08:50,740 Voy a borrar esto 188 00:08:50,740 --> 00:08:57,580 Muestra el total 189 00:08:57,580 --> 00:09:00,539 De los números comprendidos entre uno y ese número 190 00:09:00,539 --> 00:09:01,340 Muestra el total 191 00:09:01,340 --> 00:09:03,000 Vale 192 00:09:03,000 --> 00:09:05,799 Bueno, da igual, sí, da lo mismo 193 00:09:05,799 --> 00:09:07,399 Vale, entonces 194 00:09:07,399 --> 00:09:13,210 bueno, pues al final vuelve a ser esto 195 00:09:13,210 --> 00:09:16,629 vuelve a ser esto 196 00:09:16,629 --> 00:09:18,590 yo leo un numerito 197 00:09:18,590 --> 00:09:19,590 n1 198 00:09:19,590 --> 00:09:22,450 y ahora partiendo desde 1 199 00:09:22,450 --> 00:09:25,110 mientras n sea menor o igual que n1 200 00:09:25,110 --> 00:09:27,409 y este numerito se irá incrementando 201 00:09:27,409 --> 00:09:29,049 pues partiendo desde 1 202 00:09:29,049 --> 00:09:30,409 hasta el final tendré que ver 203 00:09:30,409 --> 00:09:31,490 este número n 204 00:09:31,490 --> 00:09:33,950 si me cumple la condición 205 00:09:33,950 --> 00:09:36,350 de decenas igual a 4 o no me la cumple 206 00:09:36,350 --> 00:09:38,429 porque si me cumple esa condición 207 00:09:38,429 --> 00:09:39,389 le cuento y si no, no 208 00:09:39,389 --> 00:09:41,470 Luego vuelve a ser el mismo rollo de siempre 209 00:09:41,470 --> 00:09:42,909 ¿No? El mismo rollo 210 00:09:42,909 --> 00:09:44,389 Ahora el tema es la condición 211 00:09:44,389 --> 00:09:46,389 La condición aquí será 212 00:09:46,389 --> 00:09:48,710 Que la decena de n 213 00:09:48,710 --> 00:09:51,129 Sea igual a 4 214 00:09:51,129 --> 00:09:53,090 Entonces la decena 215 00:09:53,090 --> 00:09:55,269 La podéis haber sacado así ¿Verdad? 216 00:09:56,110 --> 00:09:56,889 In decenas 217 00:09:56,889 --> 00:09:59,850 Es decir, si dividís el numerito 218 00:09:59,850 --> 00:10:01,870 Entre 10 219 00:10:01,870 --> 00:10:03,610 Pues te va a quedar 220 00:10:03,610 --> 00:10:05,070 Toda la parte que no es las unidades 221 00:10:05,070 --> 00:10:07,230 315 te queda 31 222 00:10:07,230 --> 00:10:09,330 2312 223 00:10:09,330 --> 00:10:10,809 te queda 224 00:10:10,809 --> 00:10:13,289 231, vale 225 00:10:13,289 --> 00:10:15,169 pero queremos quedarnos con las unidades 226 00:10:15,169 --> 00:10:17,289 de esa otra parte, entonces nos queda 227 00:10:17,289 --> 00:10:18,549 todavía hacer esto 228 00:10:18,549 --> 00:10:21,309 entonces esto sí que serían las decenas 229 00:10:21,309 --> 00:10:23,009 entonces ahora 230 00:10:23,009 --> 00:10:24,370 si uno hace esto 231 00:10:24,370 --> 00:10:26,090 vale 232 00:10:26,090 --> 00:10:31,519 vale 233 00:10:31,519 --> 00:10:33,059 entonces 234 00:10:33,059 --> 00:10:36,000 ya está, vale 235 00:10:36,000 --> 00:10:38,539 ya está, entonces 236 00:10:38,539 --> 00:10:40,259 si el número es menor de 10 237 00:10:40,259 --> 00:10:42,639 ya sabemos que es imposible 238 00:10:42,639 --> 00:10:44,440 que tenga las decenas cuatro. Entonces, 239 00:10:44,539 --> 00:10:46,659 podríamos haber sido listo, habernos adelantado 240 00:10:46,659 --> 00:10:48,700 y haber dicho, hombre, ¿para qué voy a partir 241 00:10:48,700 --> 00:10:50,659 desde el uno? Si desde el uno hasta 242 00:10:50,659 --> 00:10:52,740 el cuarenta no va a contar 243 00:10:52,740 --> 00:10:54,100 ninguno, ¿no? 244 00:10:55,720 --> 00:10:56,679 ¿Vale? Entonces, ¿para 245 00:10:56,679 --> 00:10:58,120 qué voy a empezar desde el uno? Entonces, 246 00:10:59,440 --> 00:11:00,700 uno podría haber dicho, hombre, voy a 247 00:11:00,700 --> 00:11:02,659 empezar ya en el cuarenta directamente, voy a empezar 248 00:11:02,659 --> 00:11:04,580 en el cuarenta porque ese va a ser el primero que 249 00:11:04,580 --> 00:11:06,620 cuente, los demás no. Eso por un lado, 250 00:11:06,700 --> 00:11:08,700 ¿verdad? Vale, pero a ver, 251 00:11:09,620 --> 00:11:10,440 imaginaos 252 00:11:10,440 --> 00:11:12,279 que habéis sacado 253 00:11:12,279 --> 00:11:14,639 La decena de otra manera 254 00:11:14,639 --> 00:11:16,779 A lo mejor 255 00:11:16,779 --> 00:11:18,320 Nos han pedido otra cosa 256 00:11:18,320 --> 00:11:20,139 No las decenas, sino otro numerito 257 00:11:20,139 --> 00:11:22,779 Bueno, pues nosotros con los char y string 258 00:11:22,779 --> 00:11:24,000 Esos que tanto gustan 259 00:11:24,000 --> 00:11:26,240 Podríamos haber dicho, voy a sacarlo 260 00:11:26,240 --> 00:11:28,919 Como la cifra de decenas, lo paso a string 261 00:11:28,919 --> 00:11:31,000 Y me quedo con el char que está en la posición 262 00:11:31,000 --> 00:11:31,679 De las decenas 263 00:11:31,679 --> 00:11:34,139 Sí, por favor 264 00:11:34,139 --> 00:11:35,879 Vale, pues entonces 265 00:11:35,879 --> 00:11:38,039 Este numerito 266 00:11:38,039 --> 00:11:40,000 Número en string 267 00:11:40,000 --> 00:11:43,019 No 268 00:11:43,019 --> 00:11:45,480 No, lo que quiero es que 269 00:11:45,480 --> 00:11:49,019 Que sepáis 270 00:11:49,019 --> 00:11:51,419 Que no, lo que quiero es que 271 00:11:51,419 --> 00:11:53,740 Que no 272 00:11:53,740 --> 00:11:55,440 Que ya me dijisteis el otro día 273 00:11:55,440 --> 00:11:57,279 Que había sido todo cadenas 274 00:11:57,279 --> 00:11:59,120 Y ya dije que es verdad 275 00:11:59,120 --> 00:12:00,740 Que lo tenía en cuenta, pero hombre 276 00:12:00,740 --> 00:12:02,059 Lo que estoy haciendo es 277 00:12:02,059 --> 00:12:03,919 Miles de posibilidades 278 00:12:03,919 --> 00:12:07,360 Vale, pues entonces vamos a imaginar que queremos sacar la cifra de la decena 279 00:12:07,360 --> 00:12:07,980 De otra manera 280 00:12:07,980 --> 00:12:13,100 Entonces, ya sabemos que esto siempre es una forma fácil 281 00:12:13,100 --> 00:12:17,960 ¿Verdad? De convertir un número entero a su versión stream 282 00:12:17,960 --> 00:12:24,980 Vale, entonces, si yo me quiero quedar con la cifra de las decenas 283 00:12:24,980 --> 00:12:28,659 Ese será una posición, ¿verdad? 284 00:12:29,440 --> 00:12:31,720 Será ncadena.charat 285 00:12:31,720 --> 00:12:34,259 Y ahora, mi pregunta 286 00:12:34,259 --> 00:12:37,379 ¿Qué posición son las de las decenas? 287 00:12:39,299 --> 00:12:53,840 A ver, si tú tienes escrito 288 00:12:53,840 --> 00:12:56,620 327 289 00:12:56,620 --> 00:12:57,899 la 0 es el 3 290 00:12:57,899 --> 00:12:59,179 la 1 es el 2 291 00:12:59,179 --> 00:13:01,039 la 2 es el 7 292 00:13:01,039 --> 00:13:03,519 Si tienes 1512 293 00:13:03,519 --> 00:13:05,360 la 0 es la 1 294 00:13:05,360 --> 00:13:06,960 la 1 es el 5 295 00:13:06,960 --> 00:13:09,120 no hay ninguna forma de leer desde la derecha 296 00:13:09,120 --> 00:13:11,080 entonces 297 00:13:11,080 --> 00:13:12,879 la posición depende 298 00:13:12,879 --> 00:13:15,720 pero hombre, no recordáis 299 00:13:15,720 --> 00:13:16,960 el método 300 00:13:16,960 --> 00:13:18,080 LENZ 301 00:13:18,080 --> 00:13:21,440 voy a ponerlo aparte, no metido dentro 302 00:13:21,440 --> 00:13:22,559 para que se vea 303 00:13:22,559 --> 00:13:36,269 este método te devolvía 304 00:13:36,269 --> 00:13:37,990 la cantidad de caracteres que tiene 305 00:13:37,990 --> 00:13:40,549 nosotros sabemos que es el penúltimo 306 00:13:40,549 --> 00:13:41,909 siempre, ¿va a ser el penúltimo? 307 00:13:42,509 --> 00:13:43,610 pues entonces 308 00:13:43,610 --> 00:13:45,269 ¿cuál va a ser la última? 309 00:13:45,929 --> 00:13:47,730 tan menos uno, porque si tiene 310 00:13:47,730 --> 00:13:49,669 tan de tamaño, os tiran 311 00:13:49,669 --> 00:13:51,509 entre 0 y tan menos 1. 312 00:13:52,009 --> 00:13:53,549 ¿Verdad? Es decir, si tiene 313 00:13:53,549 --> 00:13:55,549 4, las posiciones van 314 00:13:55,549 --> 00:13:57,529 de 0 a 3. Si tiene 315 00:13:57,529 --> 00:13:59,529 7 caracteres, las posiciones van 316 00:13:59,529 --> 00:14:00,289 de 0 a 6. 317 00:14:01,529 --> 00:14:03,529 Si tiene 12 caracteres, las posiciones 318 00:14:03,529 --> 00:14:05,669 van de 0 a 11. 319 00:14:06,389 --> 00:14:07,509 Luego, si 320 00:14:07,509 --> 00:14:09,529 tiene tan, o como 321 00:14:09,529 --> 00:14:11,570 lo queramos llamar, las posiciones 322 00:14:11,570 --> 00:14:12,870 van de 0 a tan menos 1. 323 00:14:13,529 --> 00:14:15,289 Y como me quiero quedar no con la última, 324 00:14:15,409 --> 00:14:17,490 que la última es tan menos 1, sino con la penúltima, 325 00:14:17,730 --> 00:14:19,129 Pues entonces era esta. 326 00:14:23,019 --> 00:14:23,620 ¿Vale? 327 00:14:23,759 --> 00:14:26,120 Entonces esta es la cifra de las decenas en char. 328 00:14:28,059 --> 00:14:32,379 Y ahora yo ya la puedo comparar con el carácter 4. 329 00:14:33,340 --> 00:14:34,019 Y es lo mismo. 330 00:14:36,279 --> 00:14:36,879 ¿Vale? 331 00:14:36,879 --> 00:14:41,299 La diferencia es que aquí me vale tanto para si el número es negativo o positivo. 332 00:14:41,919 --> 00:14:42,620 Me vale igual. 333 00:14:43,440 --> 00:14:46,399 Me vale exactamente igual si el número es negativo o positivo. 334 00:14:46,399 --> 00:14:49,740 claro, porque si me han dicho 335 00:14:49,740 --> 00:14:51,519 el menos 320 336 00:14:51,519 --> 00:14:53,899 pues la penúltima 337 00:14:53,899 --> 00:14:55,740 es esta, si me han dicho 338 00:14:55,740 --> 00:14:57,940 el 712, la penúltima es esta 339 00:14:57,940 --> 00:15:00,019 yo me estoy quedando con la penúltima 340 00:15:00,019 --> 00:15:01,940 la última es la del tamaño menos 1 341 00:15:01,940 --> 00:15:03,740 porque la primera es 0 342 00:15:03,740 --> 00:15:04,740 y el total es el tamaño 343 00:15:04,740 --> 00:15:08,039 la penúltima será la del tamaño menos 2 344 00:15:08,039 --> 00:15:10,039 independientemente de que empiece por menos o no 345 00:15:10,039 --> 00:15:12,059 sin embargo, en la otra versión 346 00:15:12,059 --> 00:15:14,039 si el número es negativo, la cifra de versiones 347 00:15:14,039 --> 00:15:15,720 me da negativa, entonces tengo que 348 00:15:15,720 --> 00:15:17,399 preocuparme de multiplicarla 349 00:15:17,399 --> 00:15:19,639 por menos uno o sacar el valor 350 00:15:19,639 --> 00:15:21,559 absoluto con alguna función 351 00:15:21,559 --> 00:15:23,000 matemática o lo que sea. 352 00:15:23,759 --> 00:15:25,779 ¿Vale? Sin embargo, así, pues me preocupo 353 00:15:25,779 --> 00:15:27,659 de si es negativo. Sí, pero 354 00:15:27,659 --> 00:15:29,799 como todavía no usamos funciones. 355 00:15:30,399 --> 00:15:31,539 Si le vas sumando uno, 356 00:15:31,620 --> 00:15:32,600 nos diría, por ejemplo, 357 00:15:33,360 --> 00:15:35,600 decenas de lo que se echa más 358 00:15:35,600 --> 00:15:36,039 para abajo. 359 00:15:36,440 --> 00:15:36,919 ¿Por qué? 360 00:15:37,320 --> 00:15:41,779 A ver, le estoy sumando 361 00:15:41,779 --> 00:15:43,659 uno al numerito, entonces desde uno 362 00:15:43,659 --> 00:15:45,500 cada vez el numerito es uno el que sea. 363 00:15:45,720 --> 00:15:47,659 Y sobre ese, ya busco las decenas. 364 00:15:49,259 --> 00:15:51,220 Vale, pues esta versión os gusta 365 00:15:51,220 --> 00:15:52,039 y está muy bien, ¿vale? 366 00:15:52,080 --> 00:15:54,100 Porque como os gustan mucho los stream, 367 00:15:54,740 --> 00:15:56,220 pues como os ha gustado tanto, 368 00:15:56,379 --> 00:15:58,179 vamos a ejecutarla. 369 00:15:59,120 --> 00:16:01,259 No, pero entendéis... 370 00:16:01,259 --> 00:16:03,759 A ver, no os hagáis lío con lo de las longitudes. 371 00:16:04,539 --> 00:16:05,960 Este es el tamaño de la cadena. 372 00:16:06,779 --> 00:16:08,659 Las posiciones, por tanto, van de esta 373 00:16:08,659 --> 00:16:10,100 hasta uno menos esa. 374 00:16:10,620 --> 00:16:12,460 Y ya está, y no hay más historia aquí. 375 00:16:13,399 --> 00:16:14,919 Vale, pues como os ha gustado tanto, 376 00:16:14,919 --> 00:16:15,860 Vamos a ejecutar esto 377 00:16:15,860 --> 00:16:18,899 Venga, vamos a ver cuántos hay entre 378 00:16:18,899 --> 00:16:20,500 Este y 78 379 00:16:20,500 --> 00:16:23,240 Terrible 380 00:16:23,240 --> 00:16:25,419 Esto es lo peor que nos puede pasar 381 00:16:25,419 --> 00:16:26,659 Cuando hacemos un programa 382 00:16:26,659 --> 00:16:29,820 Los errores de compilación están estupendos 383 00:16:29,820 --> 00:16:31,419 Porque salen cuando todavía yo no he entrado 384 00:16:31,419 --> 00:16:32,220 A ejecutar nada 385 00:16:32,220 --> 00:16:34,700 Entonces me aparecen aquí, los arreglo y se acabó 386 00:16:34,700 --> 00:16:36,940 Esos aparecen cuando yo ya he entregado mi programa 387 00:16:36,940 --> 00:16:38,100 Y ya me creo que está todo hecho 388 00:16:38,100 --> 00:16:39,940 Lo peor que te puede pasar es un pantalla 389 00:16:39,940 --> 00:16:42,220 Bueno, ya, claro 390 00:16:42,220 --> 00:16:44,200 pero eso siempre puedes decir que no 391 00:16:44,200 --> 00:16:45,899 estaba en tu mano, que no depende de ti, esto 392 00:16:45,899 --> 00:16:47,899 lo has hecho tú, vale 393 00:16:47,899 --> 00:16:50,159 o sea, mi programa está fatal 394 00:16:50,159 --> 00:16:52,299 porque ha dado error de ejecución, que es lo peor del mundo 395 00:16:52,299 --> 00:16:54,299 vale, bueno, pues vamos 396 00:16:54,299 --> 00:16:56,100 a ver donde ha dado el error de ejecución 397 00:16:56,100 --> 00:16:56,639 me dice 398 00:16:56,639 --> 00:17:00,299 string index out of 399 00:17:00,299 --> 00:17:01,080 bound exception 400 00:17:01,080 --> 00:17:04,059 ya lo tenías tú claro 401 00:17:04,059 --> 00:17:06,339 vale, esto tiene mucho significado 402 00:17:06,339 --> 00:17:08,440 de hecho, ya sabemos lo que significa 403 00:17:08,440 --> 00:17:09,460 ¿qué nos está diciendo? 404 00:17:09,460 --> 00:17:12,480 cuidado que te has salido de las fronteras 405 00:17:12,480 --> 00:17:14,220 del string, eso es lo que nos dice 406 00:17:14,220 --> 00:17:15,799 ¿no? bound es 407 00:17:15,799 --> 00:17:18,180 límite, frontera, te has salido de la 408 00:17:18,180 --> 00:17:19,759 frontera, pero ¿cómo me puedo haber salido? 409 00:17:20,220 --> 00:17:21,980 si yo estoy yéndome a la penúltima 410 00:17:21,980 --> 00:17:23,859 claro, pero es que cuando 411 00:17:23,859 --> 00:17:26,299 las cifras, los numeritos tienen una cifra 412 00:17:26,299 --> 00:17:28,420 solo hay penúltima, pues no hay 413 00:17:28,420 --> 00:17:30,119 entonces ese ha sido 414 00:17:30,119 --> 00:17:31,900 mi problema, que yo aquí 415 00:17:31,900 --> 00:17:33,039 en mi programa 416 00:17:33,039 --> 00:17:36,000 cada vez que se ejecute esto 417 00:17:36,000 --> 00:17:37,900 cuando mi numerito está entre 418 00:17:37,900 --> 00:17:39,339 1 y 9 419 00:17:39,339 --> 00:17:42,140 me va a dar un pum, te ha salido 420 00:17:42,140 --> 00:17:43,880 porque ahí no hay cifra penúltima 421 00:17:43,880 --> 00:17:46,319 pero claro 422 00:17:46,319 --> 00:17:47,720 entonces aquí 423 00:17:47,720 --> 00:17:49,819 esto ideal para el caso 424 00:17:49,819 --> 00:17:51,980 más general, pues lo meteríamos 425 00:17:51,980 --> 00:17:54,000 en un if, si la longitud 426 00:17:54,000 --> 00:17:55,759 es mayor o igual que 2 427 00:17:55,759 --> 00:17:56,900 entonces esto tiene sentido 428 00:17:56,900 --> 00:17:59,440 si no es mayor o igual que 2 429 00:17:59,440 --> 00:18:02,019 pues en ese caso es que la cifra de las decenas 430 00:18:02,019 --> 00:18:03,960 ni existe, no la contaría 431 00:18:03,960 --> 00:18:05,740 entonces ni incremento contador ni nada 432 00:18:05,740 --> 00:18:07,799 de hecho es casi más cómodo 433 00:18:07,799 --> 00:18:09,819 que ya de hecho diga, oye, es que voy a 434 00:18:09,819 --> 00:18:10,940 empezar ya con el 40 435 00:18:10,940 --> 00:18:13,539 en lugar de empezar con el 1 436 00:18:13,539 --> 00:18:14,880 como del 1 al 39 437 00:18:14,880 --> 00:18:17,579 sé seguro que no los va a contar 438 00:18:17,579 --> 00:18:20,039 no los va a contar, pues voy a empezar ya con el 40 439 00:18:20,039 --> 00:18:21,779 empiezas con el 40 440 00:18:21,779 --> 00:18:23,980 y ya sí que con total 441 00:18:23,980 --> 00:18:24,599 seguridad 442 00:18:24,599 --> 00:18:27,420 el tamaño va 443 00:18:27,420 --> 00:18:28,880 o sea, esto no se va a salir 444 00:18:28,880 --> 00:18:31,779 porque a partir del 40 siempre hay una penúltima 445 00:18:31,779 --> 00:18:33,680 ¿vale? entonces ahora 446 00:18:33,680 --> 00:18:34,920 con la misma ejecución 447 00:18:34,920 --> 00:18:39,450 pues hay 10, claro 448 00:18:39,450 --> 00:18:42,109 del 40 al 49 449 00:18:42,109 --> 00:18:43,930 lógicamente, es que no hacía falta 450 00:18:43,930 --> 00:18:44,769 hacer un programa para esto 451 00:18:44,769 --> 00:18:48,210 otra cosa 452 00:18:48,210 --> 00:18:54,190 vale, pero bueno 453 00:18:54,190 --> 00:18:55,430 lo que yo quería con esto es 454 00:18:55,430 --> 00:18:57,369 seguir haciendo cuentas 455 00:18:57,369 --> 00:18:59,250 y hombre, que le perdierais el miedo 456 00:18:59,250 --> 00:19:02,049 a los stream, los métodos de las cadenas 457 00:19:02,049 --> 00:19:02,769 y lo echaríais 458 00:19:02,769 --> 00:19:08,009 ¿bajaréis para acá? 459 00:19:12,230 --> 00:19:32,549 Vale. Entonces, cuidado por lo de siempre. Si uno le quita aquí las comillas simples, el compilador no se entera. Pero entonces no estáis comparando decenas con el numerito 4. Estáis comparando decenas con el carácter que en la tabla ASTI corresponde al 4 y es a saber cuál es. 460 00:19:32,549 --> 00:19:34,369 ¿Entendéis, no? 461 00:19:34,369 --> 00:19:35,869 La diferencia tan gigante, enorme 462 00:19:35,869 --> 00:19:38,170 Que hay entre ponerlo así y así 463 00:19:38,170 --> 00:19:40,109 También podrías poner el numerito del 4 464 00:19:40,109 --> 00:19:42,150 Eso sí 465 00:19:42,150 --> 00:19:44,170 Podría irme a la tabla ASCII y ver el 4 466 00:19:44,170 --> 00:19:45,329 A qué número entero corresponde 467 00:19:45,329 --> 00:19:47,369 Sí, exactamente igual 468 00:19:47,369 --> 00:19:51,230 ¿Vale? Pero aquí 469 00:19:51,230 --> 00:19:53,269 Si yo quito las comillas 470 00:19:53,269 --> 00:19:54,430 Estás diciendo 471 00:19:54,430 --> 00:19:57,069 El char ASCII colocado en la tabla 472 00:19:57,069 --> 00:19:58,930 En la posición 4, que a saber cuál será 473 00:19:58,930 --> 00:20:00,529 Pues creo que es una estrellita 474 00:20:00,529 --> 00:20:03,210 Pues me estará contando cuántas estrellitas hay 475 00:20:03,210 --> 00:20:04,609 Entre uno y no sé cuántos, ninguna 476 00:20:04,609 --> 00:20:09,480 Así que esto, no, muy mal 477 00:20:09,480 --> 00:20:10,900 Es un rombo 478 00:20:10,900 --> 00:20:15,490 Que es un rombo 479 00:20:15,490 --> 00:20:15,849 El cuatro 480 00:20:15,849 --> 00:20:17,430 Ah 481 00:20:17,430 --> 00:20:20,029 Vale, pues no hay rombos 482 00:20:20,029 --> 00:20:22,109 Venga, pues ahora 483 00:20:22,109 --> 00:20:24,569 Ahora ya sí que sí, hemos hecho el cinco y medio 484 00:20:24,569 --> 00:20:26,750 Más o menos esto de contar 485 00:20:26,750 --> 00:20:28,329 Y todo eso, bueno, es 486 00:20:28,329 --> 00:20:31,150 No estamos aportando 487 00:20:31,150 --> 00:20:32,170 Nada muy nuevo 488 00:20:32,170 --> 00:20:34,390 Estamos basándonos, ya veis, en cosas que 489 00:20:34,390 --> 00:20:36,549 Ya sabemos de antes, por eso digo que 490 00:20:36,549 --> 00:20:39,210 el que se sienta un poco más 491 00:20:39,210 --> 00:20:40,970 incómodo, pues que haga ahora 492 00:20:40,970 --> 00:20:42,930 el sobresfuerzo de empezar 493 00:20:42,930 --> 00:20:44,990 otra vez desde el principio a reforzarlo 494 00:20:44,990 --> 00:20:47,210 a metérselo todo en la cabeza 495 00:20:47,210 --> 00:20:47,630 otra vez 496 00:20:47,630 --> 00:20:50,190 pues ala, el 6 497 00:20:50,190 --> 00:20:55,089 6, venga, con el 6 ya sí que 498 00:20:55,089 --> 00:20:57,170 saltamos algo más 499 00:20:57,170 --> 00:20:59,029 ahora ya no estamos contando 500 00:20:59,029 --> 00:21:01,029 ahora ya no hay que 501 00:21:01,029 --> 00:21:02,849 contar en este ejercicio, en este ejercicio 502 00:21:02,849 --> 00:21:04,609 hay que hacer una suma de sumandos 503 00:21:04,609 --> 00:21:07,549 ¿Vale? Que es una situación que se puede dar muchas veces 504 00:21:07,549 --> 00:21:09,369 Hazme una suma 505 00:21:09,369 --> 00:21:10,789 Una suma 506 00:21:10,789 --> 00:21:12,089 Integra sumandos 507 00:21:12,089 --> 00:21:14,930 Cuando el número de sumandos 508 00:21:14,930 --> 00:21:16,910 Yo ya lo sé a priori de partida 509 00:21:16,910 --> 00:21:19,210 Puedo calzar la suma tal cual 510 00:21:19,210 --> 00:21:21,029 Este sumando más este, más este, más este 511 00:21:21,029 --> 00:21:22,849 Como hemos hecho hasta ahora, por ejemplo 512 00:21:22,849 --> 00:21:25,210 Decíamos, recibe dos números y haz la suma 513 00:21:25,210 --> 00:21:27,450 Tengo los dos sumandos, n1 más n2 514 00:21:27,450 --> 00:21:29,410 Muy bien, o recibe tres números 515 00:21:29,410 --> 00:21:31,970 Y haz la suma, estupendo, tengo los tres sumandos 516 00:21:31,970 --> 00:21:33,849 Pues hago la suma, n1 más n2 más n3 517 00:21:33,849 --> 00:21:36,170 ¿cuál es el problema de esta suma? 518 00:21:36,990 --> 00:21:38,589 que en cada ejecución 519 00:21:38,589 --> 00:21:40,730 el número de sumandos es distinto 520 00:21:40,730 --> 00:21:43,089 si yo le meto 7 521 00:21:43,089 --> 00:21:45,390 la suma que hará el programa 522 00:21:45,390 --> 00:21:47,170 en ese caso será 1 más 2 más 3 523 00:21:47,170 --> 00:21:48,910 hasta 7, o sea 7 sumandos 524 00:21:48,910 --> 00:21:51,829 si le meto 5 son 5 sumandos 525 00:21:51,829 --> 00:21:54,430 no, no, no 526 00:21:54,430 --> 00:21:57,009 el programa te muestra este numerito 527 00:21:57,009 --> 00:21:58,250 la suma, punto pelota 528 00:21:58,250 --> 00:22:00,509 entonces nosotros nos damos cuenta 529 00:22:00,509 --> 00:22:03,049 de que esto es una suma de sumandos 530 00:22:03,049 --> 00:22:30,049 Vale, primera cosa a la que nos damos cuenta, esto no es contar, no es contar cuántas veces pasa algo, no es contar, esto es mostrar el resultado de una suma, vale, pues siguiente paso, ¿cuáles son los sumandos de la suma?, todas las sumas están integradas por sumandos, si yo de partida sé cuántos son y los tengo, pues planto la suma, ya está, no tengo nada más que hacer, pero ¿en qué estábamos?, 531 00:22:30,049 --> 00:22:34,450 Estábamos dándonos cuenta de que aquí el número de sumandos es variable, depende. 532 00:22:35,390 --> 00:22:38,930 En una ejecución el número de sumandos será 5, si me han dado 5. 533 00:22:39,529 --> 00:22:43,009 Pero en otra ejecución el número de sumandos será 12, si me han dado 12. 534 00:22:43,490 --> 00:22:45,289 Entonces el número de sumandos es variable. 535 00:22:46,470 --> 00:22:48,390 Luego, ¿cuántas sumas tengo que hacer? 536 00:22:49,230 --> 00:22:49,890 Pues depende. 537 00:22:51,089 --> 00:22:55,410 En algunas ejecuciones tendré que hacer hasta 2 sumas, 1 más 2 más 3, si me han dado 3. 538 00:22:55,410 --> 00:22:57,630 pero en otra ejecución tendré que hacer 539 00:22:57,630 --> 00:22:59,630 hasta 7 sumas, si me anda del 8 540 00:22:59,630 --> 00:23:01,329 1 más 2 más 3, luego 541 00:23:01,329 --> 00:23:03,829 lo que yo identifico que se repite 542 00:23:03,829 --> 00:23:05,289 varias veces es sumar 543 00:23:05,289 --> 00:23:07,789 luego ahora ya sí que veo 544 00:23:07,789 --> 00:23:08,930 voy a tener que usar un bucle 545 00:23:08,930 --> 00:23:11,230 un bucle, que lo que hace dentro es sumar 546 00:23:11,230 --> 00:23:13,230 ¿cuántas veces suma? 547 00:23:13,450 --> 00:23:14,890 no lo sé, depende 548 00:23:14,890 --> 00:23:17,829 pero ya me he dado cuenta que no hay forma de hacer esto 549 00:23:17,829 --> 00:23:18,970 si no es con un bucle 550 00:23:18,970 --> 00:23:21,970 porque yo tengo que repetir varias veces 551 00:23:21,970 --> 00:23:23,390 una operación, que es 552 00:23:23,390 --> 00:23:25,329 una suma. ¿Cuántas veces? 553 00:23:25,430 --> 00:23:27,130 No sé cuántas, no sé cuántas. 554 00:23:27,549 --> 00:23:29,589 Pues entonces tendré que meter esa suma en un bucle 555 00:23:29,589 --> 00:23:31,569 y que ya la condición 556 00:23:31,569 --> 00:23:32,849 me diga cuántas veces la hago. 557 00:23:34,009 --> 00:23:35,349 ¿Vale? Entonces cuando identifico 558 00:23:35,349 --> 00:23:36,930 que tengo que hacer algo varias veces 559 00:23:36,930 --> 00:23:39,230 pero de partida no sé cuántas, 560 00:23:39,869 --> 00:23:41,529 pues es imposible hacerlo sin bucles. 561 00:23:42,289 --> 00:23:43,430 Porque si de partida 562 00:23:43,430 --> 00:23:45,289 sé cuántas veces tengo que hacer algo, pongo una 563 00:23:45,289 --> 00:23:47,690 tras otra. Pero si de partida 564 00:23:47,690 --> 00:23:49,450 no lo sé, pues eso 565 00:23:49,450 --> 00:23:51,309 que tengo que hacer varias veces, como en este caso 566 00:23:51,309 --> 00:23:52,569 la suma irá dentro de un bucle 567 00:23:52,569 --> 00:24:07,549 Y ya que la condición decida en cada momento cuántas veces, en este caso la condición tendrá que ver con el numerito n, ¿vale? Entonces con eso ya empieza a tener más o menos una imagen de cómo puede ir mi programa. 568 00:24:07,549 --> 00:24:10,329 Pues venga, ejercicio 6 569 00:24:10,329 --> 00:24:21,000 Ejercicio 6 570 00:24:21,000 --> 00:24:22,559 Como de costumbre, datos de entrada 571 00:24:22,559 --> 00:24:23,640 Datos de entrada 572 00:24:23,640 --> 00:24:28,279 Eso ya, en este caso 573 00:24:28,279 --> 00:24:29,019 Un valor 574 00:24:29,019 --> 00:24:31,180 Dato de entrada, un valor 575 00:24:31,180 --> 00:24:35,480 Dato de entrada, un valor 576 00:24:35,480 --> 00:24:38,019 Llamémosle N mayúscula 577 00:24:38,019 --> 00:24:39,819 Nombre muy feo y muy mal elegido 578 00:24:39,819 --> 00:24:42,220 Sobre todo porque sea en mayúscula 579 00:24:42,220 --> 00:24:44,119 Pero bueno, vale 580 00:24:44,119 --> 00:24:46,220 Y ahora, nos hemos dado cuenta 581 00:24:46,220 --> 00:24:48,299 De que hay que hacer varias veces 582 00:24:48,299 --> 00:24:49,140 Una suma 583 00:24:49,960 --> 00:24:55,160 ¿Vale? Y repito otra vez, ¿cuántas? No lo sé, depende de una condición. 584 00:24:55,720 --> 00:25:00,160 Luego entonces, varias veces voy a tener que hacer una suma, ya veremos cuál, 585 00:25:01,500 --> 00:25:06,019 y como lo tengo que hacer varias veces, esa suma va a tener que ir en un bucle. 586 00:25:08,589 --> 00:25:12,250 Este bucle va a fijar cuántas veces hago la suma. 587 00:25:13,029 --> 00:25:15,910 De alguna manera ya intuyo que esta condición va a depender de n, 588 00:25:15,910 --> 00:25:17,549 va a depender de n, porque 589 00:25:17,549 --> 00:25:20,289 cuanto más alto sea n, más sumas 590 00:25:20,289 --> 00:25:22,250 me toca por hacer, más sumas me toca 591 00:25:22,250 --> 00:25:24,089 entonces de alguna manera esta condición va a depender de n 592 00:25:24,089 --> 00:25:24,650 vale 593 00:25:24,650 --> 00:25:27,910 bueno, ahora mismo está esbozado 594 00:25:27,910 --> 00:25:29,750 muy por encima, hay que meterse más 595 00:25:29,750 --> 00:25:32,049 vale, el resultado 596 00:25:32,049 --> 00:25:33,950 final, ¿cuál va a ser? recordad que 597 00:25:33,950 --> 00:25:36,049 muchas veces he dicho, para poder 598 00:25:36,049 --> 00:25:37,950 hacer un diseño de un ejercicio, no 599 00:25:37,950 --> 00:25:40,089 perdáis de vista, ¿cuál es 600 00:25:40,089 --> 00:25:41,910 el resultado final? y de hecho nos hacíamos 601 00:25:41,910 --> 00:25:44,109 una variable para meter el resultado y luego construíamos 602 00:25:44,109 --> 00:25:46,170 eso. Mi resultado final 603 00:25:46,170 --> 00:25:48,049 aquí va a ser un número. Va a ser un número. 604 00:25:48,950 --> 00:25:50,369 Que es el resultado 605 00:25:50,369 --> 00:25:51,190 de una suma. 606 00:25:51,970 --> 00:25:53,410 De una suma de muchos sumandos. 607 00:25:54,009 --> 00:25:56,109 Vale, pues entonces, este 608 00:25:56,109 --> 00:25:57,289 va a ser mi resultado final. 609 00:25:58,509 --> 00:25:59,930 Sea el que sea, lo voy a guardar ahí. 610 00:25:59,990 --> 00:26:01,089 Una suma de muchas cosas. 611 00:26:02,049 --> 00:26:03,990 Luego mi programa tiene que acabar así, de alguna 612 00:26:03,990 --> 00:26:08,740 manera. La suma 613 00:26:08,740 --> 00:26:09,440 es 614 00:26:09,440 --> 00:26:11,880 suma. 615 00:26:13,960 --> 00:26:15,720 Y ahora ya me falta aquí hacer 616 00:26:15,720 --> 00:26:16,380 operaciones 617 00:26:16,380 --> 00:26:19,299 vale, ¿qué sumas tengo que hacer? 618 00:26:21,019 --> 00:26:23,099 bueno, pues yo esta suma 619 00:26:23,099 --> 00:26:24,359 de 1, 2, 3 620 00:26:24,359 --> 00:26:26,759 ahora ya sí que la puedo ir planteando 621 00:26:26,759 --> 00:26:28,920 como una cosa 622 00:26:28,920 --> 00:26:29,920 que llamamos 623 00:26:29,920 --> 00:26:32,480 es una suma acumulativa 624 00:26:32,480 --> 00:26:34,519 es decir 625 00:26:34,519 --> 00:26:36,619 ¿cómo puede funcionar este 626 00:26:36,619 --> 00:26:41,470 a ver, ¿cómo puedo plantearme 627 00:26:41,470 --> 00:26:42,589 esa suma de sumandos? 628 00:26:49,089 --> 00:26:50,710 bueno, lo hago aquí en pizarra 629 00:26:50,710 --> 00:26:51,710 aunque no haya cámara ni nada 630 00:26:51,710 --> 00:27:08,089 ¿Vale? Pues tenemos que hacer esta suma de aquí 631 00:27:08,089 --> 00:27:12,170 Entonces, como vemos, en realidad esta suma 632 00:27:12,170 --> 00:27:14,750 A cada valor 633 00:27:14,750 --> 00:27:16,809 O sea, inicialmente 634 00:27:16,809 --> 00:27:19,589 Esto lo podéis plantear como que es 0 más 1 635 00:27:19,589 --> 00:27:22,109 Entonces, inicialmente yo podría partir de que tengo el 0 636 00:27:22,109 --> 00:27:23,509 ¿Vale? 637 00:27:24,089 --> 00:27:27,589 Entonces, a este 0 le hago la primera suma 638 00:27:27,589 --> 00:27:28,970 Y ya tengo un primer resultado 639 00:27:28,970 --> 00:27:29,690 1 640 00:27:29,690 --> 00:27:32,490 vale, a este nuevo 641 00:27:32,490 --> 00:27:34,490 resultado le vuelvo 642 00:27:34,490 --> 00:27:36,210 a hacer otra suma 643 00:27:36,210 --> 00:27:38,269 le vuelvo a hacer otra suma 644 00:27:38,269 --> 00:27:40,130 y ya tendría mi siguiente resultado 645 00:27:40,130 --> 00:27:42,210 que es 2, entonces 646 00:27:42,210 --> 00:27:44,089 esto lo puedo plantear 647 00:27:44,089 --> 00:27:45,150 una variable 648 00:27:45,150 --> 00:27:47,809 llamémosla como uno la quiera llamar 649 00:27:47,809 --> 00:27:49,930 una variable que inicialmente empieza 650 00:27:49,930 --> 00:27:51,910 haciendo 0 y sobre esta 651 00:27:51,910 --> 00:27:54,369 misma variable la voy actualizando 652 00:27:54,369 --> 00:27:55,829 sumándole cada vez algo 653 00:27:55,829 --> 00:27:58,049 ¿verdad? entonces esta es 654 00:27:58,049 --> 00:28:00,170 la sentencia clave de lo que llamamos 655 00:28:00,170 --> 00:28:01,869 la suma acumulativa. 656 00:28:05,289 --> 00:28:06,150 N sería 657 00:28:06,150 --> 00:28:07,930 el acumulador. N es lo que 658 00:28:07,930 --> 00:28:08,990 llamamos el acumulador. 659 00:28:11,049 --> 00:28:12,349 Entonces, N inicialmente 660 00:28:12,349 --> 00:28:13,930 es cero. Es el 661 00:28:13,930 --> 00:28:15,730 acumulador que parte de cero. 662 00:28:16,049 --> 00:28:17,910 N es el acumulador. N inicialmente tiene 663 00:28:17,910 --> 00:28:21,650 cero. Vale. 664 00:28:22,210 --> 00:28:24,369 Y ahora, N va 665 00:28:24,369 --> 00:28:26,150 recibiendo sobre él valores 666 00:28:26,150 --> 00:28:28,349 y se va actualizando. 667 00:28:28,990 --> 00:28:30,250 La primera vez 668 00:28:30,250 --> 00:28:31,250 que recibe un valor 669 00:28:31,250 --> 00:28:33,170 n tiene cero 670 00:28:33,170 --> 00:28:34,009 recibe ese valor 671 00:28:34,009 --> 00:28:35,250 y ya se actualiza 672 00:28:35,250 --> 00:28:36,150 y tendrá un nuevo valor 673 00:28:36,150 --> 00:28:37,470 ya ha acumulado 674 00:28:37,470 --> 00:28:38,369 una primera suma 675 00:28:38,369 --> 00:28:38,970 ya ha acumulado 676 00:28:38,970 --> 00:28:40,269 una primera suma 677 00:28:40,269 --> 00:28:40,529 vale 678 00:28:40,529 --> 00:28:42,549 la siguiente vez 679 00:28:42,549 --> 00:28:43,069 que se ejecute 680 00:28:43,069 --> 00:28:43,829 esa instrucción 681 00:28:43,829 --> 00:28:45,309 n tendrá el valor 682 00:28:45,309 --> 00:28:46,230 acumulado de antes 683 00:28:46,230 --> 00:28:47,430 y le metemos 684 00:28:47,430 --> 00:28:48,069 otro nuevo 685 00:28:48,069 --> 00:28:49,589 otro nuevo 686 00:28:49,589 --> 00:28:50,670 vale 687 00:28:50,670 --> 00:28:51,930 tiene un nuevo valor 688 00:28:51,930 --> 00:28:53,470 la siguiente vez 689 00:28:53,470 --> 00:28:54,430 que se ejecute esto 690 00:28:54,430 --> 00:28:56,009 tiene el valor 691 00:28:56,009 --> 00:28:57,109 que ya tenía de antes 692 00:28:57,109 --> 00:28:58,289 con las dos sumas 693 00:28:58,289 --> 00:28:59,049 anteriores 694 00:28:59,049 --> 00:29:00,730 y acumula el nuevo 695 00:29:00,730 --> 00:29:02,589 entonces si metemos esto en un bucle 696 00:29:02,589 --> 00:29:05,150 si metemos esta sentencia en un bucle 697 00:29:05,150 --> 00:29:07,410 n igual a 698 00:29:07,410 --> 00:29:08,109 n más x 699 00:29:08,109 --> 00:29:10,390 partiendo n de 0 700 00:29:10,390 --> 00:29:14,509 estamos consiguiendo este efecto 701 00:29:14,509 --> 00:29:16,529 que es que la variable 702 00:29:16,529 --> 00:29:17,630 n le sumo x 703 00:29:17,630 --> 00:29:20,369 y luego le sumo x otra vez, y luego x otra vez 704 00:29:20,369 --> 00:29:22,190 y luego x otra vez, y luego x otra vez 705 00:29:22,190 --> 00:29:24,470 así hasta que yo decida, hasta la condición 706 00:29:24,470 --> 00:29:26,250 que yo decida, y estos x 707 00:29:26,250 --> 00:29:27,049 los que yo decida 708 00:29:27,049 --> 00:29:30,309 ¿vale? entonces n funciona 709 00:29:30,309 --> 00:29:31,390 con un acumulador 710 00:29:31,390 --> 00:29:34,529 que voy metiendo sobre él 711 00:29:34,529 --> 00:29:35,549 sucesivos valores. 712 00:29:36,250 --> 00:29:37,430 La primera vez que entro, 713 00:29:38,410 --> 00:29:39,970 sobre el cero que tenía le sumo x 714 00:29:39,970 --> 00:29:42,349 y me quedaré con el valor que tengo. 715 00:29:43,069 --> 00:29:44,569 La siguiente vez que entro, 716 00:29:44,930 --> 00:29:46,150 sobre ese nuevo valor 717 00:29:46,150 --> 00:29:48,109 que tengo de antes, 718 00:29:48,250 --> 00:29:49,150 le meto otro nuevo 719 00:29:49,150 --> 00:29:51,069 y actualizo el que tengo. 720 00:29:51,990 --> 00:29:53,029 Y vuelvo arriba. 721 00:29:54,150 --> 00:29:55,670 Sobre ese nuevo valor 722 00:29:55,670 --> 00:29:56,890 que acabo de actualizar, 723 00:29:57,069 --> 00:29:58,630 actualizo metiéndole otro nuevo 724 00:29:58,630 --> 00:29:59,789 y lo vuelvo a actualizar. 725 00:30:00,309 --> 00:30:07,730 ¿Vale? Luego esta es una estructura en el cual de una variable acumuladora que empieza valiendo cero voy yo haciéndole sumas. 726 00:30:08,130 --> 00:30:10,970 Primero sumo x, luego sumo x otra vez, luego sumo x otra vez. 727 00:30:11,549 --> 00:30:17,869 Y ahora sobre esta estructura general yo ya decido cuando paro de sumar y los diferentes sumandos cuáles son. 728 00:30:18,470 --> 00:30:20,109 x haría el papel de los sumandos. 729 00:30:20,670 --> 00:30:22,509 En mi caso los sumandos cuáles son. 730 00:30:23,109 --> 00:30:27,670 Pues 1, 2, 3, luego x tiene que ir variando entre 1, 2, 3. 731 00:30:27,670 --> 00:30:30,529 porque x hace el papel de los diferentes sumandos 732 00:30:30,529 --> 00:30:32,349 ¿no? la primera vez quiero sumar 1 733 00:30:32,349 --> 00:30:34,289 pero la siguiente vez 734 00:30:34,289 --> 00:30:36,549 quiero sumar 2, la siguiente vez quiero sumar 3 735 00:30:36,549 --> 00:30:38,349 luego x son los diferentes 736 00:30:38,349 --> 00:30:39,670 sumandos ¿vale? 737 00:30:40,549 --> 00:30:42,690 bueno pues ya me construyo los sumandos 738 00:30:42,690 --> 00:30:44,509 pues entonces 739 00:30:44,509 --> 00:30:45,849 si escribimos esto en código 740 00:30:45,849 --> 00:30:48,109 sería 741 00:30:48,109 --> 00:30:50,630 vale 742 00:30:50,630 --> 00:30:52,490 suma es el acumulador 743 00:30:52,490 --> 00:30:53,509 empieza valiendo 0 744 00:30:53,509 --> 00:30:56,069 uy, sí 745 00:30:56,069 --> 00:31:02,180 suma es el acumulador que empieza valiendo cero, está claro 746 00:31:02,180 --> 00:31:04,700 ahora, la sentencia 747 00:31:04,700 --> 00:31:08,140 para que suma vaya recibiendo sobre ella 748 00:31:08,140 --> 00:31:09,759 los siguientes sumandos es esta 749 00:31:09,759 --> 00:31:15,150 a suma, sumale un valor x 750 00:31:15,150 --> 00:31:17,430 vamos a declararlo aquí abajo 751 00:31:17,430 --> 00:31:24,039 vale, pues entonces, esta sentencia funciona 752 00:31:24,039 --> 00:31:25,099 de esta manera 753 00:31:25,099 --> 00:31:29,079 a suma le voy haciendo la suma 754 00:31:29,079 --> 00:31:31,480 de estos sumandos de aquí 755 00:31:31,480 --> 00:31:33,180 entonces en cada iteración 756 00:31:33,180 --> 00:31:35,839 x tiene que ir siendo cada uno de los sumandos 757 00:31:35,839 --> 00:31:37,980 en cada iteración x tiene que ir siendo 758 00:31:37,980 --> 00:31:40,240 cada uno de los sumandos, entonces ahora yo ya pienso en mi problema 759 00:31:40,240 --> 00:31:41,900 mi problema digo es 760 00:31:41,900 --> 00:31:43,160 a ver, los sumandos cuáles son 761 00:31:43,160 --> 00:31:46,380 pues los sumandos son 1, 2, 3 762 00:31:46,380 --> 00:31:47,779 pues me las tengo que apañar 763 00:31:47,779 --> 00:31:49,819 para que x vaya variando 764 00:31:49,819 --> 00:31:52,119 por esos valores, 1, 2, 3 765 00:31:52,119 --> 00:31:54,440 me las tengo que apañar, ah vale, pero eso ya sé hacerlo 766 00:31:54,440 --> 00:31:56,039 si es que ya lo he hecho en ejercicios anteriores 767 00:31:56,039 --> 00:31:58,000 pues que empiece 768 00:31:58,000 --> 00:32:00,299 valiendo 1 y lo incremento 769 00:32:00,299 --> 00:32:04,710 ya está, ya he conseguido que x 770 00:32:04,710 --> 00:32:07,269 vaya teniendo los sucesivos sumandos 771 00:32:07,269 --> 00:32:08,670 que quiero ir llevando a suma 772 00:32:08,670 --> 00:32:10,329 empezando en 1 773 00:32:10,329 --> 00:32:12,009 e incrementando 774 00:32:12,009 --> 00:32:13,890 entonces la primera vez que entra en el while 775 00:32:13,890 --> 00:32:16,630 al valor inicial de 0 le sumo el 1 776 00:32:16,630 --> 00:32:18,869 primer sumando, ya está sumado 777 00:32:18,869 --> 00:32:19,589 primer sumando 778 00:32:19,589 --> 00:32:21,769 y dejo incrementando x a 2 779 00:32:21,769 --> 00:32:24,990 en la siguiente vez al valor que tenía de antes 780 00:32:24,990 --> 00:32:27,289 que era el 1 le sumo el siguiente sumando 781 00:32:27,289 --> 00:32:29,250 que es 2, ya me he preocupado yo de que sea 2 782 00:32:29,250 --> 00:32:31,049 porque he hecho las operaciones correspondientes 783 00:32:31,049 --> 00:32:32,150 en x para que sea 2 784 00:32:32,150 --> 00:32:34,930 y dejo incrementando x para que sea 785 00:32:34,930 --> 00:32:36,529 el tercer sumando, que es 3 786 00:32:36,529 --> 00:32:39,029 en la siguiente 787 00:32:39,029 --> 00:32:40,950 iteración, suma ya tenía el 1 788 00:32:40,950 --> 00:32:42,890 más 2 de antes, le meto 789 00:32:42,890 --> 00:32:44,630 el sumando nuevo, que es 3 790 00:32:44,630 --> 00:32:46,970 y dejo incrementado x 791 00:32:46,970 --> 00:32:48,809 para que en la siguiente iteración 792 00:32:48,809 --> 00:32:51,089 ya sea el siguiente sumando 4 793 00:32:51,089 --> 00:32:53,109 y ya está, y con esta 794 00:32:53,109 --> 00:32:55,210 suma, estaré consiguiendo 795 00:32:55,210 --> 00:32:56,710 esto, 0 796 00:32:56,710 --> 00:33:02,869 más 1, más 797 00:33:02,869 --> 00:33:05,089 2, eso es lo que estoy consiguiendo 798 00:33:05,089 --> 00:33:05,890 en cada iteración 799 00:33:05,890 --> 00:33:08,829 la primera suma que he hecho era 800 00:33:08,829 --> 00:33:09,910 0 más 1, que era esta 801 00:33:09,910 --> 00:33:12,309 y suma se queda valiendo 0 más 1 802 00:33:12,309 --> 00:33:15,009 la siguiente vez que he entrado, como x 803 00:33:15,009 --> 00:33:16,950 ahora vale 2, suma 804 00:33:16,950 --> 00:33:18,049 ya se va a quedar valiendo esto 805 00:33:18,049 --> 00:33:20,369 el 0 más 1 de antes 806 00:33:20,369 --> 00:33:22,549 más el 2 nuevo 807 00:33:22,549 --> 00:33:24,549 suma se va a quedar valiendo esto ya 808 00:33:24,549 --> 00:33:26,609 y x se queda valiendo 3 809 00:33:26,609 --> 00:33:28,849 la siguiente vez que entre, suma 810 00:33:28,849 --> 00:33:30,930 tiene 0 más 1 más 2, que es lo que he hecho 811 00:33:30,930 --> 00:33:32,609 antes, pues le sumo el 3 nuevo 812 00:33:32,609 --> 00:33:34,690 ahora ya suma tiene esto 813 00:33:34,690 --> 00:33:36,529 y x se queda valiendo 4 814 00:33:36,529 --> 00:33:39,109 la siguiente vez que entro 815 00:33:39,109 --> 00:33:41,410 a suma, que ahora tiene 0 más 1 más 2 más 3 816 00:33:41,410 --> 00:33:43,029 me toca sumarle el siguiente sumando 817 00:33:43,029 --> 00:33:43,589 que es 4 818 00:33:43,589 --> 00:33:46,190 y ahora ya suma se queda valiendo esto 819 00:33:46,190 --> 00:33:48,970 x lo dejo incrementado 820 00:33:48,970 --> 00:33:49,950 para que la valga 5 821 00:33:49,950 --> 00:33:52,170 la siguiente vez que entro suma 822 00:33:52,170 --> 00:33:54,569 que ahora tenía 0 más 1 más 2 más 3 más 4 823 00:33:54,569 --> 00:33:56,710 le estoy sumando el siguiente sumando 824 00:33:56,710 --> 00:33:57,390 que es 5 825 00:33:57,390 --> 00:34:00,549 y así voy incorporando a mi suma 826 00:34:00,549 --> 00:34:02,210 los diferentes sumandos x 827 00:34:02,210 --> 00:34:09,550 Que ya me he preocupado yo de hacer con x lo que sea para asegurarme de que van siendo 1, 2, 3. 828 00:34:09,710 --> 00:34:12,329 Porque en este caso es lo que me han pedido, que son 1, 2, 3. 829 00:34:13,030 --> 00:34:14,130 Segundín, ¿vale? 830 00:34:17,059 --> 00:34:18,360 Entonces, ¿qué me falta aquí? 831 00:34:18,480 --> 00:34:19,639 ¿Cuándo termino de sumar? 832 00:34:20,139 --> 00:34:21,400 ¿Cuándo termino yo de sumar? 833 00:34:21,860 --> 00:34:23,059 ¿Qué condición pondríais ahí? 834 00:34:31,039 --> 00:34:32,960 Bueno, pero no te hace falta que haya una variable adicional. 835 00:34:33,559 --> 00:34:40,119 La última suma termina cuando has sumado esta variable. 836 00:34:40,119 --> 00:34:41,219 ¿Cuándo has sumado este valor? 837 00:34:43,099 --> 00:34:46,239 Es decir, cuando x ha llegado a ser n, 838 00:34:46,380 --> 00:34:47,420 ya no quieres sumar más. 839 00:34:47,679 --> 00:34:50,119 Entonces, mientras x sea menor o igual que n mayúscula. 840 00:34:51,059 --> 00:34:52,079 Ya lo has terminado, ¿no? 841 00:34:53,420 --> 00:34:54,800 Porque x se va incrementando. 842 00:34:55,099 --> 00:34:56,840 Entonces, tú vas sumando el primer x, que es 1. 843 00:34:57,340 --> 00:34:58,719 Luego vas sumando el siguiente, que es 2. 844 00:34:59,119 --> 00:35:00,440 Luego vas sumando el siguiente, que es 3. 845 00:35:02,940 --> 00:35:03,900 El valor inicial. 846 00:35:07,199 --> 00:35:08,380 Entonces, vas sumando así. 847 00:35:08,380 --> 00:35:12,579 Claro, entonces 848 00:35:12,579 --> 00:35:14,119 Ya este bucle 849 00:35:14,119 --> 00:35:15,840 Lo que va a estar haciendo es 850 00:35:15,840 --> 00:35:16,920 Ir haciendo estas sumas 851 00:35:16,920 --> 00:35:19,159 Pero cuando haya sumado ya n 852 00:35:19,159 --> 00:35:20,699 Haya sumado ya el n 853 00:35:20,699 --> 00:35:22,099 Ese se queda siendo n más 1 854 00:35:22,099 --> 00:35:23,900 Volvemos a la condición 855 00:35:23,900 --> 00:35:25,260 ¿n más 1 es menor que n? 856 00:35:25,300 --> 00:35:27,380 No, ya nos hemos pasado 857 00:35:27,380 --> 00:35:28,960 Pues ya no sumamos más 858 00:35:28,960 --> 00:35:32,639 ¿Vale? 859 00:35:35,500 --> 00:35:37,440 Bueno, pues acordaos entonces de esta estructura 860 00:35:37,440 --> 00:35:39,420 Cuando hay que hacer una suma con muchos sumandos 861 00:35:39,420 --> 00:35:41,179 y el número de sumandos es variable 862 00:35:41,179 --> 00:35:44,239 pues no hay otra manera de hacerlo 863 00:35:44,239 --> 00:35:46,179 esa suma final 864 00:35:46,179 --> 00:35:47,719 irá en una variable acumuladora 865 00:35:47,719 --> 00:35:49,300 que es la que va acumulando las sumas 866 00:35:49,300 --> 00:35:51,480 inicialmente cero, un acumulador 867 00:35:51,480 --> 00:35:52,960 primero pasa de parte de cero 868 00:35:52,960 --> 00:35:55,000 y ahora dentro del bucle 869 00:35:55,000 --> 00:35:56,739 tendrá que haber una sentencia como esta 870 00:35:56,739 --> 00:36:00,139 de tal manera que según se vaya repitiendo 871 00:36:00,139 --> 00:36:01,159 el bucle 872 00:36:01,159 --> 00:36:04,420 este acumulador cada vez meta un sumando nuevo 873 00:36:04,420 --> 00:36:06,260 cada vez que el bucle 874 00:36:06,260 --> 00:36:07,920 salta mete un sumando nuevo 875 00:36:07,920 --> 00:36:10,360 Y ahora ya lo que me falta es 876 00:36:10,360 --> 00:36:13,099 Estos sumandos ver como los genero 877 00:36:13,099 --> 00:36:14,619 En este caso generarlos era 878 00:36:14,619 --> 00:36:16,079 A partir de uno ir incrementando 879 00:36:16,079 --> 00:36:18,639 Pero podría ser que fueran sumandos 880 00:36:18,639 --> 00:36:20,460 Que yo pido por teclado, lo que sea 881 00:36:20,460 --> 00:36:22,099 ¿Vale? 882 00:36:22,840 --> 00:36:24,300 Claro, podría ser variable 883 00:36:24,300 --> 00:36:26,500 O sea, programa que pida números por teclado 884 00:36:26,500 --> 00:36:27,260 Y lo sume todos 885 00:36:27,260 --> 00:36:30,019 Pues como cambiaría, este x 886 00:36:30,019 --> 00:36:32,199 Lo leería yo por teclado 887 00:36:32,199 --> 00:36:33,380 Y luego lo sumaría 888 00:36:33,380 --> 00:36:36,579 ¿Vale? La condición de finalización, la que me dijeran 889 00:36:36,579 --> 00:36:38,539 Mientras el número leído sea positivo 890 00:36:38,539 --> 00:36:39,079 Lo que sea 891 00:36:39,079 --> 00:36:41,679 Entonces el sumando es el que depende 892 00:36:41,679 --> 00:36:42,860 Depende de lo que te pidan 893 00:36:42,860 --> 00:36:45,320 Depende, aquí es que me decían que el sumando tiene que ser 894 00:36:45,320 --> 00:36:48,699 Partiendo de uno e irse incrementando de uno en uno 895 00:36:48,699 --> 00:36:50,219 Pues me decían eso, pues ya está 896 00:36:50,219 --> 00:36:51,599 El sumando lo construyo así 897 00:36:51,599 --> 00:36:54,019 Pero podrían ser otros 898 00:36:54,019 --> 00:36:55,579 Pues los construyo como sea 899 00:36:55,579 --> 00:36:58,099 Y claro, tengo que dejar muy claro 900 00:36:58,099 --> 00:36:59,579 En qué momento termino de sumar 901 00:36:59,579 --> 00:37:01,800 Porque si no termino de sumar nunca, el bucle no acaba nunca 902 00:37:01,800 --> 00:37:03,500 ¿Vale? 903 00:37:05,889 --> 00:37:07,909 Vale, entonces esto si lo hemos hecho bien 904 00:37:07,909 --> 00:37:09,789 Y ponemos el 4 905 00:37:09,789 --> 00:37:11,190 Pues 1 más 2 más 3 más 4 906 00:37:11,190 --> 00:37:12,550 Se supone que es 10, ¿no? 907 00:37:12,750 --> 00:37:15,809 Y tú, espera 908 00:37:15,809 --> 00:37:17,210 Adrián iba a preguntar algo 909 00:37:17,210 --> 00:37:32,800 Sí, o sea, tú lo has incrementado aquí 910 00:37:32,800 --> 00:37:39,199 Y aquí arriba 911 00:37:39,199 --> 00:37:41,440 O sea, en lugar de ponerlo aquí 912 00:37:41,440 --> 00:37:43,440 Pero no tienes que hacer ninguna modificación 913 00:37:43,440 --> 00:37:44,380 Así ya estaría, ¿no? 914 00:37:44,380 --> 00:37:51,449 A ver, si tú haces X++ 915 00:37:51,449 --> 00:37:53,750 Suma la X y la X la deja incrementada 916 00:37:53,750 --> 00:37:55,150 Luego es igual 917 00:37:55,150 --> 00:37:56,409 Lo tienes que hacer en un cambio, ¿no? 918 00:37:57,610 --> 00:37:57,809 ¿Eh? 919 00:37:59,969 --> 00:38:01,050 Espera, espera, que no lo digo 920 00:38:01,050 --> 00:38:01,710 Dime 921 00:38:01,710 --> 00:38:07,050 Claro 922 00:38:07,050 --> 00:38:09,469 A ver, Juanjo, que te has puesto justo en medio 923 00:38:09,469 --> 00:38:10,170 No le veo 924 00:38:10,170 --> 00:38:13,750 No, aquí empieza desde 1 925 00:38:13,750 --> 00:38:14,590 ¿Por qué? 926 00:38:14,590 --> 00:38:17,269 entres por aquí 927 00:38:17,269 --> 00:38:19,250 x es 1, 1 es ver igual que n, sí 928 00:38:19,250 --> 00:38:21,309 como es post incremento 929 00:38:21,309 --> 00:38:23,449 primero lo coges para la suma 930 00:38:23,449 --> 00:38:25,409 y luego ya lo dejas incrementado 931 00:38:25,409 --> 00:38:26,050 porque es post 932 00:38:26,050 --> 00:38:28,530 el problema es si tú lo haces así 933 00:38:28,530 --> 00:38:31,429 entonces sí, así sí, porque así sería 934 00:38:31,429 --> 00:38:33,130 pre incremento 935 00:38:33,130 --> 00:38:35,869 a ver, vamos a ver 936 00:38:35,869 --> 00:38:37,409 yo creo 937 00:38:37,409 --> 00:38:39,230 que este código 938 00:38:39,230 --> 00:38:40,469 espera, quítate de en medio 939 00:38:40,469 --> 00:38:43,869 a ver, este código y el que he hecho yo 940 00:38:43,869 --> 00:38:45,650 Creo que son iguales, pero vamos a comprobarlo 941 00:38:45,650 --> 00:38:47,190 A ver si algo se me ha escapado 942 00:38:47,190 --> 00:38:49,630 Ya, vale 943 00:38:49,630 --> 00:38:51,769 Si yo le vuelvo a poner el 4, habíamos dicho 944 00:38:51,769 --> 00:38:53,789 1, 2, 3, 10, me sale igual 945 00:38:53,789 --> 00:38:58,980 A ver, este 946 00:38:58,980 --> 00:39:01,480 Son idénticos, se supone 947 00:39:01,480 --> 00:39:03,440 Vale, venga, ahora ya sí que paramos aquí