12/06/2010, 23:06
|
| | | Fecha de Ingreso: marzo-2008
Mensajes: 114
Antigüedad: 16 años, 8 meses Puntos: 2 | |
Respuesta: problema ejercicio division Cita:
Iniciado por AlanChavez En C:
int/int = 0
es cierto se me olvido dar un detalle, para tener un resultado float, almenos uno de los dos debe ser float, no basta con tener float div;
No se de donde sacaste que int/int = int, eso no tiene ningun sentido.
Compila mi codigo y verás tu error.
Código C:
Ver original#include <stdio.h> int main() { int resultado; float resultado2; int resultado3; float resultado4; resultado = 3/5; //Resultado, Variable tipo int, division de dos enteros. Resultado = 0; resultado2 = 3/5; //Resultado 2, Variable tipo float, division de dos enteros asignados a una variable float. Resultado2 = 0.000000; //Esto debido a que en C, dividir dos enteros es siempre 0. resultado3 = 3.0/5; //Resultado 3, variable tipo int, dividiendo un float y un int. Resultado3 = 0; El tipo de variable no puede almacenar un numero con coma flotante, porque se declaró previamente como entera. resultado4 = 3.0/5; //Resultado 4, variable tipo float, dividiendo float y int. Resultado = 0.6000000 printf("%d\n%f\n%d\n%f",resultado ,resultado2 ,resultado3 ,resultado4 ); //Queda demostrado que en C, la division de dos enteros siempre es 0. return 0; }
Hola Alan,
en C la división entera quita los decimales. Cambia tu ejemplo y comprobaras que es como te indica CalgaryCorpus
saludos
__________________ no quiero ser un árbol y caminar Jacinto Piedra |