std::fmod
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   Defined in header <cmath>
   | 
||
|   float       fmod( float x, float y );  | 
(1) | |
|   double      fmod( double x, double y );  | 
(2) | |
|   long double fmod( long double x, long double y );  | 
(3) | |
|   Promoted    fmod( Arithmetic x, Arithmetic y );  | 
(4) | (since C++11) | 
Computes the remainder of the division operation x/y.
4) If any argument has integral type, it is cast to double. If any other argument is long double, then the return type is long double, otherwise it is double.
[edit] Parameters
| x, y | - | floating point values | 
[edit] Return value
Remainder of dividing arguments. The result has the same sign as x.
[edit] See also
|    (C++11)  | 
   the quotient and remainder of integer division  (function)  | 
|    (C++11)  | 
   signed remainder of the division operation   (function)  |