como divido 3 divido dos y me de 1.5?

Iniciado por AXA, 3 Noviembre 2021, 05:56 AM

0 Miembros y 1 Visitante están viendo este tema.

AXA

puede parecer muy basico pero no consigo un jemplo ni que funcion para dividir con fracciones.
Solo encuentro diviciones enteras. Y una pregunta mas que voy a necesitar. Cual seria la funcion de redondeo?.

Danielㅤ

Hola, la división está bien porque 3 dividido en 2 es 1.5 que sería un entero y medio, no entiendo que es lo que no consigues hacer.

Por otro lado la función para redondear números es round():

https://www.padowan.dk/doc/spanish/Rounding.html


Saludos
¡Regresando como cual Fenix! ~
Bomber Code © 2021 https://www.bombercode.net/foro/

Ayudas - Aportes - Tutoriales - Y mucho mas!!!

K-YreX

Al realizar una operación entre 2 datos, el tipo del resultado es el mismo que el tipo de datos más grande de entre los dos operandos. Por ejemplo:
Operar 2 ints -> Resultado: int.
Operar int y float -> Resultado: float.
Operar int y short -> Resultado: int.
... Y así con cualquier tipo.

Si realizas una operación entre dos enteros, el resultado será un entero. Entonces:

int a = 3;
int b = 2;
printf("Resultado %d/%d = %d", a, b, a/b); // Resultado 3/2 = 1


Para obtener el resultado con decimales debes hacer una conversión de cualquiera de los datos a algún tipo decimal (float/double).

int a = 3;
int b = 2;
printf("Resultado %d/%d = %.1f", a, b, (float)a/b); // Resultado 3/2 = 1.5


PD: Para mostrar un número decimal hay que utilizar "%f". El ".1" indica que muestre el número con un solo dígito decimal.
Código (cpp) [Seleccionar]

cout << "Todos tenemos un defecto, un error en nuestro código" << endl;

.xAk.

#3
ya verás con lós numeros  "long long" hazlo siempre en coma flotante convierte lo que no sean y muestra el resultado.




no enfrentes a un entero con un flotante, antes conviértelo (float)

redondear no te hace falta, pasa sólo al pasarlo a entero (int). En esas operaciones han de entrar con los participantes flotantes. (float)x dividido por (float)y es igual a (int)z



K-YreX

Cita de: .xAk. en 20 Noviembre 2021, 01:48 AM
ya verás con lós numeros  "long long" hazlo siempre en coma flotante convierte lo que no sean y muestra el resultado.




no enfrentes a un entero con un flotante, antes conviértelo (float)

redondear no te hace falta, pasa sólo al pasarlo a entero (int). En esas operaciones han de entrar con los participantes flotantes. (float)x dividido por (float)y es igual a (int)z


Imagino que el tema principal de este hilo está cerrado ya que el usuario que lo empezó no ha vuelto a contestar.
Sin embargo, respecto a este comentario hay cosas no muy claras:
Cita de: .xAk. en 20 Noviembre 2021, 01:48 AM
no enfrentes a un entero con un flotante, antes conviértelo (float)
No es necesario, operar un int con un float ya da como resultado un float. Lo importante es guardarlo en una variable de tipo float y no int.

Cita de: .xAk. en 20 Noviembre 2021, 01:48 AM
redondear no te hace falta, pasa sólo al pasarlo a entero (int)
Cuando se convierte un float en int no se redondea, se trunca.
Código (cpp) [Seleccionar]

cout << "Todos tenemos un defecto, un error en nuestro código" << endl;