Activa JavaScript para disfrutar de los vídeos de la Mediateca.
Clase 14-11-23 - 2 - Contenido educativo
Ajuste de pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
Vamos a hacer este 2 de aquí para cambiar un poco de enteros a cadenas, que los arrays
00:00:00
pueden ser de cualquier tipo de dato, entonces luego volveré a subir esta hoja con este
00:00:06
que hemos metido aquí para que sea la misma. Venga, pues ponemos aquí ejercicio 2.
00:00:13
Vale, pues aquí nos han dicho directamente 10 cadenas de texto, pues no nos complicamos la vida,
00:00:43
hacemos un array de muchas cadenas, muchas cadenas, pues mucho de esto, de string, la cadena de texto es string.
00:00:54
Vale, ¿cuántas? Pues 10, pues venga 10, entonces new el tipo de dato, el tipo que sea, si el tipo es string, pues string el tipo que sea.
00:01:06
Y ahora ya, bucle para rellenar, tenemos que rellenar primero las 3, pues aquí de nuevo no cambiamos.
00:01:21
Introduzca cadena y ahora en cadenas de i, ahí tiene que ir un texto, bueno pues ese texto que leemos del teclado.
00:01:35
Y me falta el escáner.
00:01:57
Me falta el escáner, el escáner que lo ponemos aquí, vale.
00:02:02
Y ahora mostrar con catenadas en orden inverso, de nuevo ha exigido que las tengamos todas disponibles,
00:02:24
todas disponibles, porque vamos a empezar por la última, entonces como ha exigido tenerlas todas disponibles,
00:02:37
pues por eso hemos hecho un array.
00:02:43
Y ahora, pues podéis haber optado por diferentes opciones, que voy a mostrarlas empezando por el final, de esta manera.
00:02:45
Entonces, podríais haber hecho lo mismo que hemos hecho antes.
00:02:54
Desde i igual a cadenas punto length menos 1, mientras i sea mayor o igual que 0, incrementando i,
00:02:59
decrementando i, pues podemos ir mostrando, y como tiene que ser con catenadas, quito el ln, podemos ir mostrando las cadenas, ¿verdad?
00:03:11
Entonces estoy mostrando primero la última, luego la penúltima, etc.
00:03:25
Y si quito el ln, efectivamente me saldrán todas con catenadas.
00:03:30
Entonces vamos a hacerlo cambiando de 10 a 5.
00:03:35
Dime.
00:03:40
Claro.
00:03:46
Si pongo 5, automáticamente esto es 5.
00:03:47
¿Vale? Esto va a ser siempre, esto va a seguir siempre el tamaño que se haya declarado ahí.
00:03:51
¿Vale? Entonces yo para hacer la prueba voy a hacer solo 5 cadenas, para no tener que estar introduciendo hasta 10.
00:03:57
¿Vale?
00:04:04
Entonces, si ejecutamos esto, cadena, pues cat1, cat2, cat3, cat4 y cat5.
00:04:05
Y efectivamente me las muestra con catenadas en orden inverso.
00:04:24
¿Vale?
00:04:27
Vale, otra forma de hacerlo, que nos interesa, porque es más general, es, vamos a hacer una variable,
00:04:32
una variable que vaya concatenando como una concatenación acumulativa, como la suma acumulativa.
00:04:41
Vamos a hacer una variable que vaya concatenando sobre sí misma estas cadenas.
00:04:46
En lugar de mostrarlas, que las vaya concatenando en una variable.
00:04:51
Y así esa variable ya la tengo yo para mostrarla, para pasársela a otro sitio, a otra función, lo que yo quiera.
00:04:54
¿Vale? Otra forma podría ser.
00:05:07
Vamos a revisar la concatenación acumulativa.
00:05:09
Yo tengo aquí mi cadena resultado, que inicialmente parte de esto.
00:05:12
Y ahora vamos a recorrer de nuevo nuestro array.
00:05:18
Y ahora, sobre result, vamos a ir concatenando esto, cadenas de i.
00:05:25
Esto es mucho más bonito, y ahora cuando ya he terminado mostraría result.
00:05:38
Esto es más bonito que lo de arriba, porque uso una variable para el resultado.
00:05:43
Sobre él voy concatenando, primero cadenas de led-1.
00:05:51
Luego concateno sobre lo que ya hay antes, la anterior.
00:05:57
Luego concateno la antepenúltima, así hasta la 1.
00:06:03
Entonces, ¿por qué esto es más bonito?
00:06:06
Porque yo con esta variable ahora ya podría hacer muchas cosas, si el programa me lo pidiera.
00:06:08
Podría pasársela a una función, podría hacer lo que quisiera.
00:06:12
Sin embargo, con la forma de arriba, lo único que yo estoy pudiendo hacer es mostrar las cadenas concatenadas.
00:06:15
Mostrarlas, sin más.
00:06:21
Pero de esta manera guardo el resultado, una variable aparte, y con esa variable hago lo que quiera.
00:06:23
Aquí en concreto lo que yo he querido ha sido mostrar.
00:06:28
Pero si me piden, me cambia el ejercicio y me dicen, y además de mostrar,
00:06:32
pues pásale a un método que haga no sé qué.
00:06:35
Pues esta no me vale.
00:06:39
Entonces cualquier ampliación de este programa sería más fácil de hacer en esta versión.
00:06:41
Porque tengo el resultado aquí guardado.
00:06:47
Tanto para mostrar como para pasar a otro sitio, para lo que a mí me dé la gana.
00:06:50
Entonces para este caso particular, que lo que yo voy a hacer es mostrar,
00:06:54
el efecto final es el mismo.
00:06:58
Pero esta es otra forma de planteárselo.
00:07:00
Que uno, nos vale para revisar lo de la concatenación acumulativa de cadenas.
00:07:02
Y dos, nos vale para coger la idea de que cuanto más generalizable sea un programa, mejor.
00:07:07
Y este es mucho más generalizable, porque este solamente muestra las cadenas.
00:07:12
Este tiene aquí la cadena y yo aquí hago lo que quiera.
00:07:16
La muestro, lo que me dé la gana.
00:07:19
En este caso mostrarla.
00:07:21
Vamos a asegurarnos que lo de abajo está bien hecho.
00:07:24
Porque a veces haciendo pruebas, uno se entera de algo que ha hecho mal.
00:07:32
Vale, efectivamente aquí también se me muestra lo mismo.
00:07:38
Vale, este de aquí.
00:07:54
Este no deberíais tener ninguna dificultad en hacerlo.
00:08:06
Lo hacéis.
00:08:10
Si alguien tiene problemas con él, me lo dice.
00:08:12
Pero aquí es lo mismo de arriba.
00:08:16
Solito un número N.
00:08:18
Declaro un array de ese tamaño.
00:08:19
Relleno el array.
00:08:21
Y ahora ya hago dos sumas acumulativas.
00:08:23
Esas sumas implican recorrer el array.
00:08:30
Y en cada iteración, que esa posición es un número par, va a la suma de pares.
00:08:33
Que esa posición es un número impar, va a la suma de impares.
00:08:38
Es lo que hemos hecho siempre.
00:08:41
Pero esas sumas acumulativas se van incrementando según recorremos el array.
00:08:43
Luego este lo hacéis.
00:08:52
Y si alguien tiene dificultades para hacerlo él solo, sin ningún tipo de ayuda, pues que me lo diga.
00:08:53
Vale, y ahora nos vamos con este.
00:09:03
Con el 4.
00:09:07
El 3 os acabo de decir que lo hagáis vosotros por vuestra cuenta.
00:09:12
Pero no ahora.
00:09:16
O sea que no lo voy a resolver yo aquí, me refiero, quería decir.
00:09:18
El 4 sí.
00:09:23
A ver, el 4, ¿quién lo ha intentado?
00:09:28
Qué bajito levantáis la mano.
00:09:34
¡Con energía!
00:09:36
¿No hacéis pesas o qué?
00:09:37
Vaya mierda de generación que estáis echando.
00:09:38
A ver.
00:09:40
6, lo habéis intentado.
00:09:43
Y el resto no lo habéis intentado porque no habéis tenido tiempo, no habéis tenido ganas o no habéis tenido interés.
00:09:45
Pero bueno, tú cuentas dentro de los intentados.
00:09:50
Vale, pregunta intentado, no he dicho quién lo ha completado.
00:09:53
Vale, pues a ver, 4 entonces.
00:10:05
Vamos a ver.
00:10:07
Vamos a ver.
00:10:10
Venga, pues aquí, como siempre, lo primero es entender el ejercicio, ¿vale?
00:10:40
Bueno, cuando digo 4 era el antiguo 3, que igual eso os ha liado.
00:10:51
¿Vale?
00:10:59
Uy, ¿qué hago yo? Estoy un poco tonta.
00:11:10
¡Hala, pues!
00:11:24
Bueno.
00:11:25
¡Ah, tomamos eso! Nada más bien.
00:11:38
Bueno.
00:11:40
Bueno, estos primeros ejercicios son para practicar con recorridos, que en realidad tampoco...
00:11:51
Vale, entonces, este dice...
00:12:03
¡Adiós!
00:12:05
Vale.
00:12:10
Vale, pues este dice leer n números con n por teclado.
00:12:24
Bueno, pues igual que el primer ejercicio, como primeramente vamos a pedir el número de valores,
00:12:27
nuestro resultado final es que vamos a tener una raíz aquí con 0.
00:12:35
Esta va a ser la posición 0, esta va a ser la 1 y esta va a ser la n-1.
00:12:40
Hasta ahí está claro, como siempre.
00:12:47
Y ahora ya tenemos que recorrer, pero haciendo una cosa rara.
00:12:49
Mostramos primero este y luego este.
00:12:54
Luego este y luego este.
00:12:57
Luego este y luego este.
00:12:59
Entonces aquí vemos que habrá un funcionamiento un poco particular.
00:13:01
En función de si el número de posiciones de la raíz n es par o es impar.
00:13:05
Porque si es par, ¿verdad?
00:13:10
Muestro este y este, luego este y este, luego este y este.
00:13:14
Y termino.
00:13:18
Si fuera impar y hubiera una más aquí, pues tendría muestro este y este,
00:13:19
luego este y este, luego este y este.
00:13:23
Y luego finalmente se queda ese ahí colgado, ¿vale?
00:13:25
Pero bueno, esos son los matices que uno va revisando en las sucesivas iteraciones
00:13:29
para depurar el programa.
00:13:34
Pero lo primero no se hace el planteamiento.
00:13:35
Entonces esto es un recorrido.
00:13:37
Un recorrido de una raíz.
00:13:38
Entonces un bucle for para que recorra va a tener que haber.
00:13:40
Porque es como recorremos una raíz.
00:13:46
Y ahora, claro, aquí el lío es.
00:13:49
Pero este y, este y va saltando.
00:13:51
¿Cómo puedo hacer yo que empiece en el cero?
00:13:54
Vale, eso está claro.
00:13:56
Empieza en el cero.
00:13:58
Pero es que luego después del cero se va a esta.
00:14:00
Pero es que luego baja aquí.
00:14:03
Y luego va aquí.
00:14:05
Y luego va aquí.
00:14:06
Y luego va aquí.
00:14:07
Entonces aquí no podemos poner una condición tal que y vaya dando estos saltos.
00:14:08
No tiene que ser así.
00:14:12
No podemos poner una condición tal que y vaya dando estos saltos.
00:14:14
No tiene sentido.
00:14:18
Entonces tenemos que buscar otra forma de hacer ese recorrido.
00:14:19
Porque aquí una sentencia para y que le haga ir dando saltos, pues no existe.
00:14:22
Una sentencia con la que vaya dando saltos no existe.
00:14:28
Entonces tenemos que pensar.
00:14:31
¿Qué ponemos aquí?
00:14:33
Vale, pues lo que podemos hacer es una iteración.
00:14:35
Un for que llegue hasta la mitad.
00:14:38
Y en la primera iteración que muestre este y este.
00:14:41
En la segunda iteración que muestre este y este.
00:14:46
En la tercera iteración que muestre este y este.
00:14:50
Porque eso ya sí que lo puedo ir haciendo.
00:14:53
Mi va incrementando y en cada iteración muestro el cero y el led menos uno.
00:14:55
En la siguiente el uno y el led menos dos.
00:15:02
En la siguiente el dos y el led menos tres.
00:15:05
Entonces eso ya sí que lo puedo ir aquí mostrando, ¿verdad?
00:15:08
O sea, yo parto del cero.
00:15:12
Lo voy incrementando.
00:15:15
Esto ya sí que puedo hacerlo.
00:15:17
Lo voy incrementando.
00:15:19
Lo voy incrementando y en cada iteración no me limito a mostrar solamente el cero.
00:15:21
Si este array se llama nu.
00:15:29
No me limito a mostrar solamente el y.
00:15:32
Sino el y susimétrico.
00:15:35
Ese es el tema, ¿vale?
00:15:37
En cada iteración muestro el y y susimétrico.
00:15:39
Entonces, el simétrico del y, ¿cuál va a ser?
00:15:42
¿Vale?
00:15:50
El simétrico del cero es el N mayúscula menos uno.
00:15:51
El simétrico del uno es N mayúscula menos dos.
00:15:54
El simétrico del dos es el N mayúscula menos tres.
00:15:57
Luego, ¿cómo puedo expresar el simétrico del y en general?
00:16:02
¿Vale? Veis la regla.
00:16:09
El simétrico del cero es el N menos uno.
00:16:10
El cero susimétrico es el N menos uno.
00:16:12
El simétrico del uno es el N menos dos.
00:16:15
El simétrico del dos es el N menos tres.
00:16:18
Pues la pregunta es, ¿para un y genérico cuál será su simétrico entonces?
00:16:21
¿Cuál es la regla?
00:16:25
Vemos que la regla sigue esta serie.
00:16:27
Para un y genérico, ¿cuál será?
00:16:29
Dictadmelo, ¿cuál sería?
00:16:34
¿Para y?
00:16:36
¿Cuál sería en función de y su simétrico?
00:16:37
¿Qué le he medido a algo?
00:16:43
¿N menos y?
00:16:45
Vamos a ver.
00:16:47
Si se cumple para cero, según tu regla me da N menos cero, cero.
00:16:48
No es exactamente N menos y.
00:16:53
¿Cuál sería?
00:16:54
Esta y N menos y no te da esta regla.
00:16:58
¿Cuál sería entonces?
00:17:06
No, más más no.
00:17:12
No estoy pidiendo más más.
00:17:13
Lo que estoy diciendo es, si para cero es N menos uno, para uno es N menos dos,
00:17:14
para dos es N menos tres, pues para y en general, ¿cuál será entonces?
00:17:19
¿Cómo?
00:17:24
Que no, N menos menos no.
00:17:27
No penséis ahora en programas, en incrementar.
00:17:29
Esto es una regla, es como si fuera una regla de tres.
00:17:32
Si para cero es N menos uno, para uno es N menos dos, para dos es N menos tres,
00:17:35
para tres es N menos cuatro, pues para y va a ser entonces.
00:17:39
Mira, alguien me lo tiene que decir.
00:17:53
A lo mejor lo veis más claro pensando en la X.
00:18:02
Para X igual a cero es N menos uno, para X igual a uno es N menos dos,
00:18:05
para X igual a dos es N menos tres.
00:18:09
Pues para X genérico, ¿cuál será entonces la función que lo representa?
00:18:11
Si es parecida a la que me has dicho.
00:18:19
¿N menos, entre paréntesis, Y más uno?
00:18:21
Eso ya sí.
00:18:24
Para Y, lo que pasa es que te complican la vida, ¿no?
00:18:26
Es mejor esta.
00:18:30
Es la misma que le has dicho, me da igual decir N menos Y más uno,
00:18:32
me da lo mismo que decir N menos Y menos uno, ¿no?
00:18:36
Pues la regla de los signos es lo mismo.
00:18:39
Pero bueno, ¿vale?
00:18:41
Ahora ya sí, para Y igual a cero es N menos uno, porque esto es cero.
00:18:43
Para Y igual a uno es N menos dos, porque esto es uno.
00:18:47
Para Y igual a dos es N menos tres.
00:18:51
Ahora ya sí, esta es la fórmula que me dice para cada posición Y,
00:18:55
su simétrica.
00:19:00
Para cada posición Y, su simétrica.
00:19:02
¿Vale?
00:19:04
Entonces yo parto de esta regla y veo, ah, vale, pues es cero N menos uno,
00:19:05
uno N menos dos.
00:19:09
Pues ¿cuál es la general para Y?
00:19:11
Pues esta, ¿no?
00:19:13
Y efectivamente, cuando Y es cero es N menos uno.
00:19:14
Pero cuando Y es uno es N menos dos.
00:19:16
Cuando Y es dos es N menos tres.
00:19:18
¿Vale?
00:19:20
Pues ya tengo la fórmula general.
00:19:21
El simétrico en un array de la posición Y es esta,
00:19:23
siendo este el tamaño del array, claro, siendo este el tamaño.
00:19:27
Pues ahora ya en mi bucle FOR muestro este y su simétrico,
00:19:30
que su simétrico es N menos Y menos uno.
00:19:35
Y ya está.
00:19:38
¿Vale?
00:19:39
Entonces en cada iteración muestro y su simétrico.
00:19:40
¿Vale?
00:19:43
Me ha quedado algo sin definir todavía, que es la condición.
00:19:46
¿Cuándo paro?
00:19:51
Yo no quiero recorrer el FOR entero,
00:19:55
porque para Y igual a cero muestro este y este.
00:19:58
Para Y igual a uno muestro este y este.
00:20:01
Para Y igual a dos muestro este y este.
00:20:03
¿Dónde me quiero quedar?
00:20:05
Me quiero quedar en la mitad del array.
00:20:07
¿Verdad?
00:20:09
Me quiero quedar en la mitad.
00:20:10
Entonces pondría, efectivamente,
00:20:12
mientras Y sea menor o igual que N entre dos.
00:20:14
Y esto es lo que se queda a revisar en las pruebas,
00:20:19
porque en función de si N es par o es impar,
00:20:24
pues a lo mejor el del medio me lo duplica, no me lo duplica,
00:20:26
pero esto ya sí que es una cuestión de refinar.
00:20:29
¿Vale?
00:20:31
Ya la parte gorda ya estaría.
00:20:32
¿Vale?
00:20:34
El ver que yo puedo hacer esto con un FOR en el que voy mostrando.
00:20:35
Para Y igual a cero, este y este.
00:20:38
Para Y igual a uno, este y este.
00:20:40
Para Y igual a dos, este y este.
00:20:42
Entonces una vez que me he dado cuenta que con un único FOR
00:20:44
puedo hacer este recorrido a saltos,
00:20:47
pues ahora ya digo, ¿vale?
00:20:52
Pues, ¿cómo hago para mostrar uno y su simétrico?
00:20:54
Bueno, pues saco la regla.
00:20:58
Y luego ya me queda por perfilar
00:21:00
dónde me tengo que parar en la mitad.
00:21:02
Pero insisto, la mitad es que es distinta.
00:21:03
Porque si el array tiene cinco posiciones,
00:21:05
¿vale?
00:21:08
La mitad es la del medio.
00:21:09
Y si el array tiene seis, pues no hay la del medio.
00:21:12
Pero esto ya se puede refinar viendo las pruebas.
00:21:15
Si es menor, menor o igual, si no nos gusta, etc.
00:21:18
¿Vale?
00:21:22
Bueno, pues vamos a hacerlo entonces.
00:21:23
Pues no había, no tenía puesta la pizarra, pero bueno.
00:21:32
Vale.
00:21:39
A ver.
00:21:47
Bueno, vamos a programar eso mismo que hemos hecho entonces.
00:21:50
Aquí primero tendremos que decirle cuántos números quiere.
00:21:55
Luego esta parte es la de siempre.
00:22:00
¿Cuántos números va a introducir?
00:22:03
Estos de aquí.
00:22:05
Vale.
00:22:07
Ay, me he dejado el agua.
00:22:33
Vale.
00:22:36
¿O no?
00:22:39
Pues sí.
00:22:43
Vale, pues ya está.
00:22:45
Ya lo vemos entonces.
00:22:46
Vale, pues a ver.
00:22:51
¿Cuántos números va a introducir?
00:22:52
En ella lo tenemos.
00:22:53
Ahora vamos a programar.
00:22:54
¿Cuántos números va a introducir?
00:22:55
En ella lo tenemos.
00:22:56
¿Cuántos números va a introducir?
00:22:57
En ella lo tenemos.
00:22:58
Vale, pues a ver.
00:22:59
¿Cuántos números va a introducir?
00:23:00
En ella lo tenemos.
00:23:01
Ahora vamos a plantar ese bucle.
00:23:02
Bueno, primero el bucle para rellenarlos, claro.
00:23:03
¿Qué?
00:23:11
Ah, bueno.
00:23:12
Perdón, no he declarado el Array.
00:23:13
Ni siquiera.
00:23:14
Declaramos el Array.
00:23:15
Declaramos el Array.
00:23:16
new int de n mayúscula.
00:23:26
Ahora ya, lo rellenamos desde i igual a cero,
00:23:33
mientras i sea menor que números punto length,
00:23:35
incrementando i,
00:23:40
pues le pedimos el número.
00:23:43
No pongo ni el mensaje de pedir para que sea más rápido.
00:23:45
Números de i igual a este next int.
00:23:50
¡Hala! Ya está el Array relleno.
00:23:59
Ya le hemos metido los n mayúscula números.
00:24:01
Y ahora vamos a poner lo que hemos dicho en la pizarra.
00:24:05
A ver qué nos sale.
00:24:07
Y ahora desde i igual a cero,
00:24:09
llegando hasta la mitad del Array.
00:24:11
Pues, ¿qué tenemos que hacer?
00:24:23
Pues lo que hacemos es,
00:24:25
si les vamos a mostrar seguidos,
00:24:27
pues vamos a mostrar,
00:24:29
primero el números de i,
00:24:30
luego un espacio,
00:24:34
y luego el tamaño del Array,
00:24:37
que era números de length.
00:24:42
Podría ponerle mayúscula, es lo mismo,
00:24:44
pero bueno, para que sea más genérico.
00:24:46
Voy a poner aquí debajo para que se vea mejor.
00:24:48
¡Uy!
00:24:51
¡Joder! ¡Vete fuera!
00:24:56
Números de
00:25:02
números.length menos uno menos i.
00:25:07
Y concatenado con un espacio
00:25:13
para que luego el siguiente
00:25:15
esté separado también.
00:25:18
Entonces esto es, muestro el i
00:25:19
y muestro el simétrico del i.
00:25:21
El simétrico del i es ese.
00:25:23
Es el simétrico del i.
00:25:26
Recordad que esto es como si fuera N mayúscula.
00:25:27
Es el tamaño del Array.
00:25:30
Ese es el simétrico del i.
00:25:31
Vale.
00:25:34
Pues vamos a probar
00:25:37
primero con una cantidad par de números.
00:25:40
A ver si nos sale bien.
00:25:44
¿Cuántos números va a introducir?
00:25:49
6.
00:25:50
Venga, el 1, el 2, el 3, el 4, el 5 y el 6.
00:25:52
¿Vale?
00:25:58
Ah, es que he puesto el print del N, perdón.
00:25:59
Entonces no se ve bien.
00:26:01
Vamos a limpiar esto antes que nada.
00:26:04
Yo los quería seguidos todos.
00:26:07
Esto lo quería.
00:26:09
Vale.
00:26:11
6.
00:26:14
Vamos a introducir el 1, el 2,
00:26:15
para ver bien si está primero o último.
00:26:17
Si los ponemos así seguidos se ve más fácil.
00:26:20
4, 5 y 6.
00:26:22
Vale.
00:26:24
1 y 6.
00:26:25
Muy bien.
00:26:26
1 y 6.
00:26:27
2 y 5.
00:26:28
Muy bien.
00:26:29
3 y 4.
00:26:30
Muy bien.
00:26:31
¿Y qué ha pasado?
00:26:32
Que se ha pasado de vueltas.
00:26:34
¿Verdad?
00:26:37
Claro.
00:26:38
¿Esto cómo lo arreglamos?
00:26:39
¿Qué arreglamos aquí?
00:26:40
Ha llegado una más.
00:26:42
Ha pasado una de más.
00:26:44
¿Eh?
00:26:47
No, no, no.
00:26:52
Esto está bien.
00:26:53
Esto no es incuestionable.
00:26:54
El simétrico de Y es este.
00:26:55
No, el problema no es ese.
00:26:56
Ah, vale, vale.
00:27:00
El problema está aquí en la condición.
00:27:01
Que he llegado a una más de las que quería llegar.
00:27:03
¿Verdad?
00:27:05
O también podríamos poner esto.
00:27:07
¿No?
00:27:10
Vale.
00:27:12
Vamos a probar.
00:27:13
Ahora ya esta es la parte de refinar.
00:27:14
Pero claro, uno ya puede refinar porque no lo está haciendo al tuntuna.
00:27:16
Porque planteando el ejercicio lo entiende, sabe cómo es.
00:27:19
Y ahora ya sabe que hay un matiz que es donde me paro para no seguir y pasarme.
00:27:22
Y ahora mostrar este y su simétrico.
00:27:27
Y su simétrico será para arriba.
00:27:29
¿Vale?
00:27:31
Entonces esta parte de refinar.
00:27:32
Pues venga, vamos a introducir 6 números.
00:27:35
Vale.
00:27:37
1, 2, 3, 4, 5 y 6.
00:27:39
Ahora sí.
00:27:44
El 1 y el 6.
00:27:47
El 2 y el 5.
00:27:48
El 3 y el 4.
00:27:49
¿Vale?
00:27:51
Claro, tiene sentido.
00:27:53
¿Por qué?
00:27:54
Si el tamaño de la raíz es 6.
00:27:55
Yo me quiero parar.
00:27:57
Quiero llegar hasta 2.
00:27:58
0, 1 y 2.
00:27:59
Si el tamaño de la raíz es 8.
00:28:02
Yo quiero llegar hasta 3.
00:28:04
0, 1, 2 y 3.
00:28:05
Entonces no tengo que llegar hasta la mitad.
00:28:07
Sino hasta la mitad menos 1.
00:28:09
O sea menor que.
00:28:11
¿Vale?
00:28:12
Claro, ahora.
00:28:14
Ahora es cuando hacemos vale.
00:28:15
Para el caso par está claro donde me tengo que parar.
00:28:17
Ahora vamos a ver qué pasa si la raíz es impar.
00:28:20
Si la raíz es impar.
00:28:22
Este programa también funciona.
00:28:24
Vamos a probarlo.
00:28:27
Venga, ¿cuántos números va a introducir?
00:28:30
5 números.
00:28:32
1, 2, 3, 4 y 5.
00:28:35
¿Vale?
00:28:39
El 1 y el 5.
00:28:40
Muy bien.
00:28:41
El 2 y el 4.
00:28:42
Muy bien.
00:28:43
Y el 5 que tendría que ir al final.
00:28:44
Es el que se ha quedado suelto.
00:28:46
¿Vale?
00:28:48
¿Vale?
00:28:50
Entonces podemos arreglar esto de muchas maneras.
00:28:51
Yo que sé.
00:28:53
¿Cómo se os ocurriría arreglarlo?
00:28:54
Siempre tenemos la solución fácil.
00:28:57
Que es distinguir.
00:28:58
En función de si n es par.
00:29:00
O impar.
00:29:02
Si n es impar.
00:29:03
Efectivamente.
00:29:04
Yo sí que quiero llegar aquí.
00:29:05
Sí que quiero hacer menor o igual.
00:29:07
Ese es el tema.
00:29:08
Que si n es impar.
00:29:10
Me interesa que esto sea menor o igual.
00:29:11
Y si n es par.
00:29:13
Me interesa que no sea menor o igual.
00:29:15
Ese es el asunto.
00:29:17
El único matiz.
00:29:18
Porque si n es impar.
00:29:20
Sí que tengo que llegar hasta.
00:29:21
Hasta n entre 2.
00:29:25
¿Vale?
00:29:28
Porque si yo le pongo menor o igual ahora.
00:29:29
Y le doy el impar.
00:29:31
¿Vale?
00:29:40
¿Cuántos números va a introducir?
00:29:41
Vale.
00:29:42
Pues venga.
00:29:43
5.
00:29:45
1.
00:29:46
2.
00:29:47
3.
00:29:48
4.
00:29:49
Y 5.
00:29:50
Vale.
00:29:51
1, 2.
00:29:53
1, 5.
00:29:54
2, 4.
00:29:55
3.
00:29:56
Y su simétrico.
00:29:57
Que es el mismo.
00:29:58
Pero entendemos lo que pasa.
00:30:01
Que es lo que importa.
00:30:02
Ahora otra cosa es que le preguntemos al usuario.
00:30:03
Cuando es impar.
00:30:05
Este le quieres mostrar dos veces.
00:30:06
O solo una.
00:30:07
Pero eso ya es otro tema.
00:30:08
¿Vale?
00:30:09
Lo que quiero es que entendáis.
00:30:10
Para que uno vaya optando.
00:30:11
Los arreglos que quiera.
00:30:12
¿Vale?
00:30:14
Entonces.
00:30:16
Pues una cosa que podríamos hacer.
00:30:17
Primero.
00:30:18
¿Vale?
00:30:20
¿Cómo arreglaríais que esto queremos que sea?
00:30:22
Menor o igual.
00:30:24
Cuando es impar.
00:30:26
Y menor cuando es par.
00:30:27
¿Vale?
00:30:34
O también podríamos hacerlo.
00:30:35
Menor.
00:30:37
Que una variable.
00:30:38
Y esa variable.
00:30:39
Que si n es par.
00:30:41
Tome n-2.
00:30:42
Y si n es impar.
00:30:44
Tome n-2-1.
00:30:45
Es decir.
00:30:49
Por ejemplo.
00:30:50
Para que no se os vayan olvidando las cosas.
00:30:52
Podríamos poner.
00:30:54
n es par.
00:30:56
Pues si n es par.
00:31:02
Entonces.
00:31:04
¿A dónde quiero yo llegar?
00:31:05
Si n es par.
00:31:07
Quiero llegar a.
00:31:08
n-2.
00:31:10
n-2-1.
00:31:18
Pero si n es impar.
00:31:22
Entonces quiero llegar a n-2.
00:31:24
Uy.
00:31:26
N mayúscula.
00:31:27
Entre dos colines.
00:31:28
¿Vale?
00:31:32
Y aquí me sobra esta interrogación.
00:31:33
Que va aquí.
00:31:34
Vale.
00:31:38
Entre dos.
00:31:47
Menos uno.
00:31:50
Y ahora n entre dos.
00:31:51
Ya está.
00:31:52
Ay.
00:31:57
Perdón.
00:31:58
Perdón.
00:31:59
Si, si, si.
00:32:00
Que he puesto mal el paréntesis.
00:32:01
Si, si, si, si.
00:32:02
Ah.
00:32:03
Si.
00:32:04
Vale.
00:32:05
Vale.
00:32:08
Que a nadie le vuelva loco esto.
00:32:09
Concentraros.
00:32:10
Tenéis que.
00:32:11
Ver con solturas los códigos.
00:32:13
¿Cuál era aquí el problema?
00:32:15
¿Vale?
00:32:17
¿Cuál es aquí el problema?
00:32:18
Y menor o igual.
00:32:19
Está claro.
00:32:20
Pero si el número es par.
00:32:21
Si el número es par.
00:32:23
Yo no quiero llegar hasta n entre dos.
00:32:24
No quiero llegar hasta n entre dos.
00:32:26
Si no quiero llegar hasta n entre dos menos uno.
00:32:27
Si el número es par.
00:32:29
Sin embargo.
00:32:31
Si el número es impar.
00:32:32
Quiero llegar hasta n entre dos.
00:32:33
Ahí sí.
00:32:34
Bueno.
00:32:35
Pues entonces.
00:32:36
¿Y menor o igual que qué?
00:32:37
Pues depende.
00:32:39
Y menor o igual que n entre dos menos uno.
00:32:41
O menor o igual que n entre dos.
00:32:43
Depende de esto.
00:32:45
El operador ternario.
00:32:46
Porque ya vimos en otro momento.
00:32:47
¿Vale?
00:32:51
Entonces.
00:32:52
Para lo que hay después de menor o igual.
00:32:54
Tengo dos opciones.
00:32:55
O esto.
00:32:56
O esto.
00:32:57
¿De qué depende?
00:32:58
De esta condición.
00:32:59
Vamos a probar.
00:33:08
Por si lo hemos escrito bien o mal.
00:33:09
A ver si en los dos casos.
00:33:11
Ya sale lo que tiene que salir.
00:33:13
Salvo el matiz este que se duplica.
00:33:15
Pero eso ya se puede arreglar.
00:33:17
Vale.
00:33:19
Vamos a probarlo para la versión par.
00:33:21
A ver si lo hemos hecho bien.
00:33:23
Uno.
00:33:25
Dos.
00:33:26
Tres.
00:33:27
Cuatro.
00:33:28
Cinco.
00:33:29
Y seis.
00:33:30
Vale.
00:33:31
Funciona.
00:33:32
Y vamos a probarlo ahora.
00:33:33
Para la versión impar.
00:33:35
Cinco números.
00:33:36
Uno.
00:33:37
Dos.
00:33:38
Tres.
00:33:39
Cuatro.
00:33:40
Y cinco.
00:33:41
Vale.
00:33:42
Funciona.
00:33:43
Lo que pasa es que la versión impar.
00:33:44
El del medio.
00:33:45
Al mostrar él y su simétrico.
00:33:46
Su simétrico es sí mismo.
00:33:47
Ese es el problema.
00:33:48
El simétrico es sí mismo.
00:33:49
¿Vale?
00:33:50
Ese es el asunto.
00:33:51
Entonces.
00:33:55
Para esto.
00:33:56
Se puede arreglar.
00:33:57
Poniendo un if.
00:33:58
Lo que sea.
00:33:59
Lo ignoro ahora.
00:34:00
Porque no.
00:34:01
Me interesa ahora.
00:34:03
Ni lo quiero liar.
00:34:04
Me interesa ahora es que.
00:34:05
Entendéis el recorrido que hemos hecho.
00:34:07
Ahora no hemos recorrido.
00:34:10
Ni de arriba abajo.
00:34:11
Ni de abajo arriba.
00:34:12
Estamos recorriendo así.
00:34:13
Pues tenemos que plantearnos una forma de hacerlo.
00:34:14
Pues así lo hemos solucionado.
00:34:16
Hemos solucionado uno y su simétrico.
00:34:17
Uno y su simétrico.
00:34:19
Uno y su simétrico.
00:34:20
Para lo cual hemos sacado la relación de simetría.
00:34:21
¿Vale?
00:34:25
Y luego ya.
00:34:26
Pues hemos solucionado ese matiz.
00:34:27
Y lo que no quiero es que os olvidéis de esto.
00:34:29
De que todos los recursos que hemos visto.
00:34:32
Todos los que hemos visto.
00:34:34
Uno ya.
00:34:35
Los voy utilizando y poniendo donde le va interesando.
00:34:36
Entonces no os olvidéis de ninguno de los recursos.
00:34:39
Ni de las cosas que hayamos visto.
00:34:41
Me interesa esto.
00:34:43
Y aquí me venía muy bien.
00:34:45
Porque la variable que yo quería poner aquí.
00:34:46
En el menor o igual.
00:34:48
Dependía de una condición.
00:34:49
Aquí en el menor o igual.
00:34:52
O me interesaba poner entre dos menos uno.
00:34:53
O me interesaba poner entre dos.
00:34:55
Depende.
00:34:56
O uno u otro.
00:34:57
¿De qué dependía?
00:34:58
De esto.
00:34:59
Pues ya está.
00:35:00
Pues lo planto así.
00:35:01
Se acabó.
00:35:02
Con dos for.
00:35:03
Que se me queda un programa complicadísimo.
00:35:04
Lo tengo así mucho más fácil.
00:35:06
Porque si no tendría que hacer.
00:35:08
Si en spot.
00:35:10
Me hago el for.
00:35:11
Que sea aquí.
00:35:12
Menor o igual.
00:35:14
Que en el dos menos uno.
00:35:15
Y si en impar.
00:35:16
Me hago otro for.
00:35:17
¿Para qué?
00:35:18
Me hago un único for.
00:35:20
Y esto.
00:35:22
Que sea esto.
00:35:23
O esto.
00:35:24
En función de esa condición.
00:35:25
Bueno.
00:35:33
Pues no os olvidéis de esas cosas.
00:35:34
Ni de nada.
00:35:35
¿Vale?
00:35:36
Vale.
00:35:43
A ver.
00:35:44
Este.
00:35:46
¿Lo habéis hecho o intentado?
00:35:49
Venga.
00:35:55
Pues vamos a dedicar un ratito a él.
00:35:56
Venga.
00:35:58
Poneros a hacerlo.
00:35:59
El que ya haya hecho este.
00:36:02
Pues que avance con el siguiente.
00:36:03
Y luego nos va aquí y lo corregimos.
00:36:04
¿Vale?
00:36:06
- Subido por:
- Raquel G.
- Licencia:
- Todos los derechos reservados
- Visualizaciones:
- 5
- Fecha:
- 14 de noviembre de 2023 - 13:31
- Visibilidad:
- Público
- Centro:
- IES ROSA CHACEL
- Relación de aspecto:
- 1.78:1
- Resolución:
- 1280x720 píxeles
- Tamaño:
- 689.29 MBytes