20251010 ProgEstr-EjerIf_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:
A ver, el que has preguntado tú, Alessandro.
00:00:00
Sí, la 4.
00:00:03
Eso.
00:00:05
Si el número, te dan un número y ver si es primo o no.
00:00:06
Aquí nos complica en la vida.
00:00:10
Porque ver si es número es primo o no,
00:00:14
pues no hay un operador para saber si es número es primo o no.
00:00:16
No lo hay.
00:00:19
Como casi todo, tenemos que hacerlo por código.
00:00:20
¿Hay alguna fórmula para saber si un número es primo o no?
00:00:24
No hay ninguna fórmula.
00:00:27
Si hubiera alguna fórmula, no estaríamos cada año, cada X años, sacando el siguiente número primo.
00:00:28
Gracias a que hay unos superordenadores cuánticos haciendo operaciones a toda leche,
00:00:36
sacando cada vez el siguiente número primo.
00:00:41
No hay fórmulas, porque no hay una regla de los números primos.
00:00:44
No hay una regla.
00:00:48
Lo que hay es una condición que tienen que cumplir, que ya sabéis cuál es.
00:00:49
Que solo sean divisibles entre el y entre el 1.
00:00:52
Pero no hay una fórmula.
00:00:56
Luego nos han liado
00:00:57
Pero afortunadamente nos han dicho
00:00:59
Menor de 10
00:01:01
Pues ya está
00:01:03
Si el número es 2 o 3 o 5 o 7
00:01:05
Ya está, no hay más primo
00:01:08
No, el 1 no es primo
00:01:10
Pero no
00:01:13
Las matemáticas se construyen con axiomas
00:01:17
Que todos aceptamos
00:01:19
Y gracias a esos axiomas
00:01:20
Construimos resultados
00:01:22
Pues son esos axiomas que permiten
00:01:24
que no se desmorona en el castillo de la álgebra
00:01:26
es que el 1 no es un número primo.
00:01:28
¿Ah, sí?
00:01:30
Es una verdad axiomática.
00:01:31
El 1 no se le considera primo
00:01:34
porque si no asumieramos
00:01:36
ese axioma, que es una verdad
00:01:38
que todos acordamos que es así,
00:01:40
muchos de los resultados que hay del álgebra
00:01:42
y de topología no encajarían.
00:01:44
Entonces, el 1
00:01:48
por definición, no por otra
00:01:48
cosa, solo por definición, no es primo.
00:01:50
¿Vale?
00:01:53
a ver, tendrías que probar
00:01:56
si es menos, claro
00:02:04
divisible entre 2
00:02:05
o entre 3 o entre 7
00:02:08
no, a ver
00:02:10
una regla como tal de primos
00:02:14
no hay
00:02:15
tú dices un número cualquiera
00:02:17
ahí está claro que no es primo
00:02:22
y sin incluir el 2
00:02:25
no es primo
00:02:27
claro, pero
00:02:28
y la condición de ser primo
00:02:30
a ver si es divisible entre 2
00:02:32
no
00:02:35
el día 9 ahí
00:02:36
el día 9 y el 9 no es primo
00:02:37
claro
00:02:39
ya, el 9 tampoco
00:02:40
y no es divisible entre 2
00:02:43
claro
00:02:45
el 2 es primo
00:02:45
si, el 2 es primo
00:02:49
claro
00:02:51
el 1 no es primo
00:02:51
Pero te refieres a si es menor de 10 o para cualquiera
00:02:55
Ah, vale
00:03:02
Si es menor de 10, sí, podría decir
00:03:04
Claro, pero bueno
00:03:06
Me has dicho que si no es divisor de 2
00:03:08
O sea, el número no es primo
00:03:11
Si es divisible entre 2
00:03:13
O si es divisible entre 2
00:03:17
El 5 es divisible entre 2
00:03:20
Bueno
00:03:22
No es primo
00:03:23
Si es divisible entre 2 es diferente de 2
00:03:25
Claro, que dejaría el 9.
00:03:27
Esa es la única opción.
00:03:30
¿No? O sea, si es par o 9.
00:03:32
O sea, el único impar que hay primo, comprendido entre 1 y 10,
00:03:35
el único impar que hay es 9.
00:03:40
El único impar que hay no primo, perdón, ¿no?
00:03:42
Ah, no, el 5 también.
00:03:45
Claro, el 5, perdón.
00:03:47
Claro, el 5, el 9 no es primo.
00:03:48
Entonces, no, pero aún así aplicaría tu regla.
00:03:52
Es decir, todos los divisibles entre todos los pares excepto el 2 y además el 9 son los no primos y el resto los primos, ¿vale?
00:03:54
Lo que pasa es que, bueno, que es una regla que al fin y al cabo, si la acabas escribiendo es casi en longitud, es casi igual que decir o es el, ¿vale?
00:04:04
Pero sí, todos los pares salvo el 2 y además el 9. Esa sería una regla también de los no primos, también sería, ¿vale?
00:04:14
pero en cualquier caso, tanto esa
00:04:22
como la que podemos poner aquí o lo que sea
00:04:24
son reglas de andar por casa
00:04:25
porque no hay una fórmula
00:04:28
para el número primo, no la hay
00:04:29
entonces, pues lo más sencillo
00:04:31
pues sería
00:04:34
si número
00:04:35
es igual a
00:04:37
vamos a poner
00:04:39
a, que hay más
00:04:41
primos o no primos, para quedarnos
00:04:44
para ser más
00:04:45
hay cuatro no primos
00:04:47
y primos hay
00:04:49
No, 2, 3, 5 y 7
00:04:50
2, 3, 5
00:04:54
O sea, hay 4 primos
00:04:55
O sea, que nos da igual
00:04:57
Vale, pues venga, ponemos los primos y ya está
00:04:58
Si es igual a 2
00:05:01
O
00:05:03
Es igual a 3
00:05:03
O
00:05:07
Es igual a 5
00:05:09
O es igual a 7
00:05:15
Porque los demás son todos no primos
00:05:16
¿Verdad?
00:05:19
Si es uno de estos
00:05:24
Es primo y ya está
00:05:25
Y si no, pues no lo es
00:05:28
Entonces, ¿tenemos este programa
00:05:41
Alguna forma de hacerlo que no sea hacer esta ñapa
00:05:45
O una condición como la tuya?
00:05:48
Pues no, no tenemos otra manera
00:05:51
Porque no hay una fórmula genérica para los primos
00:05:53
Entonces, ¿qué ocurre?
00:05:56
Dime
00:05:58
Ah, pues claro
00:05:58
Pues entonces no puedes hacerlo así
00:06:05
Claro, claro, claro
00:06:07
claro, entonces, este programa
00:06:09
lo hemos podido hacer con una
00:06:11
condición relativamente cortita
00:06:13
porque me han limitado a 10
00:06:15
pero claro, ahora te dicen
00:06:17
oye, perdona, pero
00:06:19
hazme este programa para cualquier número
00:06:21
doy un número cualquiera y dime
00:06:23
si es primo o no
00:06:25
pues es imposible ampliar esto
00:06:26
tendríamos que ampliarlo hasta el infinito
00:06:29
y ni siquiera conocemos todos los números primos
00:06:31
conocemos hasta cierta cantidad
00:06:33
a ver, vamos a
00:06:35
nos inspira curiosidad
00:06:37
¿vale?
00:06:40
para saber si un número es primo o no, esta filosofía
00:06:42
nuestra de ir comprobando
00:06:44
o este, o este, o este, no vale cuando
00:06:45
lo generalizamos a cualquier número
00:06:47
entonces tendríamos que plantear este programa
00:06:49
de otra manera si queremos generalizarlo
00:06:52
¿podríamos plantearlo
00:06:53
generalizarlo? sí que podríamos
00:06:55
¿por qué?
00:06:58
sabemos que si me dan un número cualquiera
00:07:00
yo sé
00:07:02
que es primo
00:07:04
si no tiene
00:07:04
ningún divisor
00:07:07
exceptuando el mismo y el 1
00:07:09
con lo cual de ahí ya podemos
00:07:11
partir y hacer algo
00:07:13
entonces ¿cómo puedo saber yo si un número no tiene ningún divisor?
00:07:14
pues haciendo toda una cadena
00:07:18
de divisiones, dividirlo por 2
00:07:19
luego por 3, luego por 4, luego por 5
00:07:21
así hasta por n-1
00:07:23
si yo consigo dividir por 2 y luego por 3
00:07:24
y luego por 4 y luego por 5
00:07:26
y luego así hasta n-1
00:07:28
y ver si todas esas divisiones me dan falso
00:07:29
cociente falso ya lo tendría
00:07:32
Pero claro, para dividir entre 2 a la por 3 a la por n-1
00:07:34
Necesitamos un bucle
00:07:38
Que todavía no conocemos
00:07:39
Con lo cual ahora mismo no podemos generarlo
00:07:41
Porque hacer n-1 a divisiones
00:07:43
Me da un bucle
00:07:46
Un bucle que yo le diga
00:07:47
Oye, ejecútate n-1 a veces
00:07:48
¿Vale?
00:07:50
Para hacerme la división entre 2, 3, 4
00:07:52
Todavía no sabemos programar un bucle
00:07:54
Entonces no podremos generalizarlo a un número cualquiera
00:07:56
Hasta que no tengamos un bucle
00:07:59
Vale, pues este 4 ya está
00:08:00
que era esto de aquí.
00:08:03
¿Algún otro?
00:08:06
¿Uy?
00:08:07
Yo tengo un error
00:08:09
de cómo has hecho el...
00:08:09
El 8, sí, el 8.
00:08:12
Vale.
00:08:15
Vamos a saltar primero al 7
00:08:16
para saltar a unir de tres ramas
00:08:19
y luego ya hacemos el 8.
00:08:20
Entonces,
00:08:22
bueno,
00:08:23
hasta el programa 6
00:08:24
la condición será más o menos fácil
00:08:26
de construir,
00:08:29
pero el programa siempre es igual.
00:08:30
Datos de entrada.
00:08:32
unir con una condición
00:08:32
o hago una cosa o hago otra
00:08:34
y para poner esa condición
00:08:36
tengo yo que averiguar cosas
00:08:39
pues como hemos hecho antes, averiguar unidades
00:08:41
decenas, pero la estructura
00:08:43
de palabra siempre es la misma
00:08:45
aquí el programa ya no es exactamente
00:08:46
esa estructura, porque aquí
00:08:49
puede que ocurra una de tres cosas
00:08:51
¿vale?
00:08:53
aquí tenemos tres posibilidades
00:08:55
bueno, escribo
00:08:57
aquí, que se ve mejor
00:08:59
Vale, entonces vamos al 7
00:09:01
Venga
00:09:05
Aquí los datos de entrada son 3 números
00:09:06
¿Vale?
00:09:19
Entonces, en lugar de leer 2 números como aquí
00:09:22
Voy a copiar y pegar del ejercicio 6
00:09:26
Que leíamos 2 números
00:09:31
Vale, primer número, segundo número
00:09:32
Tercer número
00:09:41
Vale, los datos de entrada ya los tengo
00:09:48
Y aquí me dicen que los muestro de menor a mayor o como era esto
00:09:51
Ah, indicar, no, indicar el mayor
00:09:57
Vale, porque si no se complica todavía más
00:10:00
Indicar el mayor
00:10:02
Con lo cual aquí mi programa tiene tres posibilidades
00:10:03
O bien, el mayor es
00:10:07
Y aquí lo concateno con el valor de n1
00:10:11
El programa o bien me dice esto
00:10:14
O bien me hará esta otra cosa
00:10:17
O bien me hará esta otra cosa.
00:10:26
Entonces, son tres ramas.
00:10:29
O bien me hace una, o bien me hace esa, o bien me hace esa.
00:10:31
Esto no lo puedo meter en un if else, tal cual, un único if else.
00:10:34
Porque en un único if else, yo solamente puedo meter dos posibilidades.
00:10:40
Esta primera y esta segunda, a lo mejor.
00:10:44
Aquí tendré que anidar otro if o ver cómo lo hago.
00:10:47
Bueno, pues aquí podríamos hacer un primer if.
00:10:52
para la primera rama
00:10:55
un primer if
00:10:56
con la condición, habrá que ver
00:10:58
como la ponemos
00:11:00
el primero mayor
00:11:01
bueno, la podemos dejar puesta porque es fácil de poner
00:11:03
la condición
00:11:06
de que el primero sea el mayor
00:11:08
es que n1
00:11:10
sea mayor que n2
00:11:12
y
00:11:14
que n1 sea mayor que n3
00:11:15
vale
00:11:18
luego la primera rama la tengo
00:11:19
si n1 es mayor que n2
00:11:22
¿Y N1 es mayor que N3? El mayor es N1. Y ahora, ¿qué pasa si no se cumple esto? Si no se cumple esto, aquí en el else, es cuando aquí, pues de nuevo me falta un, no sé qué pasa, depende.
00:11:24
aquí en este else
00:11:44
de nuevo se me abren dos posibilidades
00:11:46
aquí dentro de este else
00:11:48
pues o bien
00:11:51
dentro de este else
00:11:54
o bien
00:11:58
ocurre esto
00:11:59
o bien ocurre esto de abajo
00:12:01
dentro de ese else puede ocurrir
00:12:03
o esta opción la A
00:12:05
o esta opción la B
00:12:07
luego dentro del else a su vez se me abren
00:12:08
dos posibilidades que tengo que contemplar
00:12:11
¿no?
00:12:13
repito, si esto es falso
00:12:15
o lo que es lo mismo si estoy en el ELSE
00:12:17
de nuevo
00:12:19
se me abren dos ramas, dos posibilidades
00:12:20
no sé cuál de las dos
00:12:23
bueno, pues eso que significa que
00:12:24
dentro del ELSE vamos a meter un IF
00:12:27
voy a poner aquí las llaves
00:12:29
para que quede más claro
00:12:31
y ahora, que no ocurre esto
00:12:32
vale
00:12:36
entonces, que no ocurre esto de aquí
00:12:40
pues de nuevo tengo dos posibilidades
00:12:42
que sea N2 el mayor
00:12:45
que será esta rama
00:12:47
esta rama
00:12:50
ahora ya me iría aquí
00:12:52
y ahora ya sí que sí
00:12:53
el else
00:12:55
de aquí que sería la tercera rama
00:12:56
que sería esta
00:13:00
vale, luego mi programa ahora
00:13:03
efectivamente
00:13:11
la rama de que el primero
00:13:11
sea el mayor
00:13:16
n1 el mayor
00:13:17
esta rama
00:13:21
que sí
00:13:24
ya he hecho el primer system out
00:13:26
Vale. ¿Que no? ¿Que no? Pues que no, me tengo que volver a hacer otra pregunta. ¿Es N2 el mayor? ¿Que sí? Ya tengo la respuesta. ¿Que no? Entonces es que N3 es el mayor. ¿Vale?
00:13:29
luego este es mi programa
00:13:48
un primer if, en la rama del sí tengo la respuesta
00:13:51
el mayor es N1, que no, que este es el else
00:13:54
pues dentro del else otra vez tendré que hacerme una pregunta
00:13:57
¿es N2 mayor? ya que no lo era N1
00:14:01
porque estoy en el else, sí, sí lo es
00:14:04
ah, pues ya tengo la respuesta, que no lo es
00:14:06
pues la única alternativa es que entonces sea N3
00:14:09
¿vale? luego para abrir tres posibilidades
00:14:11
N1 mayor, N2 mayor o N3 mayor
00:14:15
para abrir tres posibilidades
00:14:17
necesito dos if
00:14:19
cada if añadido
00:14:21
me abre una más
00:14:23
vale, pues aquí está
00:14:24
entonces
00:14:27
¿qué condición
00:14:28
me tocará poner aquí?
00:14:31
n2
00:14:35
es el mayor, y eso es lo mismo que decir
00:14:36
n2 mayor que n1
00:14:38
y
00:14:39
n2
00:14:41
mayor que n3
00:14:44
el mayor es n2
00:14:45
que no, el mayor es n3
00:14:48
y ya está, ya tendría el programa
00:14:50
dime
00:14:52
si n1 fuera igual a 1
00:14:55
sí, sí, sí, claro
00:15:01
aquí estoy asumiendo
00:15:02
por defecto que solamente hay 3 posibilidades
00:15:05
que sea n1 mayor, n2 mayor
00:15:07
o n3 mayor, claro
00:15:09
lo estoy dando por sentado porque solo me lo va a meter
00:15:10
si yo aquí me pongo a hacer pruebas
00:15:13
y los 3 números
00:15:15
son iguales, o uno es mayor
00:15:17
pues efectivamente
00:15:18
si n1 es igual que n2
00:15:20
esta sale
00:15:23
false, ¿no? que es el ejemplo
00:15:25
que me habéis dicho, con lo cual iría
00:15:26
al else, esta volvería
00:15:28
a salir false y me diría
00:15:30
que el mayor es
00:15:33
n3, ¿vale?
00:15:34
pero me daría eso porque se ha ido por la rama
00:15:36
del false por aquí, no porque haya llegado
00:15:38
ni a mirar n3, n3 es que ni lo ha mirado
00:15:40
con lo cual n3 puede estar por debajo de los otros dos
00:15:42
y aún así sale por este else
00:15:45
efectivamente, ¿vale?
00:15:47
si n1 y n2 son iguales
00:15:48
esto ni aplica, se va por los else
00:15:50
todo el rato y sale por aquí
00:15:52
y n3 ni ha llegado a mirarlo
00:15:55
lo que pasa es que
00:15:56
claro, si concebimos
00:15:59
que me pueda meter números iguales
00:16:01
el programa tiene más ramas
00:16:03
que yo diga, no pues, son iguales
00:16:04
los dos primeros son iguales
00:16:07
entonces si tiene más ramas tendría que anidar más if
00:16:08
pero se podría contemplar anidando más if
00:16:10
bueno, entonces
00:16:12
anidar dentro del else
00:16:31
dentro del if donde haga falta
00:16:33
uno puede meter todas las sentencias
00:16:34
que quiera, como a su vez
00:16:36
más if, ¿vale? Aquí por ejemplo
00:16:38
esto es una única
00:16:40
sentencia, lo que pasa es que es una sentencia compleja
00:16:42
porque es un if, pero es una única
00:16:44
luego aquí uno puede
00:16:46
quitar las llaves si quiere
00:16:48
¿vale? Aquí podéis
00:16:50
quitar las llaves si queréis
00:16:52
porque el if con su else
00:16:53
es una única sentencia
00:16:55
luego si quitáis las llaves
00:16:58
la máquina virtual interpreta
00:17:00
que lo que incluye el else es
00:17:02
la única sentencia que tiene después
00:17:04
que es esta
00:17:06
enterita. ¿Vale? Esto tenéis
00:17:08
que verlo como una única sentencia.
00:17:10
Entonces, si yo quito las llaves,
00:17:13
no hay ninguna confusión.
00:17:14
El ELSE asume que lo que tiene dentro es esto.
00:17:16
Y lo que haya después ya va fuera.
00:17:18
¿Vale? Que después del ELSE
00:17:20
quiero que vayan más cosas además de esto.
00:17:22
Pues ahí sí que le pongo llaves. ¿Vale?
00:17:24
Pero eso ya va a cuestión de gustos.
00:17:26
¿Vale? Bueno, pues
00:17:28
este programa está claro, ¿no?
00:17:31
entonces, solo a efectos
00:17:33
de código, a efectos de escritura
00:17:36
de código, y solo a eso, porque el programa no cambia
00:17:38
el if
00:17:40
me permite otra forma de escribir
00:17:42
los if anidados
00:17:44
porque al final los if anidados
00:17:45
imaginaos que yo aquí
00:17:48
tengo muchas ramas, entonces tal y como
00:17:49
yo he dicho, al final uno
00:17:52
va anidando, va anidando y se le queda ahí
00:17:54
un programa que va entrando dentro, va entrando dentro
00:17:56
y no pasa nada, si uno
00:17:58
ha distinguido todas las ramas, ha decidido
00:18:00
donde tiene que haber ramas nuevas, no pasa nada.
00:18:02
Pero efectos de código
00:18:04
se le pueden quedar
00:18:05
muchos ifs anidados, uno dentro de otro
00:18:07
y queda feo. Entonces, cuando
00:18:10
dentro de un else hay un if,
00:18:12
es decir, en esa situación
00:18:15
solo, cuando dentro de un else
00:18:16
hay un if, esto se puede
00:18:18
escribir de una forma más compacta,
00:18:20
que es simplemente esta.
00:18:22
Else if
00:18:29
else.
00:18:30
¿Vale?
00:18:32
Esta es otra forma de escribir
00:18:36
lo que yo he puesto antes
00:18:38
entonces
00:18:39
y esto ahora es más fácil de extender
00:18:46
vale
00:18:48
esto, la estructura
00:18:49
if, else, if
00:18:54
me abre una forma fácil de codificar
00:18:55
un programa en el que tengo un montón de ramas
00:18:58
me hace una estructura fácil
00:19:00
vale, esta estructura de if, else, if
00:19:01
como es exactamente
00:19:04
vamos a escribirla
00:19:06
para que quede más
00:19:07
clara
00:19:12
vale
00:19:14
a ver
00:19:16
esto se puede ir fuera todo
00:19:19
bueno
00:19:32
ya se ha ido fuera
00:19:33
no sé dónde pero está guardado
00:19:37
otra cosa es que lo podéis recuperar
00:19:39
pero guardado está
00:19:41
vale pues a ver
00:19:43
otra sintaxis para el if
00:19:45
cuando hay anidados
00:19:48
la estructura que llamamos
00:19:49
if el se if
00:19:52
bueno pues esta estructura
00:19:53
viene que ni pintada
00:19:56
cuando tenemos un programa
00:19:58
que yo he identificado
00:20:00
que tiene varias posibilidades
00:20:02
tiene varias
00:20:04
y cada una de ellas por tanto tiene asociado
00:20:05
una condición
00:20:08
si se da la condición 1 quiero hacer
00:20:09
esto, pero si se da
00:20:12
la condición 2 quiero hacer esto
00:20:14
pero si se da la 3
00:20:17
quiero hacer esto
00:20:18
y así la 4, la 5, la 6
00:20:19
pues esto es algo que podemos identificar en un código
00:20:22
perdón
00:20:24
en un enunciado, nos damos cuenta
00:20:26
de que un enunciado puede hacer
00:20:28
un montón de posibilidades
00:20:30
y cada una depende de una condición.
00:20:32
Vale.
00:20:35
Pues eso podríamos hacerlo construyendo
00:20:36
if, else, if, anidar, pero es más fácil
00:20:38
con esa estructura.
00:20:40
¿Cómo programamos esta estructura
00:20:42
de muchas ramas,
00:20:44
cada rama asociada a una condición?
00:20:46
¿Cómo la programamos?
00:20:48
Pues haríamos
00:20:50
if
00:20:51
la primera condición
00:20:53
y aquí lo que se hace
00:20:55
si se cumple la primera condición
00:21:00
ahora me voy a la segunda rama
00:21:03
else if
00:21:05
con un espacio entre medias
00:21:09
y se me ha olvidado
00:21:11
poner la condición
00:21:13
y dentro un if
00:21:14
sí, pero es que entonces
00:21:18
tienes ahí una cantidad de anidados
00:21:19
que es más difícil
00:21:21
para la máquina virtual es lo mismo
00:21:22
pero es menos legible a la vista
00:21:24
el único objetivo es que sea más legible
00:21:26
Pero te da lo mismo ELSE
00:21:28
Abrir la llave y un IF
00:21:30
Y luego en su ELSE de aquí abrir la llave y el IF
00:21:31
Que escribirlo así es lo mismo
00:21:33
Pero esto es más legible
00:21:34
Entonces aquí
00:21:36
Ponemos
00:21:37
La condición 3
00:21:39
Y aquí lo que se hace
00:21:42
Perdón, la 2
00:21:45
La que sea
00:21:46
Condición 2
00:21:47
Ahora, ¿tengo yo otra rama más?
00:21:51
Pues ELSE
00:21:55
Espacio IF
00:21:56
la condición siguiente
00:21:58
condición 3
00:22:02
aquí lo que se haga
00:22:04
en la rama 3
00:22:06
y así me puedo extender con el seif
00:22:07
el seif, el seif
00:22:09
con todas las condiciones que ya he marcado
00:22:10
y puedo poner un else final
00:22:13
un segundo
00:22:15
ese else significa
00:22:16
la última rama
00:22:19
cuando no se cumple ninguna de las anteriores
00:22:21
en el else final
00:22:24
yo no pongo condición
00:22:26
en ese final no pongo condición
00:22:27
entonces
00:22:29
¿cómo funciona esto?
00:22:31
cuando a la máquina virtual le toca ejecutar esto
00:22:33
evalúa
00:22:36
la primera condición
00:22:37
que se cumple, hace esto
00:22:38
y fuera, se acabó, seguimos por el final
00:22:41
se acabó la sentencia
00:22:44
ya no hay más que hacer
00:22:45
la sentencia compleja es toda esta
00:22:46
evalúa primera condición
00:22:48
se cumple, entro a hacer lo que hay dentro
00:22:50
y ya he terminado
00:22:53
me largo de ahí
00:22:55
Me largo de ese if, el if, el if, el if, me largo
00:22:57
Y continúo con el resto del programa
00:22:59
Vale, que resulta que es falsa
00:23:01
Pues entro a evaluar la segunda
00:23:03
¿Qué le pasa a esta?
00:23:05
Ah, esta es true, genial
00:23:07
Entro a hacer lo que hay aquí dentro
00:23:09
Y listo, me piro de ahí
00:23:11
Me piro de ahí y ya me voy
00:23:13
Fuera de todo este if, el if, a continuar con el resto
00:23:14
Eso sí ha sido true
00:23:17
¿Pero qué ha sido falsa?
00:23:20
Pues me voy a la tercera
00:23:21
Es decir, las vamos evaluando
00:23:23
Una por una
00:23:25
hasta que encontramos una que es true
00:23:26
en cuanto encontramos una que es true
00:23:28
entramos en ella
00:23:31
la ejecutamos y nos piramos
00:23:32
de allí ya
00:23:35
las vamos evaluando todas una tras otra
00:23:35
y ninguna es true
00:23:39
pues hacemos lo que hay en el else
00:23:40
hacemos lo que hay en el else y nos piramos
00:23:41
que el else es opcional
00:23:44
exactamente igual que en el if sencillo
00:23:48
el else es opcional
00:23:50
podríamos no haber un else
00:23:51
y en ese caso
00:23:53
si todas son falsas
00:23:55
pues no se hace nada, si todas son falsas
00:23:57
no se hace nada, ¿vale?
00:23:59
Entonces, esto
00:24:03
dime, no, no, no
00:24:04
porque esto es if, else, if, else
00:24:09
if, else, if, van todas anidadas
00:24:11
y aquí se ve muy claro que son condición 1, condición 2
00:24:12
condición 3, claro, esto
00:24:15
en realidad, ¿qué es? Este programa
00:24:16
es el mismo que si hiciéramos un
00:24:19
if, else, dentro de este else
00:24:21
si hiciéramos un if, else, y dentro de su
00:24:23
else, si hiciéramos un if, else
00:24:25
sería el mismo programa, porque
00:24:26
¿Qué significaría? ¿Se cumple esta condición?
00:24:28
Sí, la hago, muy bien, y me piro.
00:24:31
No se cumple, entro en el ELSE.
00:24:33
El ELSE a su vez tengo un IF dentro,
00:24:35
que ese ya iría tabulado por estilo.
00:24:37
Que se cumple, entro, y me piro.
00:24:39
Que no, entro en su ELSE.
00:24:41
En su ELSE a su vez habría un IF dentro.
00:24:42
Me queda súper feo, tanto IF, ELSE, anidado dentro del ELSE.
00:24:44
Entonces, como la idea es la misma, la idea es esta.
00:24:49
Un montón de condiciones las voy evaluando
00:24:53
en cuanto encuentro una que se cumple.
00:24:56
ejecuto y me piro. Como la idea es la misma,
00:24:58
lo que se ejecuta es lo mismo,
00:25:01
pues una forma más cómoda de escribirlo,
00:25:03
más ágil es esta.
00:25:05
Y felseí, felseí, felseí, y un else final
00:25:06
si quiero.
00:25:08
Solo se va a ejecutar
00:25:11
una única rama.
00:25:13
Porque en cuanto
00:25:14
encontremos una condición que es cierta,
00:25:15
entramos ahí
00:25:19
y el resto ya como si no existiera.
00:25:20
¿Vale? Luego,
00:25:25
cuando identificamos un programa
00:25:27
que tiene varias posibilidades
00:25:28
varias ramas
00:25:31
pues cascamos un if, el seif, el seif
00:25:33
con una condición por cada rama
00:25:37
y ya está
00:25:39
¿vale?
00:25:40
que es
00:25:44
lo que
00:25:45
hemos hecho
00:25:46
aquí
00:25:49
aquí, ¿vale?
00:25:51
que es lo que hemos hecho aquí
00:26:01
aquí hemos identificado
00:26:03
que nuestro programa tiene tres posibilidades
00:26:07
que el mayor sea N1
00:26:10
que el mayor sea N2
00:26:12
o la restante
00:26:14
de las anteriores, que el mayor sea N3
00:26:16
pues hemos dicho
00:26:18
tres ramas, pues uní felse y felse
00:26:20
y voy poniendo
00:26:22
las condiciones, esta
00:26:24
la condición para la primera rama, que el mayor sea N1
00:26:26
esta
00:26:28
la condición para la segunda rama, que el mayor
00:26:29
sea N2
00:26:32
y la restante, que es
00:26:32
si las anteriores no se cumplen,
00:26:35
la restante la puedo poner en un else.
00:26:37
Que la quiero yo poner aún así en un else if
00:26:41
y ponerle aquí
00:26:43
la condición para el n3 mayor.
00:26:45
n3 es mayor
00:26:55
que n1 y n3 mayor que n2.
00:26:56
Vale, pues estoy haciendo lo mismo
00:27:00
que antes.
00:27:02
Asumiendo que los tres números son distintos.
00:27:04
Claro, los tres números son distintos.
00:27:05
Vale, aquí las he puesto
00:27:08
específicamente.
00:27:09
Tres ramitas. Pues un if, el se,
00:27:11
if-else-if, si se cumple esta
00:27:13
hago esto, si se cumple esta hago esto, si se cumple
00:27:15
esta hago esto, si no se cumple
00:27:17
ninguna de las tres, lo que hubiera
00:27:19
en el else, que como no hay
00:27:21
nada, pues no
00:27:23
haría nada, pero
00:27:25
esto ya me permite de forma más
00:27:27
cómoda generalizar el programa
00:27:29
a si quiero contemplar más posibilidades
00:27:31
que los dos primeros sean iguales
00:27:33
y el tercero no, que el
00:27:35
primero y el segundo sean iguales y el tercero no
00:27:37
o sea, ya con el if-else-if de forma más ágil
00:27:39
puedo abrir ramas fácilmente
00:27:41
fijando para cada una
00:27:44
la condición que sea y ya está
00:27:46
¿vale?
00:27:48
luego es otra estructura
00:27:50
para un if que tiene
00:27:52
en el elseanidad otro if
00:27:53
es una forma más cómoda de programarlo
00:27:55
¿vale?
00:27:58
vale, entonces ahora ya sí que sí
00:28:02
nos vamos al
00:28:04
7, no al 8
00:28:06
¿no? que decías tú
00:28:08
el 8
00:28:10
Venga, programita 8
00:28:10
Ejero 8
00:28:18
¿Tú no le das programación a la otra clase?
00:28:29
No, ya estás viendo que no
00:28:34
No, no, no, yo doy en segundo
00:28:35
¿Y este paro no da en segundo?
00:28:39
Da en segundo, pero un módulo más
00:28:44
El módulo estativo
00:28:46
En segundo, si
00:28:47
Todo va bien por vuestra parte
00:28:53
Y todo va bien por la mía
00:28:55
Pues quien más os va a hacer sufrir soy yo
00:28:56
Vale, pues venga
00:29:00
Esto era leer un numerito
00:29:03
Y hacer algo con él
00:29:05
Que veremos a ver que era
00:29:10
Ala, nuestro número
00:29:12
Este de aquí
00:29:18
Número
00:29:20
Me han limitado, verdad, el número de cifras, ¿no?
00:29:21
Porque si no, me han liado parda
00:29:26
me la han limitado a 3
00:29:28
porque si no me la han limitado a 3
00:29:31
tendría que hacerlo con bucles, muy complicado
00:29:32
entonces
00:29:34
aquí
00:29:36
leer un número de 3 cifras
00:29:37
y mostrar el mayor posible
00:29:40
entonces, bueno, pues aquí
00:29:42
nos lo podemos
00:29:44
plantear como
00:29:45
igual que ya sabemos
00:29:49
sacar las centenas
00:29:55
y las unidades, porque eso
00:29:57
ya sabemos sacarlo, porque lo hemos resuelto en un programa
00:29:59
anterior, si averiguáramos
00:30:01
ahora sacar
00:30:04
las decenas, ya sabemos
00:30:05
que el mayor número lo construiríamos
00:30:07
poniéndose
00:30:10
en el caso de que no tenga un signo
00:30:11
negativo.
00:30:14
Porque me han dicho que lo amplíe. Vamos a hacer primero la variante
00:30:15
en el cual todos los gemelos son positivos.
00:30:17
Luego ya lo ampliamos y ahorita es negativo.
00:30:20
Vamos a, ahora mismo, olvidar
00:30:22
el signo. Vale.
00:30:23
Pues se debe tener un número positivo de tres cifras.
00:30:27
Yo ya sé sacar las centenas,
00:30:30
a sacar las unidades y podría
00:30:31
tratar de ver cómo sacar las decenas.
00:30:33
Si lo consigo en tres números separados
00:30:35
pues se trata de
00:30:37
construir un número que la cifra
00:30:39
más alta es
00:30:41
la cifra de las centenas
00:30:43
es la mayor de las anteriores
00:30:45
que sería aquí el 7.
00:30:47
La cifra de las decenas
00:30:51
sería la
00:30:53
intermedia de las anteriores, que en este
00:30:55
caso sería el 3. Y la cifra
00:30:57
de las unidades tendría que ser la más
00:30:59
pequeñita de las anteriores, que en este caso
00:31:01
sería el 2, esa sería la idea
00:31:03
separar las tres cifras
00:31:05
y luego concatenarlas
00:31:07
o hacer la operación que sea
00:31:09
para construir un número cuyas
00:31:10
centenas son el mayor de estos
00:31:13
las decenas son el intermedio de estos
00:31:14
y las unidades son el más pequeño
00:31:17
de estos, entonces aquí ya
00:31:19
nos podemos apoyar en algo
00:31:21
que ya sabemos, que es lo que siempre hacemos
00:31:23
según vamos resolviendo, haciendo programas, haciendo
00:31:25
software, haciendo lo que sea, vamos adquiriendo
00:31:27
un conocimiento sobre el que nos tenemos que ir apoyando
00:31:29
¿vale? siempre nos apoyamos
00:31:31
en cosas que ya hemos hecho
00:31:33
de ahí que sea fundamental para cualquier
00:31:34
desarrollador tener muchísima memoria
00:31:37
¿vale? ya no solo capacidad
00:31:39
lógica, sino memoria, porque uno se va
00:31:41
apoyando todo el rato en conocimientos que ya
00:31:43
ha incorporado cuando ha resuelto
00:31:45
un problema, aquí ya sabemos
00:31:47
sacar centenas y unidades
00:31:49
¿podríamos hacer decenas?
00:31:50
seguro que también sabemos sacarlas
00:31:53
cuando ya las tengamos
00:31:54
sacamos el mayor número
00:31:57
sacamos el menor, que también sabemos hacerlo
00:31:59
comparando con menor que, mayor que
00:32:01
el restante será el intermedio
00:32:02
y componemos ya el final
00:32:04
luego ya tenemos las partes
00:32:06
ahora ya se trata de que construyamos
00:32:08
nuestro pudi
00:32:11
¿vale?
00:32:11
venga, pues a ver
00:32:15
y no se ve
00:32:17
sabemos que tenemos que sacar
00:32:19
centenas, decenas de unidades
00:32:23
hasta ahí hemos llegado
00:32:25
las centenas, que suerte que ya sabemos sacarlas
00:32:26
Que era el cociente de dividir entre 100
00:32:29
Las unidades también sabemos sacarlas
00:32:31
Que es el resto de dividir entre 10
00:32:35
¿Verdad?
00:32:39
El resto de dividir entre 10, sí
00:32:42
Y ahora, las decenas
00:32:43
¿Se os ocurre qué operaciones, operación o algo que podemos hacer para sacar las decenas
00:32:46
De un número que tiene tres cifras?
00:32:54
yo lo que he hecho es coger
00:32:56
el resto de dividirlo entre 100
00:32:58
y luego ese lo divido entre 10
00:33:00
claro, o sea, si hacemos el resto
00:33:02
de dividir entre 100
00:33:04
te sale
00:33:06
esto de aquí siempre
00:33:07
y ahora este de aquí
00:33:10
haces el cociente
00:33:12
de dividirlo entre 10
00:33:14
y el cociente siempre va a ser esto
00:33:16
y el resto este
00:33:18
luego efectivamente podemos hacer primero
00:33:19
el resto
00:33:22
de dividirlo entre 100
00:33:23
que nos dará esta parte
00:33:25
y luego de esta parte
00:33:27
el cociente de irlo entre 10
00:33:29
encadenamos las operaciones
00:33:30
y ya está
00:33:33
al ir entre 10
00:33:33
te sale el 12
00:33:43
o puedes hacer el resto
00:33:44
y irlo entre 10
00:33:51
que te sale 2 también
00:33:52
hay muchas combinaciones
00:33:53
que podéis usar
00:33:56
entonces si encadenamos
00:33:57
por ejemplo, esa primera que hemos dicho
00:34:00
que era
00:34:01
el resto de dividirlo entre 100
00:34:04
calma
00:34:06
no es más fácil con lo de char
00:34:11
pero bueno, ahora podemos hacer con char, no hay problema
00:34:13
vale
00:34:15
no huyáis de las matemáticas
00:34:17
son vuestra salvación, ya sabéis que
00:34:20
los únicos que no se van a morir de hambre en el futuro
00:34:22
parece ser, son los matemáticos
00:34:23
porque las matemáticas
00:34:25
hacen falta para todo
00:34:28
Con las matemáticas eres Dios
00:34:29
En realidad, puedes trabajar en cualquier empresa
00:34:31
En cualquier banco, en cualquier sitio
00:34:32
Entonces
00:34:34
El que haga matemáticas ahora mismo
00:34:38
Se come el mundo
00:34:41
Vale
00:34:41
Pues si no me he equivocado poniéndolas
00:34:43
Creo que estas serían las decenas
00:34:49
¿Verdad?
00:34:50
Y ahora ya sí
00:34:52
Vamos a sacar el mayor número y el más pequeño
00:34:53
Entonces, para ser organizados
00:34:56
Vamos a poner aquí
00:34:59
el mayor y aquí el menor
00:35:00
en esta variable
00:35:03
y ahora podemos hacer
00:35:03
si centenas
00:35:05
es mayor que unidades
00:35:07
y
00:35:11
centenas
00:35:13
centenas es
00:35:17
mayor, bueno lo voy a piñar
00:35:21
un poco más para no
00:35:24
y centenas es mayor que decenas
00:35:25
pues tenemos
00:35:30
la cifra
00:35:33
mayor de todas
00:35:35
Vamos a ponerlo así
00:35:36
Para que igual se vea más claro
00:35:39
El nombre de variable, si se escoge bien
00:35:40
Siempre es mejor
00:35:42
Cifra mayor
00:35:43
Pues la cifra mayor sería
00:35:44
Cifra mayor sería
00:35:47
Las centenas
00:35:54
Pero, y aquí nos viene muy bien
00:35:56
En el save, pero ¿qué pasa si esto
00:36:00
Le ocurre a las decenas?
00:36:02
¿Qué pasa?
00:36:05
Si esto le ocurre a las decenas
00:36:07
Si ahora son las decenas
00:36:08
Las que son mayores que las unidades
00:36:12
Y son las decenas
00:36:15
Las que son mayores que las centenas
00:36:18
Pues entonces ahora tengo que mi cifra mayor son las decenas
00:36:22
Esta es la mayor cifra de las tres
00:36:29
Y aquí puedo dejar un else
00:36:31
Porque si no son mayores las centenas ni las decenas
00:36:35
Asumo cifras distintas para no abrir muchas ramas
00:36:39
Podríais ampliarlo a
00:36:43
Pero ahora mismo tampoco nos apetece
00:36:45
Complicarnos tanto, ni en el examen tampoco
00:36:47
Vamos a complicar
00:36:49
Pues si no son las centenas las mayores
00:36:51
Y no son las decenas las mayores
00:36:53
Pues entonces
00:36:55
La cifra mayor serán las unidades
00:36:57
No hay otra
00:36:59
Vale, ya tengo la cifra mayor de todas
00:37:00
Pero para construir el número
00:37:03
Hemos hecho ahorita la mayor, la menor
00:37:05
Y la intermedia
00:37:07
¿Vale? Entonces
00:37:08
aquí para que
00:37:11
como podemos hacerlo para que nos quede el código muy largo
00:37:23
la cifra mayor y las centenas
00:37:25
vale, vamos a abrir para que no nos quede tan largo
00:37:26
cuando la cifra mayor es las
00:37:29
centenas, ahora ya juego
00:37:31
con las otras dos para ver cuál es la mediana
00:37:33
y cuál es la menor, entonces se me va a quedar
00:37:35
quizás y más claro, no voy a abrir aquí unas llaves
00:37:37
para ampliar esta rama
00:37:39
vale
00:37:40
si las centenas es la mayor
00:37:42
cifra mayor, cifra menor
00:37:44
vale
00:37:47
cifra menor
00:37:50
y cifra
00:37:52
intermedia.
00:37:54
Sí, he abierto una llave
00:37:58
porque voy a ampliar la rama
00:37:59
del este. Entonces, estoy en el caso
00:38:01
if. Las centenas es la mayor.
00:38:03
Voy a ver las otras dos
00:38:05
en donde caen.
00:38:07
Si en la mayor o en la intermedia. Entonces, aquí
00:38:09
puedo abrir un if que sea
00:38:10
esto es un if el 6. Esto no es un if el 6
00:38:13
porque el if está dentro del if.
00:38:15
Vale. Entonces, sí.
00:38:17
Ahora ya sí.
00:38:19
Si decenas es mayor que unidades, entonces la cifra intermedia será decenas, y la menor, y la cifra menor será la otra.
00:38:20
Cifra menor será las unidades, cifra intermedia, cifra intermedia.
00:38:45
Vale, y aquí ya sí que hay un else
00:38:57
Que sería al revés
00:39:00
Si entendemos este primer else if
00:39:01
Los demás ya son copia y pega
00:39:10
Unidades
00:39:11
Y decenas
00:39:16
Vale
00:39:20
Claro, dentro de un if
00:39:22
En la rama del if tú metes todo lo que quieras
00:39:27
Y en la rama del else metes todo lo que quieras
00:39:29
La rama del if es lo que tú haces y se cumple
00:39:32
Pues si se cumple, tú puedes necesitar hacer mil cosas.
00:39:34
En nuestro caso, cuando las centenas sean la mayor,
00:39:38
a mí todavía me falta tarea por hacer,
00:39:41
que es qué pasa con las dos que quedan.
00:39:43
Pues bueno, todo eso lo meto aquí dentro.
00:39:45
Entonces, si las centenas son la mayor,
00:39:48
que es este caso,
00:39:51
yo entonces primero asigno la mayor, que no hay duda,
00:39:53
y luego me falta por decidir qué pasa con las otras dos,
00:39:57
dónde caen.
00:40:00
Pues para decidirlo necesito otro if.
00:40:01
pues si esta es la mayor
00:40:03
se caerá aquí
00:40:05
y si no es así
00:40:07
decenas caerán menor
00:40:09
aquí unidades
00:40:11
y ahora con los otros
00:40:11
el seif será
00:40:15
lo mismo pero cambiando
00:40:16
ahora que pasa si decenas es la mayor
00:40:19
voy a hacer un copia y pega
00:40:20
de este if y retocamos
00:40:23
os dejo copiar un poco
00:40:25
vale y ahora ya
00:40:29
mi ELSE de aquí abajo es cuando son
00:40:35
las unidades la mayor de todas.
00:40:37
Pero todavía me falta ver cómo coloco las otras
00:40:39
dos. Todavía me
00:40:41
falta ver en este ELSE
00:40:43
qué pasa con las otras
00:40:44
dos.
00:40:47
Claro.
00:40:49
Sí, sí, sí, que sí, sí. Este proyecto con ejercicios
00:40:50
lo subo todo el rato, según voy
00:40:53
incorporando.
00:40:55
Así que estará subido y la grabación también
00:40:57
y todo. Vale, entonces,
00:40:59
en este ELSE, ahora lo revisamos entero,
00:41:01
pero bueno, en este ELSE
00:41:03
la mayor son las unidades
00:41:04
¿qué pasa con las que me quedan?
00:41:06
que son las centenas y las decenas
00:41:07
pues si las decenas
00:41:09
son mayores que las centenas
00:41:12
la intermedia serán las decenas
00:41:13
y la menor las centenas
00:41:16
y eso que nos falta construir
00:41:18
el número que es lo más divertido
00:41:20
si no eran las decenas
00:41:21
mayor que las centenas
00:41:24
pues entonces la intermedia
00:41:25
serán las centenas
00:41:28
y la menor las decenas
00:41:30
Ya tenemos las tres cifras
00:41:32
La mayor, la menor y la intermedia
00:41:35
Ahora
00:41:37
Vale
00:41:44
No, que nos ha reventado
00:41:45
Nos ha reventado
00:41:51
Tenemos tres cifras
00:41:53
Centenas, unidades y decenas
00:41:55
¿Qué hemos hecho? Luego ya cuando ya suba esto
00:41:57
Pues miráis a ver si habéis copiado algo más o lo que sea
00:41:59
Lo que importa es entenderlo
00:42:01
Tenemos las tres cifras que son estas tres cifras
00:42:02
Lo que queremos es
00:42:06
colocarlas para luego
00:42:09
construir el número rápidamente, fácilmente.
00:42:11
Porque una vez que lo tengamos
00:42:14
podemos hacerlo concatenando.
00:42:15
Concatenamos y ya está. Primero la mayor,
00:42:17
luego la intermedia, luego la menor. Eso es fácil.
00:42:19
Pues ya está. Pero la tarea
00:42:21
es meterlas aquí. Bueno, pues vamos
00:42:23
a ver. Si las centenas es
00:42:25
mayor, creo que queda las otras dos.
00:42:27
La mayor ya la tengo. Pero
00:42:29
vamos a ver qué pasa con las dos que me quedan.
00:42:31
Pues si esta es mayor que la otra,
00:42:33
será la intermedia.
00:42:36
Y esta la pequeña
00:42:36
Y si no, la intermedia será la otra
00:42:38
Y esta la pequeña
00:42:40
Y esto lo estamos haciendo todo el rato
00:42:41
Pues lo mismo es lo mismo
00:42:43
Ahora ya, estamos en un else if
00:42:45
Este else if
00:42:49
Debería ir colocado detrás de la llave
00:42:50
Pero por no descolocarlo todo lo dejo ahí
00:42:52
Sí
00:42:54
A ver
00:42:56
Este es el
00:43:03
Vamos a ver
00:43:06
A ver, relax
00:43:14
Vamos a ver
00:43:23
Uy, yo quería, no, yo quería
00:43:31
Pizarra
00:43:33
Vamos a ver
00:43:34
Vale, a ver
00:43:40
el if, el se
00:43:45
lo tenemos todo claro
00:43:47
if
00:43:49
condición
00:43:50
aquí pongo
00:43:52
todas las sentencias que me den la gana
00:43:55
que a su vez puede ser
00:43:57
otro if porque quiero ser para considerar
00:43:59
dos cosas, lo que yo quiera
00:44:01
y aquí viene un else
00:44:03
y aquí hago lo que me dé la gana
00:44:04
el if, el se de toda la vida
00:44:09
vale, pues ahora vamos a suponer que
00:44:10
este programa, ¿qué se traduciría?
00:44:12
Pues que yo tengo una condición,
00:44:15
se traduce en esto, ¿no?
00:44:17
Si se cumple, hago esto de aquí,
00:44:18
y si no se cumple, llamémosle 1,
00:44:22
pues haría 1,
00:44:26
y si no se cumple, haríamos esto,
00:44:27
y hemos terminado.
00:44:29
Polines, y hemos terminado.
00:44:31
Vale, esto y eso es lo mismo, ¿verdad?
00:44:33
Vale, ahora resulta que yo digo,
00:44:36
espérate, si esta condición es falsa,
00:44:39
o lo que es donde estás en el ELSE
00:44:42
ahora yo quiero comprobar
00:44:45
otra condición añadida
00:44:48
es decir, si esto es falso
00:44:49
si estoy en el ELSE
00:44:52
espérate, que yo lo que quiero es
00:44:53
hacer dentro
00:44:55
claro
00:44:57
claro, entonces
00:44:59
tú estás en el ELSE y dices, espérate, dentro del ELSE
00:45:00
ahora querría yo comprobar
00:45:03
otra condición, porque si esta
00:45:06
condición es cierta
00:45:08
hago lo que sea y si no hago
00:45:09
otra cosa, pero lo haces aquí dentro.
00:45:12
Entonces, te da igual
00:45:14
escribirlo así que con el
00:45:16
formato else if, que es else if
00:45:18
y poner la condición aquí. Es otra forma
00:45:19
de escribirlo, pero es meter este if
00:45:21
aquí. Se traduce a
00:45:24
si esta condición es cierta, haces esto.
00:45:25
Pero si esta no es cierta y la que es cierta,
00:45:27
haces esto otro. Y si dentro
00:45:29
de este else hubiera
00:45:32
otro if, esa
00:45:33
con otra condición, esa
00:45:36
sería el otro else if. ¿Que esta es falsa?
00:45:37
Miro esta.
00:45:40
Que es cierta, entro dentro.
00:45:42
Entonces, esto se programa más fácil con if condición.
00:45:43
El se if condición 2.
00:45:47
El se if condición 3.
00:45:48
¿Vale?
00:45:50
Vale, pues entonces, aquí nos queda.
00:45:52
Vale.
00:45:59
Que las centenas son la mayor.
00:46:01
Hago esto de aquí, está claro.
00:46:03
Que no son la mayor las centenas, sino que son las decenas.
00:46:05
Vale.
00:46:17
Vale, entonces, ahora, este if, venga, aguantamos 5 minutos por lo menos más, pero si nos concentramos no se alargarán de 5, vale, en la rama del if está claro, si las centenas son las mayores, está claro lo que he hecho, ahora, resulta que no son las centenas las mayores, estoy en el else de que no son las centenas las mayores, ¿qué nueva condición contemplo?
00:46:18
Pues que sean las decenas
00:46:43
Es una condición que contemplo
00:46:44
En el caso de que esta haya sido falsa
00:46:47
Esta ha sido falsa
00:46:49
Las centenas no son las mayores
00:46:50
Luego no entro aquí
00:46:51
Pues contemplo una segunda condición
00:46:53
Esta segunda es si son las decenas las mayores
00:46:55
Vale, pues si son las decenas las mayores
00:46:58
¿Qué haré?
00:47:00
Ponerla en decenas
00:47:01
No lo taburo a la izquierda
00:47:03
Está a la altura de este
00:47:09
No está dentro del otro el se
00:47:10
Este es un if el se
00:47:14
juntito, que ya acabó.
00:47:16
Que va dentro del if de arriba.
00:47:18
Claro, este es un else
00:47:21
de este if.
00:47:23
Este es un else de este if.
00:47:26
Sí, lo que pasa
00:47:30
es que no tenemos tiempo.
00:47:31
Vale, entonces, esta sería
00:47:33
si lo de arriba es falso,
00:47:34
esto no he entrado a hacerlo.
00:47:37
Esto no existe, no he entrado a hacerlo.
00:47:39
Lo de arriba es falso.
00:47:41
Ahora resulta que lo que es cierto es esto,
00:47:42
que son las decenas las mayores. Es cierta esa.
00:47:44
Pues entro aquí.
00:47:47
en todo este bloque de aquí
00:47:48
todo eso lo hago
00:47:49
si esta es cierta
00:47:51
¿y qué es lo que hago si esta es cierta?
00:47:52
decir que la cifra mayor son las decenas
00:47:56
y ver qué pasa con las otras dos
00:47:57
pues qué pasa con las otras dos
00:48:00
un pequeño if-else
00:48:02
para ver cómo las coloco
00:48:04
ya está, todo esto va aquí dentro
00:48:05
y se acaba este if-else
00:48:07
que es lo que hago en el caso de que las decenas sean las mayores
00:48:08
¿que siguen sin ser las decenas las mayores?
00:48:11
ya me voy a este else
00:48:15
Que es del elseif de arriba
00:48:16
Y este else, ¿a qué valdrá?
00:48:19
Pues a que no sean las decenas las mayores
00:48:22
Ni las centenas
00:48:24
O lo que es lo mismo, a que las mayores sean las unidades
00:48:24
Aquí me falta una pedazo llave
00:48:28
Me falta una pedazo llave
00:48:31
Para cerrar este
00:48:36
Ahora
00:48:37
En este else
00:48:39
Este else es
00:48:41
Si no son ni las centenas
00:48:43
Ni las decenas
00:48:45
Luego son las unidades
00:48:46
Pues si son las unidades, hago todo esto
00:48:48
Todo esto es cuando son las unidades
00:48:50
La mayor serán las unidades
00:48:52
Y luego con este pequeño if ahí dentro
00:48:54
Decido que hago con las otras
00:48:57
Con este pequeño if ahí dentro
00:48:59
Pues cuando este if
00:49:01
Ese gordo que acaba aquí
00:49:03
Este if que empezó aquí
00:49:04
Me acaba
00:49:07
Aquí
00:49:08
¿Verdad?
00:49:11
Porque he cerrado
00:49:13
cuando este me acaba aquí, aquí en este punto
00:49:13
ya sé cuál es la mayor, cuál es la media y cuál es la intermedia
00:49:18
pues ahora ya compongo el número y mi resultado final será
00:49:21
y nos vamos, result será
00:49:25
la mayor por 100 más la mediana por 10 más las unidades
00:49:28
¿verdad? claro, para convertirlo ya en número entero
00:49:33
la cifra mayor, que son sus nuevas centenas
00:49:38
multiplicada por 100
00:49:42
más
00:49:44
la cifra
00:49:45
intermedia, la que es la intermedia
00:49:47
multiplicada por 10
00:49:50
más
00:49:53
la más bajita, que esa quiero que sean
00:49:54
las unidades.
00:49:56
Cifra menor,
00:49:59
perdón. Concatenando.
00:50:00
Concatenando.
00:50:08
Concatenas, pero tienes que ponerle
00:50:10
los, envacía
00:50:12
un string en medio para que no te haga la suma.
00:50:13
Claro, entonces ahora ya
00:50:15
Pues ya está, ya la tienes
00:50:17
Vamos a hacer una ejecución rápida
00:50:20
Pero si me he hecho alguna burrada
00:50:22
¿Qué?
00:50:23
A ver, que
00:50:29
No, no, relajaos
00:50:29
Bueno
00:50:31
Tampoco os pasaría nada si fuera así
00:50:35
Número
00:50:38
5, 7, 3
00:50:39
Muy bien
00:50:43
Para este caso de prueba ha funcionado
00:50:44
1, 5, 3
00:50:47
no, porque no
00:50:50
si le meto el negativo es que ni siquiera
00:50:50
sacaría, sería ya un string de 4
00:50:52
con el negativo, este no lo contempla
00:50:55
claro, es que
00:50:57
no nos da tiempo de hacer la ampliación con estas prisas
00:50:59
¿vale? entonces
00:51:01
ahora
00:51:03
si te tienes que contemplar
00:51:03
lo que sea negativo
00:51:07
ahora ya tienes que añadir
00:51:08
quitar, pasarlo a string
00:51:11
quitar, asumir que el
00:51:13
char a 0 es el menos, con lo cual
00:51:15
si no es cifra, hay que hacer
00:51:17
más cosas, ¿vale?
00:51:19
que podemos hacer el próximo día
00:51:21
- Materias:
- Programación
- Niveles educativos:
- ▼ Mostrar / ocultar niveles
- Formación Profesional
- Ciclo formativo de grado superior
- Primer Curso
- Subido por:
- Raquel G.
- Licencia:
- Todos los derechos reservados
- Visualizaciones:
- 7
- Fecha:
- 10 de octubre de 2025 - 17:56
- Visibilidad:
- Clave
- Centro:
- IES ROSA CHACEL
- Duración:
- 51′ 26″
- Relación de aspecto:
- 1.78:1
- Resolución:
- 1920x1080 píxeles
- Tamaño:
- 618.70 MBytes