Construct an overloaded function equivalent to the pow(x, n), where x can be either integer or float and n is an integer.

Aug 31, 2018

For this question, there will be two argument function. The function is overloaded based on the type of arguments, and is float and integer. 

Program:

#include<iostream>
using namespace std;

// do not include cmath header for this 
//program as it may conflict
// declarations of overloaded functions
int pow(int x, int n);
float pow(float x, int n);

int main(){
	int a = 10;
	float b = 20.5;
	int index = 5;
	cout<<"pow("<<a<<", "<<index<<") = "<<pow(a, index)<<endl;
	cout<<"pow("<<b<<", "<<index<<") = "<<pow(b, index)<<endl;
	return 0;
}
// function defination 
int pow(int x, int n){
	// using simple mechanism for repeated multiplication
	int product = x;
	for(int i = 0; i < n - 1; i++){
		product *= x;
	}
	return product;
}
float pow(float x, int n){
	float product = x;
	for(int i = 0; i < n - 1; i++){
		product *= x;
	}
	return product;
}

 

Sample Run:

pow(10, 5) = 100000
pow(20.5, 5) = 3.62051e+06

 

Related


Tools/Apps





© Nepal Exchange Rates