Ver Mensaje Individual
  #3 (permalink)  
Antiguo 08/02/2015, 06:16
Avatar de Profesor_Falken
Profesor_Falken
 
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 10 años, 3 meses
Puntos: 182
Respuesta: Operaciones matematicas

Cita:
..primero, aclarando temas...si efectuas operaciones entre enteros, nunca puede haber resto, ya que si existieria, queda truncado...de ahi que en java 3 / 2 = 1, y la parte decimal ni aparece...

...para obtener resto tenes que trabajar con float o double.
Creo que es al contrario. El modulo se puede obtener perfectamente con enteros.

int x = 10;
int y = 7;
x % y = 3;


Precisamente cuando el operador modulus no funciona como se espera en este ejecicio es cuando utilizamos double o float (de hecho, en otros lenguajes como C/C++ solo está permitido el operador % entre operadores de tipo int). En ese caso nos devuelve el modulo de la división entera entre los dos numeros, es decir 5 % 25 = 5. Eso es el modulo, computacionalmente: mod(a,m) = a - m.*floor(a./m)

El resto final que nos queda en una division entre dos numeros usando decimales no tiene sentido obtenerlo ya que siempre va a ser finalmente 0, salvo que el resultado sea periodico.


Un saludo
__________________
If to err is human, then programmers are the most human of us