Precision of floating point literals in CPP

Floating Point Literals in C++

While working with decimal type of data, it is very important to maintain the precision of the data, from preventing any mistakes. In C++ programming if we want to print a decimal value we use float and double data, which the the decimal value upto a certain point because of the restriction of their size. For example:
The decimal equivalent of 4/3 = 1.33333333333333333333333…
It will go upto infinity, and storing this data, will be a waste of memory, hence this will be displayed as

• 1.333333 or
• 1.3333

Depending upon the datatype that we use.

Use of Floating Point Literals

Floating Point Literals are used in C++ to represent different variations of a decimal data, there are mainly 5 different types of floating point literals in CPP, which have different uses and different precision, they are -:

• floor()
• ceil()
• round()
• trunc()
• setprecision()

Floor() – It is used for representing the closest smaller integer, to the decimal value. For Example-: 1.35 = 1
Ceil() – It is used for representing the closest larger integer, to the decimal value. For Example-: 1.35 =  2
Round() – It is used for representing the closest  integer, to the decimal value. For Example-: 1.35 =  1 ;  1.65 = 2
Trunc() – It is used for removing the decimal values, after the decimal point. For Example-: 1.35 =  1
Setprecision() – It is used for representing the decimal value upto a certain decimal point.

Let’s see a CPP Code for the use of Floating point literals

CPP Code for using Floating Point Literals

```#include<bits/stdc++.h>
using namespace std;

int main()
{
double x = 1.411, y = -1.500;

cout << "Using Floor()" << floor(x) << endl;
cout << "Using Floor()"<< floor(y) << endl;
cout << "Using Ceil()"<< ceil(x) << endl;
cout << "Using Ceil()"<< ceil(y) << endl;
cout << "Using Round()"<< round(x) << endl;
cout << "Using Round()"<< round(y) << endl;
cout << "Using Trunc()"<< trunc(x) << endl;
cout << "Using Trunc()"<< trunc(y) << endl;
cout << "Using Setprecision()"<< fixed << setprecision(0)<< x << endl;
cout << "Using Setprecision()"<< fixed << setprecision(1)<< x << endl;
cout << "Using Setprecision()"<< fixed << setprecision(2)<< x << endl;
cout << "Using Setprecision()"<< fixed << setprecision(3)<< x << endl;
cout << "Using Setprecision()"<< fixed << setprecision(4)<< x << endl;
cout << "Using Setprecision()"<< fixed << setprecision(0)<< y << endl;
cout << "Using Setprecision()"<< fixed << setprecision(1)<< y << endl;
cout << "Using Setprecision()"<< fixed << setprecision(2)<< y << endl;
cout << "Using Setprecision()"<< fixed << setprecision(3)<< y << endl;
cout << "Using Setprecision()"<< fixed << setprecision(4)<< y << endl;

return 0;
}```
`OutputUsing Floor() 1Using Floor() -2Using Ceil() 2Using Ceil() -1 Using Round() 1Using Round() -2Using Trunc() 1Using Trunc() -1Using Setprecision() 1Using Setprecision() 1.4Using Setprecision() 1.41Using Setprecision() 1.411Using Setprecision() 1.4110Using Setprecision() -2 Using Setprecision() -1.5Using Setprecision() -1.50Using Setprecision() -1.500Using Setprecision() -1.5000`