Modulus of two float or double numbers - GeeksforGeeks

26 May, 2021
Given two floating-point numbers, find the remainder.
Examples: 
Input: a = 36.5, b = 5.0 Output: 1.5
Input: a = 9.7, b = 2.3 Output: 0.5 
A simple solution is to do repeated subtraction. 
C++
Java
Python3
C#
PHP
Javascript
// C++ program to find modulo of floating// point numbers.#include <bits/stdc++.h>using namespace std; double findMod(double a, double b){    double mod;    // Handling negative values    if (a < 0)        mod = -a;    else        mod =  a;    if (b < 0)        b = -b;     // Finding mod by repeated subtraction         while (mod >= b)        mod = mod - b;     // Sign of result typically depends    // on sign of a.    if (a < 0)        return -mod;     return mod;} // Driver Functionint main(){    double a = 9.7, b = 2.3;    cout << findMod(a, b);    return 0;}
// Java program to find modulo of floating// point numbers class GFG{    static double findMod(double a, double b)    {        // Handling negative values        if (a < 0)            a = -a;        if (b < 0)            b = -b;             // Finding mod by repeated subtraction        double mod = a;        while (mod >= b)            mod = mod - b;             // Sign of result typically depends        // on sign of a.        if (a < 0)            return -mod;             return mod;    }         // Driver code    public static void main (String[] args)    {        double a = 9.7, b = 2.3;        System.out.print(findMod(a, b));    }} // This code is contributed by Anant Agarwal.
# Python3 program to find modulo# of floating point numbers. def findMod(a, b):     # Handling negative values    if (a < 0):        a = -a    if (b < 0):        b = -b     # Finding mod by repeated subtraction    mod = a    while (mod >= b):        mod = mod - b     # Sign of result typically    # depends on sign of a.    if (a < 0):        return -mod     return mod # Driver codea = 9.7; b = 2.3print(findMod(a, b)) # This code is contributed by Anant Agarwal.
// C# program to find modulo of floating// point numbersusing System; class GFG {         static double findMod(double a, double b)    {                 // Handling negative values        if (a < 0)            a = -a;        if (b < 0)            b = -b;             // Finding mod by repeated subtraction        double mod = a;        while (mod >= b)            mod = mod - b;             // Sign of result typically depends        // on sign of a.        if (a < 0)            return -mod;             return mod;    }         // Driver code    public static void Main ()    {                 double a = 9.7, b = 2.3;                 Console.WriteLine(findMod(a, b));    }} // This code is contributed by vt_m.
<?php// PHP program to find modulo // of floatingpoint numbers. function findMod($a, $b){         // Handling negative values    if ($a < 0)        $a = -$a;    if ($b < 0)        $b = -$b;     // Finding mod by repeated    // subtraction    $mod = $a;    while ($mod >= $b)        $mod = $mod - $b;     // Sign of result typically    // depends on sign of a.    if ($a < 0)        return -$mod;     return $mod;}     // Driver Code    $a = 9.7; $b = 2.3;    echo findMod($a, $b);     // This code is contributed by anuj_65.?>
<script> // Javascript program to find// modulo of floating point numbers. function findMod(a, b){    let mod;    // Handling negative values    if (a < 0)        mod = -a;    else        mod =  a;    if (b < 0)        b = -b;     // Finding mod by    // repeated subtraction         while (mod >= b)        mod = mod - b;     // Sign of result typically    // depends on sign of a.    if (a < 0)        return -mod;     return mod;} // Driver Function     let a = 9.7, b = 2.3;    document.write(findMod(a, b)); //This code is contributed by Mayank Tyagi</script>
Output : 
0.5
We can use the inbuilt fmod function to find the modulus of two floating-point numbers. 
C++
Java
Python3
C#
PHP
Javascript
// CPP program to find modulo of floating// point numbers using library function.#include <bits/stdc++.h>using namespace std; // Driver Functionint main(){    double a = 9.7, b = 2.3;    cout << fmod(a, b);    return 0;}
// JAVA program to find modulo of floating// point numbers using library function.import java.util.*; class GFG{ // Driver Functionpublic static void main(String[] args){    double a = 9.7, b = 2.3;    System.out.print((a % b));}} // This code contributed by umadevi9616
# Python3 program to find modulo of floating# point numbers using library function.from math import fmod # Driver codeif __name__ == '__main__':         a = 9.7    b = 2.3         print(fmod(a, b)) # This code is contributed by mohit kumar 29
// C# program to find modulo of floating// point numbers using library function.using System; class GFG{   static void Main(){    double a = 9.7;    double b = 2.3;    Console.WriteLine(a % b);}} // This code is contributed by mukesh07
<?php// PHP program to find modulo of// floating point numbers using// library function. // Driver Code$a = 9.7; $b = 2.3;echo fmod($a, $b); // This code is contributed// by inder_verma?>
<script> // Javascript program to find modulo of// floating point numbers using// library function. // Driver Codelet a = 9.7;let b = 2.3;document.write(a%b); // This code is contributed by mohan pavan </script>
Output: 
0.5
 
vt_m
inderDuMCA
rameshmarisa
mohit kumar 29
mayanktyagi1709
pulamolusaimohan
umadevi9616
mukesh07
CPP-Library
Modular Arithmetic
C Language
C++
Technical Scripter
Modular Arithmetic
CPP
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Substring in C++
Multidimensional Arrays in C / C++
Converting Strings to Numbers in C/C++
Left Shift and Right Shift Operators in C/C++
Function Pointer in C
Vector in C++ STL
Initialize a vector in C++ (6 different ways)
Inheritance in C++
Map in C++ Standard Template Library (STL)
C++ Classes and Objects