# Whole and fractional part of a number in C++

## Introduction

In this tutorial, you will learn how to get the **whole** and **fractional** part of a number/float using the C++ programming language.
For instance, given a number (*float type*) such as **51.21**. The whole part would be **51** and the fractional part would be **0.21**.

## Method #1: Using std::modf

We can use the function std::modf to separate both parts of the number such as:

```
#include <iostream>
#include <cmath> //Important!
int main()
{
float myFloat = 51.21;
float wholePart, fractionalPart;
fractionalPart = std::modf(myFloat, &wholePart);
std::cout << wholePart << std::endl; //Returns 51
std::cout << fractionalPart << std::endl; //Returns 0.21
return 0;
}
```

**NOTE**: Do not forget to include the *cmath* library, otherwise we may get the std::modf is not a member of std error.

## References

Read more about the std::modf function here: https://en.cppreference.com/w/cpp/numeric/math/modf