En esta nueva entrega del curso de java, vamos a tratar las soluciones relacionadas a los dos últimos problema.
En el volumen VIII, se propusieron 4 problemas cortos, para coger soltura con el lenguaje, en el volumen anterior, dimos la solución a los dos primeros.
Ahora vamos a facilitaros una posible solución a los dos siguientes. El primero de ellos trataba sobre la utilización de if anidados ( los conocidos «elseif»), mientras que el segundo trataba sobre la implementación de un programa sencillo mediante un switch. Como parte opcional a este último, se propuso que también se podía implementar con elseif.
Sin tardar mas vamos meternos en las soluciones de los problemas.
ElseIf
Crear un programa principal con dos atributos enteros, que serán dos edades de dos personas, se les asignará un valor que vosotros escogeréis.
- Si las dos son mayores de 18, se mostrar por pantalla “Pueden votar los dos”.
- En el caso de que solo uno tenga mayoría de edad, se mostrara por pantalla un mensaje indicando quién puede votar y quién no.
- En caso de que los dos sean menor de edad mostraremos “Ninguno de los dos puede votar”.
Solución:
Comentar que losmas complicado tal vez sea el uso del operador &&. Resulta de bastante utilidad ya que de no haberle utilizado, el numero de if habría aumentado hasta el doble, ya que es una comparación. Este operador junto con ||, nos van a servir de mucho en un futuro próximo.
&& significa un AND (i lógico), ambas cosas deben cumplirse.
|| significa un OR (o lógico), se cumple una cosa u otra.
Vamos con la solución del segundo problema.
Switch
Crear un programa principal en el cual trataremos de identificar que operador aritmético es. El programa tendrá un único atributo que sera un carácter, al cual le asignaréis vosotros el valor que queráis (*, +, –. /) o bien uno distinto de los signos aritméticos (a, x, $, …).
- Si es el *, deberá mostrar por pantalla “El operador es el *”.
- Si es el +, deberá mostrar “El operador es el +”.
- Si es el -, deberá mostrar “El operador es el –”.
- Si es el /, deberá mostrar “El operador es el /”.
- Si no es ninguno de los anteriores, mostrar “ Carácter desconocido”.
Solución:
Solución alternativa:
Como podéis ver, la solución alternativa resulta algo mas «pesada» a la vista, ya que tienes que hacer comparaciones que con el switch, puedes suprimir, ya que el propio switch, internamente se encarga de hacerlo.
Hasta aquí, la resolución de los ejercicios. Cualquier duda o comentario sobre la resolución, así como posibles soluciones alternativas que queráis compartir, no las podéis exponer.
En el siguiente volumen, os propondremos la primera parte de un ejercicio, se tratara de la implementación de una clase con funcionalidades, pero bueno, no quiero desvelar más, el lunes lo veréis.