No tienes ningún error de compilación, compila perfectamente. Tienes un error de lógica (lo que se llama un
bug).
Lo que no puedes hacer es convertir enteros a reales. Los enteros no incluyen a los reales, pero los reales incluyen a los enteros
m0skit0 escribió:Es decir, ya que float incluye int (float puede tomar valores de int y más) entonces debes ponerlos float.
Código: Seleccionar todo
printf("La mitad de la edad de kracker es = %.0f\n", edad_Kracker / 2);
Esto va a dar siempre 0, ya que no puedes convertir un entero a un real. Pero sí puedes convertir un real a un entero. Mira lo que te dice el vicejefe:
largeroliker escribió:Si vas a dividir y quieres que muestre un número entero, puedes declararlo como float y llamarlo como %.0f, siendo 0 el número de decimales a mostrar.
Tú lo estás haciendo al revés: lo declaras como
int e intentas ponerlo como
%.0f.