Open In App

ldexp() in C++

Last Updated : 09 Feb, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

The ldexp() function takes two arguments a and b and returns the product of a and 2 raised to the power of b i.e., a * (2b).

Syntax:  

double ldexp (double a, double b);
float ldexp (float a, float b);
long double ldexp (long double a, long double b);

Errors and exceptions associated with this function:

  1. It is mandatory to give both the arguments otherwise it will give error no matching function for call to ‘ldexp()’.
  2. If we pass string as argument we will get error no matching function for call to ‘ldexp(const char [n], const char [n]) .
  3. If we pass std::numeric_limits::max() as both the arguments we will get inf(infinity) as output.

Time Complexity: O(1)
Auxiliary Space: O(1)

Examples: 

Input  : ldexp(5.35, 4)
Output : 85.6

Input  : ldexp(25, 5)
Output : 800

# CODE 1  

C++




// C++ implementation of the
// above function
#include <cmath>
#include <iostream>
 
using namespace std;
 
int main()
{
    double a = 5.35;
    int b = 4;
    cout << ldexp(a, b);
    return 0;
}


Output: 

85.6

 

# CODE 2 

C++




// CPP implementation of the
// above function
#include <cmath>
#include <iostream>
using namespace std;
 
int main()
{
    int a = 25, b = 5;
    cout << ldexp(a, b);
    return 0;
}


Output: 

800

 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads