20261002 Ejercicios_1 - 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:
Vale, pues los valores de los tres lados de un triángulo, porque un triángulo, lógicamente, sabemos todos que es esto, por ejemplo, eso es un triángulo, como todos sabemos.
00:00:00
Entonces, para caracterizar un triángulo necesitamos tres magnitudes, la longitud del lado 1, la longitud del lado 2 y la longitud del lado 3.
00:00:14
Vale, pues vamos a obtener esos tres valores por teclado, lado 1, lado 2, lado 3.
00:00:27
Y ahora, el programa tiene que decirnos si el triángulo es equilátero o no.
00:00:33
Pues de nuevo, la condición de ser equilátero no existe en Java, tenemos que traducirla a nuestro idioma, que es an y or de cosas.
00:00:39
Bueno, pues nosotros sabemos por definición que será equilátero si L1 es igual a L2, es igual a L3.
00:00:48
Pero claro, esto en Java no se puede poner
00:00:54
En Java solamente se puede poner
00:00:57
Ser igual a
00:01:00
Con este operador doble igual
00:01:03
De dos cosas
00:01:05
Solo de dos cosas
00:01:06
En Java yo solamente puedo poner
00:01:07
Que algo sea igual a otra cosa
00:01:10
Comparar dos cosas
00:01:13
Con la igualdad
00:01:15
Y con este operador
00:01:16
Entonces, ¿cómo traduzco yo
00:01:17
Que los tres lados sean iguales
00:01:20
a ese idioma de Java que solamente permite combinar con an, or e igual a.
00:01:23
Bueno, pues que el lado 1 sea igual al lado 2.
00:01:29
Y que el lado 2 sea igual al lado 3.
00:01:32
Y ya está.
00:01:35
Si el lado 1 es igual al lado 2 y el lado 2 es igual al lado 3, pues ya está.
00:01:37
Esto ya se expresa en expresiones válidas para Java.
00:01:47
ser igual a, ser igual a
00:01:51
y luego el and de estas dos cosas
00:01:53
ya expresa que los tres son iguales
00:01:55
si este es igual a este y este es igual a este
00:01:58
los tres son iguales
00:01:59
pues ya está
00:02:00
es en plan, sí
00:02:01
a ver
00:02:08
a ver, boolean no
00:02:09
un lado es una magnitud numérica
00:02:13
no puede ser boolean
00:02:16
uy
00:02:17
vale, pues entonces
00:02:27
los lados van a ser cantidades decimales
00:02:37
3,7, 2,8, pues entonces nos declaramos
00:02:41
los tres dables, lado 1
00:02:44
lado 2, lado 3, solicitamos los datos
00:02:47
por teclado
00:02:53
Lado 1
00:02:54
Ah, perdón
00:02:59
Bueno, estoy escribiendo la parte primera
00:03:01
De meter los datos, que esta es la que ya
00:03:03
Dijimos ayer
00:03:05
Que esto ya uno lo sabe de memoria
00:03:07
No tiene ni que pensar
00:03:09
Declarar variables
00:03:09
Y rellenarlas, pues ya está
00:03:13
Y esto mismo para todos
00:03:14
Y ahora, lado 2
00:03:16
Lado 2
00:03:26
Y lado 3
00:03:29
Lado 3
00:03:31
Vale
00:03:34
Ahora, lo mismo
00:03:35
Voy a guardar mi mensaje de resultado
00:03:37
Por ejemplo, aquí
00:03:40
Y este mensaje de resultado
00:03:41
¿Cuál va a ser?
00:03:44
¿Equilátero o no equilátero?
00:03:45
Depende
00:03:49
Claro, depende, o sea, es una de estas dos posibilidades
00:03:50
O es equilátero
00:03:54
O es no equilátero
00:03:55
Es una de estas dos posibilidades
00:03:57
No sé cuál
00:03:59
No sé cuál de las dos, ¿de qué depende?
00:04:00
De la condición de que los tres lados sean iguales
00:04:03
Y esa condición ya la hemos escrito
00:04:05
Si lado 1 es igual que lado 2
00:04:08
Y la bajo aquí abajo
00:04:14
Lado 2 es igual que lado 1
00:04:23
Y bajo aquí abajo
00:04:31
Pues ya está
00:04:36
Lo mismo de siempre
00:04:37
Esta variable o bien le asigno esta cosa
00:04:40
O bien le asigno esta otra
00:04:42
Ambos son cadenas de texto
00:04:44
Compatibles con el tipo string, todo bien
00:04:45
¿De qué depende que le asigne la primera o la segunda?
00:04:48
Pues de que esta condición sea true o no
00:04:52
La 1 igual a 2
00:04:54
Ah, estaba bien, vale
00:04:57
Entonces
00:04:58
Puesto un poco los paréntesis por claridad
00:05:01
Pero en realidad
00:05:04
No haría falta
00:05:05
Ponerlos porque no hay
00:05:07
Ambigüedad
00:05:09
vale
00:05:11
aquí no va a haber ambigüedad
00:05:12
porque si la máquina virtual
00:05:18
hiciera antes
00:05:20
lado 2
00:05:21
no lo puede hacer porque esto no son booleanos
00:05:22
vale
00:05:26
lo que estoy diciendo es
00:05:27
que yo siempre que ponga paréntesis
00:05:29
por claridad no pasa nada
00:05:32
si así lo veo más claro
00:05:33
pues ya está, lo dejo así
00:05:35
pero es que no hace falta
00:05:37
porque no hay ambigüedad
00:05:39
porque es imposible
00:05:42
que la máquina virtual
00:05:45
haga primero esta operación
00:05:46
es imposible
00:05:48
porque sería un entero
00:05:50
un decimal, perdón, un decimal
00:05:52
and un decimal
00:05:54
y no, este operador solamente
00:05:55
combina booleanos
00:05:58
y esto si es un booleano
00:05:59
esto si, porque es esto es
00:06:02
igual a esto
00:06:04
y esto también lo es, esto es
00:06:05
igual a esto
00:06:08
entonces aquí no hay ambigüedad
00:06:09
aunque yo no ponga dos paréntesis
00:06:11
está claro que primero se va a hacer esto
00:06:12
para sacar el booleano
00:06:15
esto es igual a esto, true o false
00:06:16
y luego se va a hacer este
00:06:18
esto es igual a esto, true o false
00:06:19
y luego ya el and de ambos
00:06:22
entonces el objetivo de estos ejercicios
00:06:23
ejercicios simplemente
00:06:34
es antes de pasar ya
00:06:35
las estructuras de control, el if, los núcleos
00:06:38
todo esto
00:06:40
porque esto como ya veremos
00:06:40
pues igual queda más claro escrito con un if
00:06:43
El objetivo de esos ejercicios no es tanto el hecho de que hagamos una asignación condicionada, sino el ir cogiendo soltura con elaborar condiciones, porque elaborar condiciones lo vamos a tener que hacer continuamente, practicar con los operadores y todo eso.
00:06:45
Bueno, pues esto está claro, ¿no?
00:07:04
Ahora, vamos a ver qué dificultades entraña el siguiente
00:07:10
Que el siguiente nos dice
00:07:15
El 21, hemos dicho
00:07:18
Este era el 22, el 20
00:07:24
Ah, no, no, perdón
00:07:25
El 23, jolín
00:07:26
Horas trabajadas
00:07:27
Muestra en pantalla que indique si la persona trabajó entre 8 y 20 horas
00:07:30
Cada uno de los 3 días, no está muy claro
00:07:37
No está muy claro si es la suma de los días
00:07:39
Pero lo vamos a hacer porque es más interesante
00:07:41
Con esta interpretación
00:07:44
Indicar si la persona trabajó entre 8 y 20 horas
00:07:47
Todos y cada uno de los 3 días
00:07:50
Pues venga, ejercicio 23
00:07:53
vale, pues aquí
00:07:55
él mete en su
00:08:13
fichaje, en su máquina de fichaje
00:08:16
su hora de entrada
00:08:18
de salida y esta aplicación
00:08:22
recupera esa hora
00:08:23
entonces la vamos a dar por teclado nosotros
00:08:25
esas horas, entonces
00:08:27
las horas
00:08:30
solamente se pueden trabajar
00:08:33
enteras, entonces vamos a guardarlo
00:08:34
en variable entera
00:08:37
pues a ver
00:08:38
vuelvo a copiar esto
00:08:41
de siempre
00:08:44
y ahora pues ya si
00:08:48
horas
00:08:53
primer día
00:08:57
para cambiar un poquito
00:08:58
para cambiar un poquito
00:09:01
y acostumbrarnos a diferentes estructuras
00:09:02
en lugar de declarar
00:09:05
la variable antes y luego ya darle valor
00:09:07
la voy a declarar a la vez que
00:09:09
a la vez que la
00:09:11
a la vez que le doy valor
00:09:13
num día uno
00:09:17
Vale, pues bueno, a la vez que le doy valor
00:09:18
Ya la voy a declarar para cambiar un poco de estructura
00:09:25
Simplemente acostumbrarnos a diferentes aspectos
00:09:28
Vale, no tengo que declarar todo el rato antes
00:09:30
Y luego ya dar valor cuando toque
00:09:34
Declaro la primera vez que doy valor y ya está
00:09:36
Pues venga, esto será
00:09:38
Horas primer día y lo mismo con segundo y tercero
00:09:41
Uy
00:09:49
Segundo día
00:09:55
Día 2
00:10:01
Tercer día
00:10:03
Día 3
00:10:07
¿Vale? Las estoy declarando
00:10:09
A la vez que le doy su primer valor
00:10:11
Vale
00:10:13
Eh...
00:10:16
Ahora
00:10:19
Lo que tenía que mostrar esto es
00:10:20
Si has trabajado suficiente
00:10:24
O no has trabajado suficiente
00:10:26
¿Vale?
00:10:29
De nuevo dos posibilidades
00:10:30
Bueno, voy a poner la condición aparte
00:10:31
Para que no me quede la línea tan larga
00:10:35
Suficiente
00:10:38
Vale
00:10:41
¿Cuándo habrá trabajado lo suficiente este señor?
00:10:45
¿Y cuándo no habrá trabajado lo suficiente?
00:10:50
¿Habrá trabajado lo suficiente?
00:10:52
Sí
00:10:54
Ha trabajado entre 8 y 20 horas el primer día
00:10:54
Y además entre 8 y 20 horas el segundo
00:10:58
y además entre 8 y 20
00:11:01
ahora es el tercero
00:11:03
entonces esto es la simultaneidad de tres hechos
00:11:05
luego ya nos viene el and
00:11:07
vale, pues será el and
00:11:11
de haber trabajado
00:11:13
entre 8 y 20
00:11:14
el primer día, and
00:11:17
entre 8 y 20 el segundo, and
00:11:18
entre 8 y 20 el tercero
00:11:20
bueno, pues entonces va a ser el and de tres cosas
00:11:22
hasta ahí vale
00:11:25
y de que tres cosas
00:11:26
lo que acabamos de decir
00:11:36
pues aquí tendremos que poner
00:11:38
la condición que expresa
00:11:47
haber trabajado entre 8 y 20
00:11:49
el primero
00:11:52
entonces, haber trabajado entre 8 y 20
00:11:52
de nuevo lo tenemos que expresar
00:11:56
en nuestros operadores
00:11:58
y términos de Java
00:12:00
en este caso
00:12:01
¿cómo podríamos expresarlo?
00:12:04
haber trabajado entre 8 y 20
00:12:05
es decir, que en un día 1
00:12:07
lo tendría que haber llamado
00:12:09
horas día 1
00:12:12
y queda mucho más claro
00:12:13
le voy a cambiar el nombre para que quede más claro
00:12:14
Horas día 1
00:12:17
Horas día 2
00:12:20
Horas día 3
00:12:24
¿Cómo puedo expresar en Java
00:12:28
Que horas día 1
00:12:30
Este comprendido
00:12:33
Entre 8 y 21
00:12:35
¿Cómo se os ocurre?
00:12:37
A ver si me ocurre
00:12:39
Poniendo mayor o igual a 8
00:12:41
¿Sí?
00:12:45
Mayor o igual a 8
00:12:46
Vale, mayor o igual a 8
00:12:47
Y además de mayor o igual a 8, ¿qué tiene que ocurrir?
00:12:50
Menor o igual a 20
00:12:52
Exacto
00:12:53
Esas dos cosas unidas con el and
00:12:54
Porque para estar comprendido
00:12:58
Entre el valor a y b
00:13:00
Tiene que ocurrir simultáneamente
00:13:02
Que seas mayor o igual que a
00:13:04
Y menor o igual que b
00:13:06
Y eso sería un primer paréntesis
00:13:08
Si quieres poner un paréntesis
00:13:10
Sería la primera
00:13:11
Exacto, sería la primera
00:13:12
¿vale? la primera sería
00:13:14
ser mayor o igual que 8
00:13:16
y además ser menor o igual que 21
00:13:18
porque si pusieras el or
00:13:20
y has trabajado 32 horas
00:13:22
te daría que sí
00:13:25
que estás conveniente de 8 y 21 y no
00:13:27
¿vale?
00:13:29
y lo mismo aquí
00:13:31
y lo mismo aquí, o sea, estar comprendido
00:13:33
entre un valor a y b
00:13:35
que es una condición muy natural
00:13:36
ver si la edad de este alumno
00:13:38
está comprendido entre 18 y 25
00:13:41
Es algo muy natural que tenemos que programar, pues significa la simultaneidad de mayor o igual de 18 y menor o igual que 25, la simultaneidad de ambas cosas.
00:13:43
Entonces nuestra primera condición quedaría efectivamente horas día 1 mayor o igual que 8 y además de ser mayor o igual que 8, no solo mayor o igual que 8, sino además ser menor o igual que 21.
00:13:54
esta sería la primera
00:14:24
vale, y la segunda y la tercera
00:14:28
lo mismo, pero con día 2 y día 3
00:14:33
día 2 y día 3
00:14:36
uy, perdón, horas día 2
00:14:57
horas día 2, a ver, le voy a poner esto
00:15:10
para que, esto también aquí
00:15:21
esto lo bajo aquí
00:15:30
vale, pues la condición se quedaría como esta
00:15:39
entonces, ahora comentamos
00:15:52
porque he puesto paréntesis
00:15:55
he puesto paréntesis porque en principio queda más claro
00:15:57
porque en mi lenguaje natural yo he pensado
00:16:00
que ocurra la simultaneidad
00:16:03
del primer día correcto
00:16:07
segundo día correcto y tercer día correcto
00:16:10
es el AND de tres cosas
00:16:12
Vale, y ahora cada día, ¿qué tiene que cumplir? Que sus horas sean mayores o iguales que 8, y además de ser mayores o iguales que 8, menos igual que 21.
00:16:13
Vale, pues así se queda claro.
00:16:26
Entonces, con los paréntesis puestos, la máquina virtual primero te ejecuta los paréntesis, claro, primero te hace esto, luego te hace esto, luego te hace esto,
00:16:31
Y ahora ya va con el resto de los AND izquierda a derecha
00:16:41
Primero te hace el AND de este y este
00:16:45
Y luego ya con lo que te ha salido el AND de este y este
00:16:46
Pero aquí los paréntesis están puestos por
00:16:50
El momento de verlo, verlo más claro
00:16:59
Lo que significa
00:17:02
Pero dan igual porque el AND
00:17:03
El operador AND
00:17:05
Es el equivalente en realidad
00:17:11
A la operación suma de números
00:17:13
Cuando tú tienes 3 más 7
00:17:16
3 más 7 más 15
00:17:19
Nosotros en realidad aunque lo veamos así
00:17:30
La suma se hace secuencial
00:17:34
La calculadora, nuestra cabeza, todo
00:17:35
La suma siempre es entre dos operandos
00:17:37
Igual que el AND siempre es entre dos operandos
00:17:40
Siempre
00:17:42
Primero se hace esta suma
00:17:43
Y al resultado de esta suma se hace esta
00:17:45
Que es lo que está pasando
00:17:48
Con esto
00:17:50
Esto
00:17:52
Y esto
00:17:54
Primero se hace el AND de estos dos
00:17:55
Y con lo que me ha tocado se hace el AND de este
00:17:58
¿Vale?
00:18:00
Y además la suma tiene la propiedad asociativa
00:18:02
Me da igual hacer primero
00:18:04
3 más 7 y luego sumarle 15
00:18:06
Que hacer primero 7 más 15 y luego sumarle 3
00:18:08
Era lo mismo
00:18:11
Pues el AND es como el
00:18:12
Tiene una propiedad equivalente
00:18:14
Entonces
00:18:17
Vale, la máquina virtual
00:18:19
Irá haciendo estos AND de izquierda a derecha
00:18:31
primero este and este
00:18:33
y luego este and este
00:18:35
y lo que es más
00:18:37
como lo que tengo dentro también son
00:18:41
and este paréntesis
00:18:43
aunque no estuviera
00:18:45
no pasa nada
00:18:46
la condición es la misma
00:18:51
aunque este paréntesis no estuviera
00:18:53
da lo mismo
00:18:56
iría haciendo esto
00:18:57
se tiene que cumplir simultáneamente esto
00:18:58
y también esto
00:19:00
y también esto
00:19:01
y también esto
00:19:02
y también esto y también esto
00:19:04
significa exactamente lo mismo
00:19:05
me da igual que él lo haga en este orden
00:19:07
primero esto, luego esto
00:19:10
y luego esto
00:19:12
por haber paréntesis
00:19:13
me da igual que los vaya haciendo de izquierda a derecha
00:19:15
esto se tiene que cumplir
00:19:18
y esto, y además esto
00:19:20
y además esto
00:19:22
y además esto
00:19:23
entonces cuando la expresión
00:19:25
solamente hayan
00:19:29
o solamente hayan uno tras otro
00:19:30
los paréntesis no hacen falta
00:19:31
porque da igual el orden en que lo evalúes
00:19:34
pero bueno, aquí lo hemos puesto por claridad
00:19:37
cuando una expresión mezclemos
00:19:39
and y or
00:19:43
ahí ya sí que no da igual
00:19:44
es decir
00:19:45
imaginamos que esto
00:19:56
fuera
00:19:58
el and como la multiplicación
00:20:00
que he dicho antes la suma
00:20:02
pero no, mejor como la multiplicación
00:20:03
y esto fuera como la suma
00:20:05
¿Vale? Una expresión que solamente mezcla multiplicaciones, solo, es que da igual los paréntesis, es que da lo mismo en qué orden la hagas, da igual.
00:20:06
Pues una condición en la que solamente se mezclan operadores and, es que da igual, le puedo quitar los paréntesis, da lo mismo.
00:20:16
Y con el or igual, una expresión que solamente mezcla sumas, que solamente mezcla sumas, es que me da igual en qué orden la haga.
00:20:24
Con lo cual, si hay paréntesis, sobran, los puedo quitar.
00:20:40
Pues lo mismo, una expresión booleana que solamente tenga or uno tras otro, puedo quitarle los paréntesis, porque da exactamente igual.
00:20:43
Pero una expresión que mezcle multiplicaciones y sumas, esa sí que es más delicada.
00:20:53
Si yo tengo esto, y tengo aquí un paréntesis, esto con los paréntesis es muy diferente a esto sin los paréntesis, muy diferente.
00:21:00
Esto con los paréntesis es 7 más 2, 9 por 7, y sin los paréntesis sería 7 por 7, y lo que me dé 49 más 2.
00:21:12
Pues lo mismo una expresión booleana
00:21:21
Cuando tienes una expresión booleana que mezcla
00:21:23
Esto y esto
00:21:25
Ahí ya sí que son importantísimos
00:21:27
Los paréntesis para que se respete
00:21:30
El orden
00:21:32
Que se corresponde con lo que se quiere expresar
00:21:32
Pero bueno, saldrán más ejemplos
00:21:36
Vale
00:21:42
Bueno, pues ya que está esta expresión
00:21:44
Expresada
00:21:48
que repito, como yo ya he comprobado
00:21:52
que me ha quedado solo con and
00:21:55
podría quitarle estos paréntesis
00:21:57
que he puesto al principio porque me organizaba
00:21:59
yo mejor
00:22:01
ya se podrían quitar, pero bueno, ahora ya
00:22:02
mi mensaje
00:22:05
en lugar de guardar una variable adicional
00:22:06
para acostumbrarnos también a diferentes estructuras
00:22:09
en lugar de guardarlo
00:22:11
en una variable adicional, voy a pasárselo al
00:22:13
system out directamente
00:22:15
al system out hay que pasarle el mensaje
00:22:16
pero ¿cuál?
00:22:19
Suficiente
00:22:20
¿Así directamente?
00:22:25
No
00:22:27
A lo mejor puede que le tenga que pasar este
00:22:28
A lo mejor le tengo que pasar este
00:22:30
No lo sé, no sé qué pasarle al system out
00:22:35
Si pasarle este o pasarle este, no lo sé
00:22:36
¿De qué depende?
00:22:39
Pues depende de este boolean de aquí
00:22:41
¿Vale?
00:22:43
Suficiente
00:22:57
Vale, que lo había escrito mal
00:22:58
Depende de este boolean
00:22:59
Al system out hay que pasarle
00:23:02
una cadena, eso sí, pero yo tengo dos posibilidades de cadena que pasarle
00:23:04
este o este, depende de esto, entonces me da igual asignar
00:23:08
esto a una variable y luego pasarle al system.out la variable
00:23:12
o pasarle directamente el contenido, vale
00:23:15
esto es como si yo hiciera int n
00:23:19
igual a 7, vale, pues en este
00:23:24
caso me da igual pasarle el contenido de la variable
00:23:32
que pasarle, ¿vale? el numerito 7, es lo mismo
00:23:36
pues aquí igual, en lugar de hacerme una variable cadena
00:23:39
que tenga todo esto, que tenga todo esto
00:23:44
le paso directamente ya el contenido de esa variable
00:23:48
le paso el contenido de esa variable que va a ser esto, ¿vale?
00:23:51
bueno, pues iros acostumbrando a diferentes formas de hacer lo mismo, de expresar las cosas
00:24:01
bueno, ¿alguna duda sobre este?
00:24:05
Venga, vamos a hacer este
00:24:16
Que este ya mezcla AND y OR
00:24:23
Y aquí ya sí que los paréntesis son imprescindibles
00:24:24
Porque aquí ya la condición va a mezclar
00:24:30
AND y OR de diferentes cosas
00:24:33
Aquí ya no lo vamos a poder quitar
00:24:35
A ver
00:24:37
Pues venga, ejercicio 24
00:24:53
¿Qué tiene que leer?
00:24:57
Dos edades
00:25:11
esas dos personas que llegan a tu puerta
00:25:12
entonces tú coges sus DNIs
00:25:16
y metes en tu teléfono que tiene la aplicación
00:25:19
que estás programando ahora mismo
00:25:23
que vamos a programar
00:25:24
metes edad 1 y edad 2
00:25:25
y cuando le des al enter
00:25:27
la aplicación que está en tu tableta
00:25:29
te dirá deja pasar o no deja pasar
00:25:31
él no se pone a hacer cálculos de la situación
00:25:34
mete las edades
00:25:38
y si se le pone en verde
00:25:39
pues deja pasar, y si se le pone en rojo
00:25:41
no deja pasar, vale, esa es la aplicación
00:25:43
que vamos a hacer ahora
00:25:46
metemos las edades y en función de si nos sale
00:25:46
verde o rojo, bueno, verde o rojo no podemos
00:25:49
ponerlo, pero si
00:25:51
otro simbolito, pues en función de si sale verde o rojo
00:25:53
pues lo dejamos pasar o no
00:25:55
pues venga, vamos a meter las edades
00:25:57
primero, que esto será
00:26:00
pues con un escáner, como siempre
00:26:01
luego copio y pego de aquí y cambio
00:26:03
edad
00:26:08
edad persona 1, y la vamos a llamar a esta variable edad 1, edad persona 2, y la vamos a llamar a esta variable edad 2, vale, aquí lo mismo, se nos tiene que mostrar un mensajito que será, pues, si pasas o no, no pasas,
00:26:18
Vamos a ver, vamos a ponerle
00:26:53
Verde rojo
00:26:56
A ver si
00:26:57
Ya está, esto es todo lo que tiene
00:26:58
No tiene un verde rojo por ahí
00:27:02
No tiene más que esto
00:27:04
Ah, no, no, vale
00:27:09
Ah, vale, aquí me salen todos
00:27:18
No hay un verdecito ahí para decirle que pase
00:27:20
Y un prohibido para decirle que no pase
00:27:29
Bueno
00:27:31
Pues en el caso de que pueda pasar
00:27:40
Nos va a sacar este
00:27:44
Y en el caso de que no pueda pasar
00:27:46
Nos va a sacar
00:27:56
Este
00:28:00
Lo he puesto
00:28:05
Si no puede pasar, pues
00:28:12
Este mínimo
00:28:24
Vale, ya está
00:28:26
Vale, eso nos va a sacar la aplicación
00:28:27
Para que el tío sepa si tiene que dejarles pasar o no
00:28:38
Pero ¿cuál de los dos?
00:28:40
Pues va a depender de
00:28:42
Una condición
00:28:43
De una condición que la voy a llamar
00:28:44
Pasan, por ejemplo
00:28:51
Vale, y ahora ya
00:28:52
Este es mi problema
00:29:04
Expresar la condición
00:29:05
En Java
00:29:07
Que tienen que cumplir
00:29:09
Las dos personas para que yo las deje pasar
00:29:11
Porque van siempre de dos en dos
00:29:13
Pues para que yo las deje pasar
00:29:15
Tienen que ser
00:29:17
O mayores de 18 ambas
00:29:18
O si una es menor
00:29:21
La otra
00:29:25
tiene que ser mayor de 21
00:29:26
luego, leyendo esto
00:29:28
yo lo tengo que ir desglosando
00:29:31
en casos, en posibilidades
00:29:33
vale, pues
00:29:35
¿en qué posibilidades
00:29:37
puedo desglosar
00:29:39
este hecho?
00:29:40
que puedan pasar las de 18
00:29:43
sin ninguna restricción
00:29:45
o si pase un menor
00:29:46
esté siempre
00:29:48
acompañado con un mayor
00:29:50
bueno, pues tengo dos opciones
00:29:52
si las dos son mayores de 18, está claro
00:29:54
luego esa es una posibilidad en la cual yo diré
00:29:56
pasa, porque la 2 mayor es 18
00:30:00
pero
00:30:01
en caso de que alguna no cumpla eso
00:30:03
si alguna
00:30:06
no lo cumple
00:30:08
pues entonces la otra
00:30:08
tiene que ser mayor de 21
00:30:11
luego esa es mi primera forma de plantearlo
00:30:13
sencilla
00:30:16
o las 2 mayores de 18
00:30:17
o
00:30:19
una de ellas mayor de 21
00:30:20
¿vale?
00:30:23
Entonces, vamos a ponerlo primero a lo bestia, luego lo podemos simplificar.
00:30:26
Entonces, esto va a ser una de estas dos posibilidades, una de estas dos para que sea cierto, una de estas dos.
00:30:34
O edad 1 mayor o igual de 18 y edad 2 mayor o igual de 18, o las dos mayores de 18,
00:30:43
O si esto no se cumple, podría poner edad 1 mayor o igual de 21 o edad 2 mayor o igual de 21.
00:30:57
Entonces, ¿me explico qué he traducido aquí? Esas dos posibilidades. O bien los dos simultáneamente mayores de edad. Ahí no hay ningún problema.
00:31:22
Vale. Pero si esta es falsa, si esta es falsa, entonces ya salto a la segunda. Si esta es falsa es porque al menos uno es menor, ¿verdad? Porque si no, no habríamos saltado a esta parte del or, esto ya sería true, el boolean es true y listo.
00:31:30
luego si
00:31:49
los dos son mayores o iguales de 18
00:31:52
pasan, pero si esta es falsa
00:31:54
si esta es falsa
00:31:56
es porque uno de los dos
00:31:58
no sé cuál
00:32:00
uno de los dos es menor de 18
00:32:00
no sé cuál
00:32:03
vale, pues en ese caso
00:32:04
para que uno de los dos sea mayor que 18
00:32:06
la única posibilidad es que
00:32:09
uno de los dos sea mayor de 21
00:32:11
entonces
00:32:13
si no se cumple esto
00:32:15
Pero la otra posibilidad se reduce a que uno de los dos sea mayor de 21, el que sea, porque ya sabemos que el otro será menor, porque si no fuera menor, este habría sido true.
00:32:17
Entonces, esta condición parece que me expresa eso, o ambos mayores de edad, o si no, uno de los dos mayor o igual que 21, uno de los dos, no sabemos cuál, el que sea, el otro entonces será el menor.
00:32:36
y aquí
00:32:49
sí que los paréntesis
00:32:56
en este caso en concreto
00:32:58
no, o sea, serían
00:33:05
importantes si esto fuera un and
00:33:06
¿vale?
00:33:08
porque si esto fuera, porque yo quiero
00:33:14
que esto lo haga
00:33:16
antes de hacer este or
00:33:17
quiero que lo haga antes
00:33:20
¿vale?
00:33:21
entonces, bueno, vamos a parar porque igual
00:33:24
ya estáis medio desconectados y lo que
00:33:26
os voy a decir ahora a lo mejor
00:33:28
no lo procesáis, entonces vamos a parar aquí
00:33:30
y luego terminamos
00:33:32
de sacarle un poco el jugo a esta expresión
00:33:33
- Materias:
- Programación
- Niveles educativos:
- ▼ Mostrar / ocultar niveles
- Formación Profesional
- Ciclo formativo de grado básico
- Primer Curso
- Segundo Curso
- Ciclo formativo de grado medio
- Primer Curso
- Segundo Curso
- Ciclo formativo de grado superior
- Primer Curso
- Segundo Curso
- Ciclo formativo de grado básico
- Subido por:
- Raquel G.
- Licencia:
- Todos los derechos reservados
- Visualizaciones:
- 1
- Fecha:
- 2 de octubre de 2026 - 14:09
- Visibilidad:
- Clave
- Centro:
- IES ROSA CHACEL
- Duración:
- 33′ 43″
- Relación de aspecto:
- 1.78:1
- Resolución:
- 1920x1080 píxeles
- Tamaño:
- 148.85 MBytes