C/Visual C - error en la division

 
Vista:

error en la division

Publicado por localhost (10 intervenciones) el 01/12/2008 13:11:44
holaaa, haber si alguno de ustedes sabe a que se debe que al realizar una division entre dos valores int, da como resultado 0 si los valores son distintos y 1 si los valores son iguales:

#include <math.h>

int cpu;
int fin;
float porcentaje

cpu=valor de un array, es int;
fin=valor de una array, es int;

porcentaje=cpu/fin;

si fin==cpu, el resultado de la division es 1, correcto
si fin!=cpu, el resultado de la division es 0, incorrecto

no se a que se debe si es que hay que poner alguna libreria o algo, el caso es que las divisiones no me las hace fin, es extraño, si alguien me puede echar un cable se lo agradezco 1 saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:error en la division

Publicado por elprogramadorvisualc (15 intervenciones) el 01/12/2008 16:29:08
Se debe a que los operadores son sensibles al tipo de dato sobre el que estan operando. Es decir, que si estas operando sobre ints, los operadores devolverán int.

Haz un "casting" de los tipos y a correr:

porcentaje = (float)cpu/(float)fin

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

error en la division

Publicado por localhost (10 intervenciones) el 01/12/2008 16:53:52
Efectivamente, haciendo el casting y a correr, muchas gracias por tu brevedad y me ha sido muy util tu ayuda, Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar