Las tres funciones se utilizan para eliminar dígitos después del punto decimal y devolver el número decimal modificado.
trunc() : trunca un valor doble después del punto decimal y da como resultado la parte entera. El valor devuelto y los argumentos son del tipo doble.
Sintaxis:
doble trunc(doble x);Parámetros:
x : Toma un valor doble como entrada y luego trunca los valores después del punto decimal.Valor devuelto:
Devuelve un valor doble cuyos valores después del punto decimal son solo 0.
Ejemplos:
Input : 3.5 Output : 3.0 Input : -3.8 Output : -3.0
// C program to demonstrate // trunc() function #include <stdio.h> // library containing trunc function #include <math.h> // Driver function int main() { // using trunc function which return // Truncated value of the input double x1 = 2.0, x2 = 3.9, x3 = -3.3, x4 = 4.9; printf(" Truncated value is %lf \n", trunc(x1) ); printf(" Truncated value is %lf \n", trunc(x2) ); // For negative values printf(" Truncated value is %lf \n", trunc(x3) ); printf(" Truncated value is %lf \n", trunc(x4) ); return 0; }
Truncated value is 2.000000 Truncated value is 3.000000 Truncated value is -3.000000 Truncated value is 4.000000
truncf() : Funciona igual que trunc con la diferencia de que es para flotar en lugar de doble. Toma un valor flotante, elimina los dígitos después del punto decimal y devuelve un valor flotante modificado.
Sintaxis:
float truncf(float x);Parámetros:
x : Toma un valor de punto flotante como entrada y luego trunca los valores después del punto decimal.Valor devuelto:
Devuelve un flotante cuyos valores después del punto decimal son solo 0.
Ejemplos:
Input : 4.5 Output : 4.0 Input : -2.8 Output : -2.0
// C program to demonstrate truncf() function #include <stdio.h> #include <math.h> // Driver function int main() { float x1 = 2.0, x2 = 3.9, x3 = -3.3, x4 = 4.9; // using truncf function which return // Truncated value of the input printf(" Truncated value is %f \n", truncf(x1) ); printf(" Truncated value is %f \n", truncf(x2) ); // For negative values printf(" Truncated value is %f \n", truncf(x3) ); printf(" Truncated value is %f \n", truncf(x4) ); return 0; }
Truncated value is 2.000000 Truncated value is 3.000000 Truncated value is -3.000000 Truncated value is 4.000000
truncl() : Esto funciona de manera similar para long double y funcionalidad similar a trunc() y truncf()
Sintaxis:
long double truncl (long double x);Parámetros:
x : Toma un valor doble largo como entrada y luego trunca los valores después del punto decimal.Valor devuelto:
Devuelve un valor decimal cuyos valores después del punto decimal es 0 únicamente.
Ejemplos:
Input : 4351.5 Output : 4351.0 Input : -2008.8 Output : -2008.0
En caso de valores positivos:
// C program to demonstrate truncl() function #include <stdio.h> #include <math.h> // Driver function int main() { long double x1 = 2.0, x2 = 3.9, x3 = -3.3, x4 = 4.9; // using truncf function which return // Truncated value of the input printf(" Truncated value is %Lf \n", truncl(x1) ); printf(" Truncated value is %Lf \n", truncl(x2) ); // For negative values printf(" Truncated value is %Lf \n", truncl(x3) ); printf(" Truncated value is %Lf \n", truncl(x4) ); return 0; }
Truncated value is 2.000000 Truncated value is 3.000000 Truncated value is -3.000000 Truncated value is 4.000000
Podemos usar la función trunc() siempre que necesitemos calcular la parte entera de un tipo de datos doble. La ventaja de esta función es que cualquiera que sea el valor decimal, la parte entera permanece igual. En las funciones ceil o floor o round el valor entero cambia pero en la función trunc no.
Publicación traducida automáticamente
Artículo escrito por agrawalmohak99 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA