domingo, 12 de junio de 2016

Operadores Aritmeticos y el Bucle While Java

Para ir a los ejercicios :  Ejercicio 1,   Ejercicio 2

La aritmética en Java

   En videos y entradas anteriores hemos visto que podemos escribir operaciones aritméticas directamente en nuestro código, y Java al igual que una calculadora resolverá la operación, veamos el siguiente ejemplo :
System.out.println(2+4);
En este caso la salida en consola sería la siguiente : 6

Los operadores

  Hay algunos operadores que como veremos son bastante obvios, los signos aritméticos que conocemos realizan las mismas operaciones de la matemática :
  • Suma + operador "más"
  • Resta - operador "menos"
  • Multiplicación o Producto * operador "por" Se escribe con un asterisco
  • División / operador "entre"
  Pero hay otros operadores en Java que podrían no parecer tan obvios desde el punto de vista matemático.

El operador de Módulo

  Este operador nos va a realizar una división, pero en lugar de mostrarnos el cociente, nos va a mostrar el resto, este operador lo vamos a escribir con el signo de porcentaje "%", ejemplo :

10%3 = 1
Ya que hace la división "entera" osea no de forma exacta sino únicamente usando números enteros, de esta forma :
10/3 = 3 y nos sobra 1  otros ejemplos
15%4 = 3  ;  50%3 = 2

Los operadores de incremento y decremento

  En el video que acompaña a esta entrada vemos un operador formado de dos signos "más" (++), esto se conoce como operador de incremento, y no es el único, existen tres operadores de incremento : "++" , "+=" y "*="
  Al usar el primero con una variable, numérica, estamos incrementando su valor en uno (1) cada vez que se ejecute la respectiva linea de código, ejemplo
 Si usamos el operador ++ fuera de un bucle
int num = 0;
num++; //aquí aumentamos en 1 el valor de la variable
num++; // aquí lo volvemos a hacer
num++; // aquí lo hacemos una vez más
System.out.println(num);
La salida en consola será : 3
y si llegamos a ejecutar 100 veces esa linea de código el valor de num llegaría a 100, tal cual como vimos en el video con el bucle while

  Con el segundo (+=) podemos aumentar el valor de la variable en la cantidad que especifiquemos, por ejemplo si usando el bucle while quisiéramos mostrar los números del 1 al 100 pero de 2 en 2, haríamos lo siguiente

int num = 0;
while(num <= 100){
    System.out.println(num);
    num+=2;
}
  El resultado en consola serían los números del 2 al 100 pero de 2 en 2 osea :
0, 2,4,6,8,10....100

  También lo podemos hacer de 3 en 3 de la siguiente forma

int num = 0;
while(num <= 100){
    System.out.println(num);
    num+=3;
}

   El tercer operador de incremento "*=" nos permite aumentar el valor no de forma aditiva, si no multiplicando, de la siguiente manera :
int num = 2;
num*=2; // el valor será ahora 4 ya que 2*2 = 4
num*=2; // el valor será ahora 8 ya que 4*2=8
num*=2; // el valor ahora será 16 porque 8*2=16
num*=2; // aquí tenemos 32 ya que 16*2=32

  Y los mismo es válido para cualquier número

El decremento

    Existen 2 operadores de decremento, la lógica detrás de ellos es la misma que con los anteriores; tenemos los siguientes : "--", "-=" y "/="
  En el caso del primero disminuye el valor de nuestra variable en 1 cada vez que se ejecute, podríamos usarlo para escribir los números del 100 al 0 de la siguiente manera :
int num = 100;
       while(num >= 0){
           System.out.println(num);
           num--;
       }
La salida en consola sería : 100, 99, 98, 97 ....3,2,1,0

  El segundo nos permite disminuir el valor en la cantidad que queramos, por ejemplo :
int num = 100;
       while(num >= 0){
           System.out.println(num);
           num-=2;
       }
El resultado en consola sería el siguiente : 100, 98, 96, 94, 92....6,4,2,0

  Y por último, el operador "/=" nos permite disminuir el valor de la variable dividiéndolo por la cantidad que especifiquemos:
int num = 100;
       while(num > 0){
           System.out.println(num);
           num/=2;
       }
El resultado en consola sería : 100, 50, 25, 12, 6, 3, 1
  En este último ejemplo en lugar de usar la condición "num >=0" usamos "num>0", la razón de esto te la dejo de tarea, escríbanme la respuesta en los comentarios

1 comentario:

  1. En el último ejemplo usas la condición "num>0" porque el 1 al dividirle 2, saldría 0.5 y de ahí seguiría 0.25, 0.125, etc. La variable num está declarada como entero o sea solo contendría 0, lo que convertiría el while en un bucle infinito si la condición hubiera sido "num>=0"! :D

    ResponderEliminar