Funkce modf () v C ++ rozděluje číslo na integrální a zlomkovou část.
Jak již bylo zmíněno, modf () rozdělí číslo na integrální a zlomkovou část. Frakční část je vrácena funkcí a celočíselná část je uložena na adrese, na kterou ukazuje ukazatel předaný modf () jako argument.
Tato funkce je definována v hlavičkovém souboru.
prototyp modf () (podle standardu C ++ 11)
double modf (double x, double * intpart); float modf (float x, float * intpart); long double modf (long double x, long double * intpart); double modf (T x, double * intpart); // T je integrální typ
parametry modf ()
Modf () má dva parametry:
- x - Hodnota má být rozdělena na dvě části.
- intpart - Ukazatel na objekt (stejného typu jako x ), kde je integrální část uložena se stejným znaménkem jako x .
návratová hodnota modf ()
Funkce modf () vrací zlomkovou část argumentu, který jí byl předán.
Příklad 1: Jak funguje modf ()?
#include #include using namespace std; int main () ( double x = 14.86, intPart, fractPart; fractPart = modf(x, &intPart); cout << x << " = " << intPart << " + " << fractPart << endl; x = -31.201; fractPart = modf(x, &intPart); cout << x << " = " << intPart << " + " << fractPart << endl; return 0; )
Když spustíte program, výstup bude:
14,86 = 14 + 0,86 -31,201 = -31 + -0,201
Příklad 2: modf () S celočíselnou hodnotou jako prvním argumentem
#include #include using namespace std; int main () ( int x = 5; double intpart, fractpart; fractpart = modf(x, &intpart); cout << x << " = " << intpart << " + " << fractpart << endl; return 0; )
Když spustíte program, výstup bude:
5 = 5 + 0