Saltar navegación

20251020 ProgEstr-EjerDecision_2 - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 20 de octubre de 2025 por Raquel G.

4 visualizaciones

Descargar la transcripción

vale, pues vamos a volver un poquito a este 00:00:00
para ver si lo podemos reducir 00:00:02
un poco, porque fijaos 00:00:05
que esto de 00:00:07
copiar y pegar al final 00:00:08
la opción del 2 00:00:12
pues lo del caso 2 00:00:14
copiarlo y pegarlo 00:00:28
en el 3 y en el 4 y en el 5 00:00:30
ya está, podríamos copiar el caso 2 00:00:32
en el 3, en el 4 y en el 5 00:00:34
cambiando el 20 por 50 00:00:36
y... 00:00:38
vale, pues funciona, pero es que 00:00:39
nos quedarían tropecientas mil líneas 00:00:42
entonces, una vez que hemos copiado y pegado 00:00:43
es cuando nos podemos dar cuenta de, pero a ver 00:00:46
si estoy haciendo todo el rato lo mismo 00:00:48
en todos los casos, en el 2, en el 3, en el 4 00:00:49
en todos estoy concatenando 00:00:52
un prefijo a un sufijo 00:00:53
que es el mismo, entonces estoy haciendo 00:00:56
eso, entonces ¿por qué los tengo que 00:00:58
distinguir todos uno por uno? 00:01:00
No puedo a lo mejor compactarlo y decir si es de 2 en adelante, prefijo este en función del caso, sufijo en función del caso y concateno y ya está. 00:01:01
No lo dejaríamos un poquito más compacto a lo mejor. 00:01:13
Vamos a ver cómo nos queda y ya está y pasamos de este ejercicio. 00:01:16
Entonces, para no borrar esto voy a hacer ejercicio 31 versión B en otro paste. 00:01:19
ejercicio 31 00:01:35
versión 2 00:01:37
vale, pues 00:01:38
venga, pues he hecho 00:01:44
Lenin, vete a tu sitio, por favor 00:01:47
he copiado el ejercicio 31 00:01:50
entero tal cual 00:01:55
y vamos a ver que podemos hacer 00:01:56
del caso 2 en adelante 00:01:58
porque el caso 0 00:02:01
y el caso 1 van por libre realmente 00:02:02
no hay patrones en ellos 00:02:04
no hay patrones 00:02:05
Entonces los podemos dejar por libre 00:02:07
Pero del caso 2 en adelante si hay un patrón 00:02:10
Que lo que cambia es el prefijo 00:02:14
Y el sufijo luego es igual 00:02:18
Entonces podríamos 00:02:22
Voy a copiar para 00:02:27
Es decir, para el caso 3 00:02:39
Y para el 4 y para el 5 00:02:42
A ver como lo podríamos 00:02:46
Vale, pues primero 00:02:51
Podemos sacarnos 00:02:58
Caso 3, 4, 5 00:02:59
A ver donde estamos 00:03:04
Aquí 00:03:05
Vale, es que con un if 00:03:12
El se 00:03:25
Va a quedar mucho mejor 00:03:25
Venga 00:03:28
vale, pues lo pulimos entero 00:03:29
para que nos quede más claro 00:03:36
lo pulimos entero 00:03:38
unidades, decenas 00:03:39
entonces, primera cosa 00:03:42
que podemos hacer 00:03:44
poner lo que sería el sufijo, las unidades 00:03:45
en texto, ¿verdad? 00:03:48
y ahora aquí podríamos hacer 00:03:51
entonces aquí tendríamos un 00:03:53
prefijo 00:03:56
¿vale? entonces 00:03:59
El sufijo está en función de las unidades 00:04:11
Y ahora en el caso de que sea 1 00:04:14
Pues el sufijo es igual a 1 00:04:21
En el caso de que sea 2 00:04:26
Ahora lo completamos 00:04:36
En el caso de que sea 2 00:04:51
Pues será 2 00:05:09
En el caso de que sea 3 00:05:10
Pues será, el sufijo será 3 00:05:13
En el caso de que sea 4 00:05:17
Pues será 4 00:05:20
En el caso de que sea 5 00:05:25
Y en el caso de que sea 9, pues 9 00:05:27
Y aquí terminamos este switch de aquí 00:05:59
Este existe, ¿no? 00:06:11
Por ahora lo quito 00:06:13
Entonces, ahí tengo ya un sufijo 00:06:14
1, 2, 3 00:06:18
Que seguramente me sea útil 00:06:19
Porque muchos de los resultados 00:06:21
empiezan por un prefijo 00:06:23
distinto, empiezan por 30io 00:06:25
40io, pero 00:06:27
acaban igual, acaban por 00:06:29
2, 1, 3, 4 00:06:31
acaban igual, entonces ese sufijo seguramente me sea 00:06:33
muy útil, pues ya lo tengo ahí construido con ese 00:06:35
switch case, y ahora ya 00:06:37
podemos distinguir los casos, lo vamos a hacer 00:06:39
con un if el save para cambiar 00:06:41
pues ahora ya sí 00:06:43
en función de este numerito que me han dado 00:06:45
si las decenas 00:06:47
decenas 00:06:53
es igual a cero, ya sabemos que 00:06:54
eso va por libre 00:06:57
hacemos lo que haya que hacer 00:06:58
que ya sabemos que es por libre, que aquí 00:07:01
habrá de nuevo only if el safe 00:07:03
o en switch case, para poner 00:07:05
cero, uno, dos, tres, porque esto irá por libre 00:07:07
esto lo podéis 00:07:09
completar 00:07:11
con el switch case correspondiente, no hay otra 00:07:12
en función de si las unidades son cero 00:07:15
bueno 00:07:17
bueno, podemos usar 00:07:18
el propio sufijo, si lo tenemos aquí 00:07:21
si las unidades son 0 00:07:23
aquí solamente 00:07:25
claro, mostrar el sufijo 00:07:26
salvo si es 0, que entonces mostrará 0 00:07:29
vale 00:07:31
en el caso, vamos a añadir el caso 0 00:07:32
aunque luego 00:07:35
no lo usamos para concatenar el otro 00:07:37
pero en el caso 0 00:07:39
pues ese 00:07:50
sufijo sería igual a 00:07:52
y break 00:07:55
vale, pues entonces ya tenemos 00:08:00
esa variable ahí que nos va a ser bastante útil 00:08:04
0, 1, 2, 3 00:08:06
ahora ya, si las decenas son 0 00:08:07
el resultado está claro, es mostrar 00:08:09
esto 00:08:12
mostrar lo que me haya dado a mí en el 00:08:12
sufijo, el numerito que me haya dado 00:08:21
depende del número, ¿vale? depende de las 00:08:23
unidades, y ahora 00:08:25
si no estamos en el caso de que 00:08:27
las decenas sean 0, sino que 00:08:32
las decenas es igual a 1 00:08:34
pues aquí sí que va 00:08:37
bastante por libre, porque 00:08:39
tengo el 10, 11, 12, 13, 14, 15, que no siguen patrones, esos los tendría que distinguir 00:08:40
con un switch case de las decenas o con un if-else-if, a elegir, con un switch case o 00:08:49
un if-else-if, y luego, si no es ninguno de esos, sí que podríamos hacer, ya concatenar 00:08:55
al sufijo, ¿vale? Entonces 00:09:05
en este caso, por ejemplo, si el numerito 00:09:09
si el número que es n 00:09:12
si el número que es n es mayor o igual 00:09:16
que el 16 00:09:24
entonces aquí el resultado lo podemos acortar 00:09:26
poniendo 10 y más 00:09:32
Sufijo, ¿verdad? 00:09:39
16, 7 o 19 00:09:41
¿Vale? Entonces si es mayor 00:09:43
Claro 00:09:45
Y luego el resto de los casos 00:09:48
El save 00:09:50
N igual a 00:09:52
Pues aquí ya, esto sí que habría que hacerlo por separado 00:09:56
Obviamente 00:09:59
System.out 15 00:10:00
Y resto 00:10:02
Para no 00:10:04
N igual a 16 00:10:05
¿Vale? 00:10:16
Y resto de casos 00:10:19
Esto sí que hay que hacerlo por libre 00:10:21
Si decenas es igual a cero 00:10:25
Lo hemos completado en este 00:10:26
Este está claro 00:10:28
Si decenas es igual a uno 00:10:29
Tenemos dos casos 00:10:31
Que sea mayor o igual que 16 el número 00:10:33
Pero tendría que poner menor que 20 00:10:35
Sí, pero es que estoy en el subcaso 00:10:38
De que decenas es igual a uno 00:10:42
Entonces no hace falta 00:10:43
Porque estoy en este subcaso 00:10:44
Si no, efectivamente tendría que completarlo así 00:10:46
Pero como estoy dentro de este el save 00:10:48
no va a ser de 20 en adelante 00:10:50
vale 00:10:53
ahora ya 00:10:55
en el resto de casos 00:10:56
si estoy de 20 en adelante 00:10:58
vale 00:11:03
pues ahora ya aquí 00:11:05
tendríamos que 00:11:07
aquí se puede plantear de muchas maneras 00:11:09
estoy de 20 en adelante 00:11:17
si las unidades son 0 00:11:20
también es un caso 00:11:22
especial porque 20, 30, 40 00:11:24
Entonces, si las unidades son 0 00:11:26
Si las unidades son igual a 0 00:11:31
Aquí podríamos distinguir 00:11:41
Sí, bueno, más que las unidades 00:11:44
Como luego vamos a tener que distinguir 00:11:55
Esto lo más fácil es hacer 00:11:56
Si el número es igual a 20 00:11:58
Pues entonces 00:12:02
Si el número es igual a 20 00:12:05
Hacemos el prefijo 00:12:08
Igual a 20 00:12:10
Y aquí vamos distinguiendo 00:12:13
Si el número 00:12:15
Es igual a 30 00:12:17
Y luego ya lo concatenamos con el otro 00:12:19
Es igual a 30 00:12:21
Entonces 00:12:24
El prefijo igual a 30 00:12:26
Perdón 00:12:31
Ay que tontería estoy haciendo 00:12:34
Igual a 20 00:12:35
El prefijo igual a 00:12:36
Hago solo el 40 y el resto sería igual 00:12:44
Si el número es igual a 40 00:12:49
El prefijo sería igual a 40 00:12:56
Y así resto de casos 00:13:05
Que lo pongo ahí en comentario 00:13:09
Y ahora, una vez que tengo el prefijo fijado 00:13:11
En el caso de que esté de 20 en adelante 00:13:22
Una vez que tengo el prefijo fijado 00:13:25
El caso final 00:13:26
Aunque los 20 van a quedar mal 00:13:28
porque es 20, pero habría que hacer otra distinción 00:13:30
más que hace muy pesado 00:13:33
entonces 00:13:34
una vez que 00:13:35
tengo ya fijado el prefijo 00:13:38
en el caso de que sea de 20 en adelante 00:13:40
ahora ya 00:13:42
podemos hacer 00:13:44
si las unidades 00:13:45
resulta que fueran igual a 0 00:13:48
lo que tengo que mostrar es el prefijo sin más 00:13:53
20, 30, 40, lo que fuera 00:13:55
mostrar el prefijo 00:13:57
Pero si las unidades no fueran cero, en el caso S, que tengo que mostrar el prefijo concatenado con I y concatenado con el sufijo. 00:14:00
Prefijo concatenado con I y concatenado con esto. 00:14:13
Ya tengo otra versión. 00:14:27
Bueno, me faltaría completarlos. 00:14:38
Esto es el save de 50. 00:14:40
Aquí ya, claro, este programa 00:14:42
¿Qué haría? Primero, te fija las unidades 00:14:44
Esta variable te la fija por libre 00:14:46
0, 1, 2, vale, ahora ya empezamos a distinguir 00:14:48
Resulta que decenas 00:14:51
Es igual a 0 00:14:52
Mostramos las unidades, ahí no hay duda 00:14:53
Mostramos unidades, listo 00:14:55
¿Que estamos en la primera decena? 00:14:57
Pues si estamos 00:15:01
En mayor o igual que 16 00:15:02
10 más las unidades 00:15:04
Que sean 00:15:06
Si estamos en 15, 16, 17, eso ya por libre 00:15:07
15, 16, 17, esto ya se puede completar 00:15:10
System out, 15, system out, 16 00:15:13
Perdón, en igual a 15, 14 00:15:15
Perdón, 14 00:15:19
13, 12, 11 00:15:21
Esto tendría que completar los system out 00:15:23
15, system out 14, el siguiente system out 00:15:25
13, el resto de casos 00:15:27
Lo completaría ya con el system out 00:15:29
Específico, igual que aquí, ¿no? 00:15:31
Aquí, system out 00:15:33
Venga, 15 00:15:38
Pues igual que aquí pondría 00:15:44
14, hasta 00:15:46
el 11, perdón 00:15:48
aquí 14 00:15:55
resto de casos 00:15:55
hasta el 11 00:15:58
hasta el 00:15:59
11, vale 00:16:02
entonces la primera decena ya la tengo 00:16:04
cubierta, para los mayores de 16 00:16:06
lo consigo 00:16:09
así, y de 15 a 00:16:11
11 ya los tengo que hacer a mano, ahí no hay 00:16:13
tutía, de 15 a 11 a mano 00:16:14
y ahora, de las decenas del 20 en adelante 00:16:16
es la concatenación 00:16:19
De un prefijo y un sufijo 00:16:20
Lo único es que el 20 00:16:22
Tiene un matiz, porque me va a salir 00:16:25
20 y 1, 20 y 2 00:16:26
Entonces el 20 tendría que tratarlo por libre 00:16:29
Pero para no alargarlo demasiado 00:16:31
Vamos a tratarlos igual, 31, 40 y 00:16:32
Entonces todos 00:16:35
Funcionan igual 00:16:36
Todos de 20 en adelante funcionan igual 00:16:38
Es un prefijo concatenado a las unidades que sean 00:16:40
Pues el prefijo 00:16:43
Lo fijo en función del numerito 00:16:44
Si es 20, si es 30 00:16:46
bueno, perdón, si es igual a 20 00:16:48
no, si es mayor o igual que 20 y menor o igual que 30 00:16:52
esta condición estaría mal puesta 00:16:55
si es mayor o igual 00:16:56
que 20 y menor o igual 00:16:59
y menor que 30 00:17:03
perdón, y menor que 30 00:17:06
es decir, si estoy en la segunda decena 00:17:09
el prefijo es 20 00:17:12
y así con todos 00:17:13
Si estoy en la tercera decena 00:17:16
Es decir, mayor o igual que 30 00:17:20
Y menor o 00:17:22
Y menor que 40 00:17:24
Entonces el prefijo sería 30 00:17:25
Pero si estoy 00:17:27
En la cuarta decena 00:17:29
Es decir 00:17:32
Mayor o igual que 40 00:17:33
Y menor que 50 00:17:35
Entonces el prefijo sería 40 00:17:39
Y así resto de casos 00:17:40
Hasta 90, tendríamos que poner, claro 00:17:42
Resto de casos 00:17:44
Ya tengo el prefijo. Y ahora ya, ¿qué número es? Pues será, en todos los casos, prefijo concatenado con i y el sufijo, salvo si las unidades son 0. 00:17:46
Porque si las unidades son 0, pues entonces no es 20 y 0, 30 y 0. En ese caso es el prefijo solo, sin más. 00:17:57
Vale, solo, sin más 00:18:04
Vale, pues salvo por el matiz 00:18:06
De que 21, 22 00:18:09
No se escribe 21, 22 00:18:11
Que lo podríamos sacar por libre 00:18:14
Esto ya debería funcionar 00:18:16
Vamos a ver si nos hemos equivocado en algo 00:18:17
Por ejemplo 00:18:24
Meto un número cualquiera de la primera decena 00:18:31
7, vale, meto el 0 00:18:34
cero, estupendo, voy a meter 00:18:37
uno de la segunda decena de los raros 00:18:39
que había contemplado 00:18:41
ya, el quince, este lo había contemplado 00:18:43
quince, muy bien, voy a meter 00:18:45
uno ahora de los genéricos de la segunda decena 00:18:47
diecisiete, muy bien 00:18:49
voy a meter ahora ya 00:18:51
de las otras decenas que he contemplado 00:18:53
el treinta y cinco, treinta y cinco 00:18:55
muy bien, sí 00:18:57
un tres 00:19:01
vale, de la primera decena, si ya la habíamos 00:19:04
vale, vamos a poner este 00:19:07
20, muy bien 00:19:10
el 40 00:19:11
vale, pero si pongo 00:19:14
45, pues me concatenará 00:19:15
ese prefijo 40 al sufijo 5 00:19:18
45, lo único que 00:19:20
queda raro aquí es si pongo 1 00:19:22
como esto, porque el 20 00:19:23
no es 20 y 5 00:19:25
entonces para el caso del 20 00:19:27
tendría que hacer solamente una 00:19:30
distinción más, y es 00:19:31
si las unidades son 0 o no 00:19:33
Porque si son 0 es 20 00:19:34
Y si no, tengo que cambiar el prefijo 00:19:37
A 20 00:19:39
Cambiarlo a 20, nada más 00:19:40
Es decir, aquí en el 00:19:43
Caso 20 00:19:49
Tendría que hacer otro if más 00:19:50
Si las unidades son 0, pero bueno, no merece la pena 00:19:54
Vale, pues ahora ya 00:19:56
Sin bucles, sin funciones 00:20:00
No hay forma de compactar esto más 00:20:03
¿Vale? No hay forma de compactarlo más 00:20:05
Vamos a 00:20:09
Pedírselo a nuestro amigo 00:20:10
A ver si nos es capaz de hacer algo mejor 00:20:13
Sin usar 00:20:15
Funciones, ni Arrays, ni nada de eso 00:20:17
A ver si 00:20:19
A ver como lo resuelves 00:20:21
En Java 00:20:29
Sin Arrays 00:20:31
Creando métodos 00:20:35
Auxiliares 00:20:40
Ni bucles 00:20:43
Es decir 00:20:44
Solo con 00:20:46
Sin bucle, sin array, sin método 00:20:47
Solo usando if el save 00:20:52
Bueno, podrías un switch también, no pasa nada 00:20:53
A ver, ¿qué hace? 00:20:55
Bueno, primero con 00:20:59
No sé si se ve 00:21:00
Primero, bueno 00:21:02
El valida que esté fuera de rango 00:21:04
Hace un primer if para ver si es válido 00:21:06
Pero bueno, ya está 00:21:09
Nosotros hemos asumido que era válido 00:21:11
Ahora ya 00:21:12
Saca este texto de aquí 00:21:14
lo que hemos llamado nosotros 00:21:17
sufijo, 1, 2, 3 00:21:18
4, 5 00:21:21
bueno y lo saca para 00:21:22
para los casos raros también 00:21:24
y ahora para el resto 00:21:29
de los casos 00:21:33
va concatenando 10 y 20 00:21:33
va concatenando 00:21:37
con esto, le he dicho que no usara métodos auxiliares 00:21:39
y lo ha usado, va concatenando 00:21:41
con un método auxiliar, es decir, este código 00:21:42
lo ha sacado un método aparte 00:21:45
pero es lo mismo que hemos hecho nosotros dentro 00:21:47
vale, vamos 00:21:48
no ha hecho nada diferente 00:21:51
no se puede compactar nada más 00:21:53
vale, ha puesto aquí 00:21:55
un operador ternario para 00:21:57
bueno, si se lo pedís vosotros 00:21:59
no sé si lo hará con esta misma 00:22:05
versión o con otra distinta 00:22:06
pero 00:22:08
viene a ser lo mismo 00:22:10
vale 00:22:12
te voy a decir eso, profesor 00:22:14
si en el examen 00:22:15
los cuales que pedíamos 00:22:17
Venga, pues vamos al 26 00:22:19
Ejer 26 00:22:24
El ejercicio 26 00:22:35
Dice 00:22:40
Pedir un día 00:22:41
Un mes y un año 00:22:49
E indicar si la fecha es correcta 00:22:51
Vale, de nuevo habrá que anidar unas cuantas cositas 00:22:54
Pues ala 00:22:57
vale 00:23:00
pues venga, vamos a pedirle 00:23:18
las tres cosas que son los datos de entrada 00:23:28
el día 00:23:31
el mes y el año 00:23:37
Vale, datos de entrada 00:24:15
Pues aquí de nuevo es un montón 00:24:24
De anidar y felserif 00:24:26
Cositas, la idea es ver si conseguimos 00:24:28
Hacer un anidamiento lo menos complejo 00:24:30
Posible, y en este caso 00:24:32
Que realmente hay muchas cosas que contemplar 00:24:34
Lenin, ¿te puedes 00:24:36
Sentar en tu sitio y no 00:24:38
Andar paseando por ahí? 00:24:40
Ya, ya lo sé, pero eso 00:24:44
A mí me dificulta mucho 00:24:45
Pero todo contempla muchas breves a la vez 00:24:47
O sea, primero, hablar sin decir demasiadas tonterías, 00:24:49
sin perder el hilo del discurso. 00:24:52
No distraerme, ¿no? 00:24:54
Y es muy complicado si hay ruido de fondo, 00:24:55
si no está por aquí. 00:24:57
No se puede contemplar tantas... 00:24:58
Bueno, pues entonces, aquí el ejercicio en sí es fácil 00:25:03
porque se trata de contemplar todos los casos. 00:25:08
El problema aquí está en que nos quede un código 00:25:10
más o menos legible, nada más. 00:25:13
La dificultad no es el problema. 00:25:15
El anterior no era difícil porque rápidamente 00:25:17
veíais en la cabeza lo que teníais que hacer, 00:25:19
que era pues ir concatenando 00:25:21
ir haciendo switch case 00:25:24
ir haciendo if y en función del numerito 00:25:25
pues poner una cosa u otra 00:25:28
difícil no era porque sabíais lo que había que hacer 00:25:29
desde el principio 00:25:31
pero el asunto es como hago yo un código 00:25:32
que no sea demasiado lioso 00:25:35
como hago los if, como hago los else y ya está 00:25:36
pues aquí es lo mismo 00:25:39
vamos a ver si nos sale un código 00:25:40
que sea más o menos legible 00:25:43
entonces una cosa sencilla 00:25:44
puede ser quitarse primero 00:25:47
Y quitarse primero los casos no válidos 00:25:49
Porque eso es lo más fácil de comprobar 00:25:55
Ahí no hay nada que anidar 00:25:56
¿Vale? 00:25:59
Entonces, ¿cuáles serían los casos no válidos? 00:26:01
Pues los casos no válidos serían 00:26:14
Si el mes, por ejemplo 00:26:16
Si el mes es mayor que 12 00:26:19
El mes es 00:26:27
Menor que uno 00:26:30
¿Vale? 00:26:31
Pues ese caso es no válido 00:26:34
¿Verdad? 00:26:35
Entonces ahí 00:26:38
Fecha no válida 00:26:39
Vale 00:26:44
Aquí hay una cosa 00:26:46
Que nos facilita 00:26:52
En estos casos en los que hay que anidar 00:26:55
Tanto las cosas 00:26:57
Dime 00:26:58
Pero intenta decir 00:26:59
cuando hacemos el descanso 00:27:02
vale 00:27:04
hay una cosa que nos facilita la vida es 00:27:04
si la fecha no válida, si yo pudiera irme 00:27:08
de aquí y largarme y abandonar 00:27:10
el programa, fenomenal 00:27:12
porque si no, ahora tengo 00:27:14
que hacer un else, en el caso de que sea válido 00:27:16
y aquí ya me viene un anidamiento 00:27:18
super rollo, en el caso de que sea válido 00:27:20
ahora, vamos a ver que pasa 00:27:22
con el día, ya empezamos a anidar y es 00:27:24
un rollo que no veas, entonces si yo pudiera 00:27:26
en este punto 00:27:28
pirarme y decir no hagas 00:27:30
Nada más, programa terminado 00:27:32
Qué suerte, porque no tendría que poner aquí un ELSE 00:27:34
Repito, en el caso de que el mes sea 00:27:36
Válido y empezará a anidar 00:27:38
Y ahora qué pasa con el día 00:27:40
Bueno, pues afortunadamente 00:27:42
Tenemos 00:27:43
Esta sentencia 00:27:45
Que termina el programa en ese momento 00:27:48
¿Vale? Porque yo en este 00:27:55
Momento quiero terminar 00:27:57
¿Quiero terminar? 00:27:58
Ya está, quiero terminar 00:28:00
La fecha no es válida, fuera 00:28:01
Termina, ala, ya está 00:28:03
System Exit significa que el programa 00:28:06
se termina, entonces ya no sigue 00:28:09
después del if con todo lo que hubiera 00:28:11
no sigue, da igual lo que haya después 00:28:13
porque el programa termina 00:28:15
entonces, este numerito de aquí 00:28:16
¿qué significa? 00:28:19
es un numerito de control que se le da al sistema 00:28:20
operativo por si el sistema operativo quisiera 00:28:23
usarlo 00:28:25
¿y por qué querría usar esto 00:28:25
el sistema operativo? 00:28:29
bueno, ya sabéis que el sistema operativo, entre muchas otras cosas 00:28:30
gestiona todos los procesos 00:28:33
que se están ejecutando en nuestra CPU 00:28:35
y para cada proceso 00:28:38
se encarga de gestionar la memoria 00:28:40
que se le reserva al proceso, 00:28:43
su memoria de datos, todo. 00:28:45
Bueno, pues cuando nuestro programa Java arranque 00:28:47
será otro proceso más del sistema operativo, 00:28:50
otro más, junto con el Eclipse, 00:28:53
el explorador de archivos, 00:28:55
todo lo que está arrancado. 00:28:56
Bueno, pues ¿qué ocurre cuando hacemos System Exit? 00:28:58
Que nuestro proceso termina. 00:29:01
es decir, el proceso que se inició 00:29:03
cuando nuestro programa 00:29:06
arrancó, ese proceso 00:29:08
ha terminado 00:29:10
bueno, pues al sistema operativo le gusta 00:29:10
llevar un registro de los procesos 00:29:14
que han terminado 00:29:16
por una vía correcta 00:29:17
o los que han terminado porque 00:29:20
ha pasado algo raro, porque ha caído un meteorito 00:29:22
en el ordenador, entonces le gusta 00:29:24
llevar un registro de terminación normal 00:29:25
terminación anormal 00:29:28
terminación controlada, terminación no 00:29:29
controlada 00:29:32
cuando el sistema operativo recibe un cero 00:29:32
de un proceso que se ha muerto 00:29:36
asume que la terminación es controlada 00:29:37
no pasa nada, entonces en su tabla de registro 00:29:40
de procesos registra eso 00:29:42
entonces aquí la terminación 00:29:43
es controlada, yo quiero que cuando 00:29:46
mi programa sale por aquí 00:29:48
sale porque yo lo he mandado, se lo he ordenado 00:29:49
es una finalización de proceso 00:29:52
controlada bajo control 00:29:54
yo he mandado que este proceso termine porque la fecha 00:29:55
no es válida 00:29:58
Pues ya está. Y le mando el cero porque el cero significa terminación correcta. Un número diferente del cero no. ¿Vale? Bueno, pues entonces, repito. ¿Qué me permite incorporar esta sentencia? 00:29:59
porque cero 00:30:13
es el valor que el sistema operativo 00:30:15
interpreta como terminación normal 00:30:18
no terminación anormal 00:30:20
porque alguien cuando está ejecutando mi programa 00:30:22
pum, ha apagado el ordenador o ha hecho algo raro 00:30:24
o ha abortado mi proceso 00:30:26
directamente desde la ventana 00:30:28
de comandos o lo que sea 00:30:30
entonces, en conclusión 00:30:31
no me interesa a mí ahora tanto la gestión de procesos 00:30:34
que ya la estudiáis por otro lado 00:30:35
sino que esta sentencia 00:30:38
me permite a mí 00:30:40
salir de mi programa cuando 00:30:41
necesito hacerlo, pero siempre lo haré 00:30:43
bajo control, aquí quiero salir 00:30:45
de mi programa cuando la 00:30:47
fecha no es válida, vale, pues 00:30:49
ya está, entonces 00:30:51
¿qué me ha permitido esto? 00:30:53
lo que me ha permitido es no tener que poner 00:30:55
aquí un else y 00:30:57
que mi programa empiece a 00:30:59
anidarse y anidarse y quede un rollo 00:31:01
entonces cuando hablamos de códigos que tienen 00:31:03
muchos niveles de anidamiento 00:31:05
como este que dentro del mes hay que contemplar 00:31:07
y ahora si es febrero esto 00:31:09
y ahora si es no sé qué, pues puedo 00:31:11
ahorrarme 00:31:13
indentaciones y complejidades 00:31:15
en el código saliendo y ya está. 00:31:17
Entonces, si yo 00:31:19
llego a este punto de aquí abajo, si yo 00:31:21
llego a este punto, es porque 00:31:23
el mes era válido. Sí o sí. 00:31:25
Porque si el mes no hubiera sido válido, 00:31:27
mi programa había terminado fuera. 00:31:29
Ya está. Vale. 00:31:31
Pues ahora, si el mes es válido, 00:31:33
ahora yo puedo hacer también la 00:31:36
validación esta de aquí. 00:31:37
ahora 00:31:38
si el mes es válido, ahora ya sí que 00:31:41
el día será 00:31:44
válido o no en función de si el mes 00:31:46
es de 31 o es de 30 00:31:48
entonces ahora ya aquí podemos 00:31:50
hacer la condición de meses 00:31:52
de 31 días 00:31:54
vamos a 00:31:55
poner el boolean 00:31:56
por ejemplo, para practicar un poco 00:32:02
mes 00:32:04
31 días 00:32:07
pues la condición 00:32:10
mes 31 días sería válida 00:32:11
sería válida si 00:32:13
mes es igual a 1 00:32:14
mes es 00:32:18
igual a 3 00:32:21
o mes 00:32:22
es igual a 5 00:32:27
mes es igual a 5 00:32:32
6 7 00:32:34
es que agosto 8 00:32:35
si se podría seguramente 00:32:43
se pudiera compactar esta aplicación 00:32:47
como impar 00:32:49
Entre 1 y 7, pero bueno 00:32:51
Que a veces que tampoco 00:32:53
Compactando tampoco luego ganas tanto 00:32:54
Mes es igual a 00:32:57
8, 10 00:32:59
Es igual a 10 00:33:01
O mes es 00:33:05
Igual a 12 00:33:07
Vale, ¿podemos compactar 00:33:08
Esto más? Pues no lo sé, habría que ver 00:33:11
Impares menores que 7 00:33:13
El tema es 00:33:15
Impares entre 1 y 7 00:33:16
O pares entre 8 y 12 00:33:18
Si somos capaces de compactar eso mejor, por ejemplo, otra forma de poner esto, ya que nos ponemos, podría ser mes por ciento dos es igual a uno, luego es, o es distinto de, mes igual a dos es igual a uno, luego es impar. 00:33:21
Y y mes es menor o igual que 7 00:33:54
O si no, mes par 00:34:02
Igual que 7 00:34:05
O si no, mes par 00:34:10
Vale, la condición de arriba y la de abajo 00:34:18
Creo que son idénticas, ¿no? 00:34:30
Es decir, estar entre estos valores 00:34:33
A ver, que he borrado un doble igual 00:34:35
Estar entre estos es lo mismo que decir 00:34:37
¿Eres impar menor que 7 o eres par? 00:34:41
Porque estar entre 1 y 12 ya es seguro 00:34:45
Porque si no habríamos salido por aquí 00:34:47
Nos habríamos ido por ahí 00:34:49
Con lo cual que estamos entre 1 y 12 00:34:50
Está claro 00:34:54
Luego como estamos entre 1 y 12 está claro 00:34:55
Me da igual decir esto 00:34:57
Que decir eres impar menor que 7 00:34:59
Eres par 00:35:03
No pero ahí sería 00:35:04
Sí tienes razón es verdad 00:35:06
Porque o eres 00:35:12
Eres impar 00:35:13
No porque 00:35:16
Eres impar menor que 7 00:35:16
No, porque febrero es par, entonces no entraría 00:35:21
Febrero no entraría aquí 00:35:23
En vez de entrar, porque 00:35:25
Ah, sí, sí, sí, porque es par 00:35:26
Tienes razón 00:35:31
Sí, sí, sí, claro 00:35:32
O eres par 00:35:34
O eres, no, o eres 00:35:37
Eres impar 00:35:39
Menor que 7 00:35:42
Entonces, si no se cumple esto 00:35:43
Es porque eres mayor que 00:35:45
A ver, que yo también me estoy liando 00:35:48
Vamos a ver 00:35:52
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:
4
Fecha:
20 de octubre de 2025 - 17:12
Visibilidad:
Clave
Centro:
IES ROSA CHACEL
Duración:
35′ 55″
Relación de aspecto:
1.78:1
Resolución:
1920x1080 píxeles
Tamaño:
144.17 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid