miércoles, 29 de noviembre de 2017

3.2 Uso y operaciones con variables. Uso del 'if'

Vale, imaginemos que tenemos el siguiente código:



No nos encontramos nada nuevo:
  • int num1 = 3: una variable del tipo 'int' con valor 3.
  • int num2 = 3: otra variable del tipo 'int' con valor 5.
  • int resultado: una variable vacía (si queremos, podemos iniciarla con valor 0, pero no es necesario) donde guardaremos el resultado.
Ahora imaginemos que queremos hacer una suma, una resta, una multiplicación y una división y, además, como somos avariciosos, queremos mostrar nuestros resultados por pantalla.
"Espera... ¿mostrar resultados por pantalla? ¡eso ya lo hemos dado!" - tranquilo fiera, que hay mucho de qué hablar aquí.

Lo primero, para operar con variables en Java, es como si operásemos con números normales. Para ello, simplemente escribiremos:

  • resultado = num1 + num2; (si queremos hacer una suma)
  • resultado = num1 - num2; (si queremos hacer una resta)
  • resultado = num1 * num2; (si queremos hacer una multiplicación)
  • resultado = num1 / num2; (si queremos hacer una división)
  • resultado = num % num2; (si queremos calcular el RESTO de una división)
(Esta es otra forma adicional de realizar operaciones)

"Perooooo, ¡si guardamos todo en resultado, cada vez que hagamos una operación se borrará el valor!" - bien visto. Llegados a este punto podemos hacer dos cosas:

  1. Crear varias variables, como resultadoSuma, resultadoResta, etc... para guardar cada operación.
  2. Y la más sencilla si no vamos a usar esa variable, es simplemente hacer las operaciones dentro del System.out.println("").
"Espera... ¿qué?¿hacer operaciones dentro del println?¿pero eso no era para mostrar cosas?" - sí, pero también realiza operaciones. Por ejemplo. Podemos escribir un println que nos diga el resultado de todas las operaciones sin necesidad de crear la variable resultado o sus derivados, escribiendo lo siguiente:

System.out.println("El resultado de la suma es: "+ (num1+num2)
                               +"El resultado de la resta es: "+ (num1-num2)); (etcétera...)

Si nos damos cuenta, las variables no van entre paréntesis, y es que sólo debe ir entrecomillado si escribimos texto y no una variable. Sin embargo, si lo que vamos a mostrar es el valor de una variable, ésta debe ir sin comillas. Conviene recordar que para añadir texto a un println simplemente hay que añadir un símbolo de + lo que queramos añadir.
Por ejemplo, podemos optimizar el 'Hola Mundo' que hicimos anteriormente. Para ello, simplemente escribiremos:

Lo que hará el programa es simplemente mostrar el contenido de la variable frase.

"Oyeeee, volviendo a lo de antes, pero... ¿y qué pasa si queremos hacer num1/num2 pero num2=0? ¿Eso no daría un error?" - bien visto, mi joven Padawan. Para evitar ese error y que el programa haga 'caput' en medio de la ejecución, introduciremos una instrucción llamada if. Una instrucción if tiene el siguiente formato:

if (sipasaesto){
      
     Se ejecuta esto

}

Es muy importante que el código que se vaya a ejecutar vaya entre los corchetes.
Obviamente, en vez de 'sipasaesto', hay que poner una condición para que se ejecute el if. Aplicado al ejercicio, podemos sustituir ese 'sipasaesto' de dos maneras:

  • num2<=0 || num2>=0
  • num2!=0
Pero... ¿qué son esos símbolos raros que aparecen ahí? Bien, eso son operaciones lógicas. Hay varios tipos, cuyo significado son:

  • >: mayor que.
  • <: menor que.
  • =>: mayor o igual que.
  • <=: menor o igual que.
  • ==: compara si es igual a algo (no confundir con =, que establece un valor).
  • !=: comprueba que el valor sea distinto del número.
  • &&: indica que además de una condición, se necesita que se cumpla otra. Por ejemplo, si queremos que el número sea positivo y que sea par, escribiríamos:
    • if (num2>0 && num2==0){};
  • ||: indica que se debe cumplir una de las condiciones. Por ejemplo, si queremos que el número sea positivo o que sea par (sé que ahora mismo no tiene mucho sentido, por eso digo 'por ejemplo'), escribiríamos:
    • if (num2>0 || num2==0){};
Además del if, existen dos instrucciones complementarias más: else y else if. La estructura del else if es exactamente igual a la del if . La de un else es igual pero sin los paréntesis, ya que esa instrucción se traduciría literalmente como "Si pasa esto, haz esto, si no, haz esto otro".
Un if no necesita un else o un else if, pero si escribimos uno de estos dos, necesitamos obligatoriamente un if.

Aplicado al ejercicio de antes, nuestro ejercicio optimizado con un if, quedaría de la siguiente forma:

Una sesión intensa, ¿no crees? Si todavía sigues en pie y quieres más, ¡continuemos!

0 comentarios:

Publicar un comentario