Related Articles
tgamma() method in C/C++ with Examples
• Last Updated : 31 Mar, 2020

The tgamma() function is defined in header math.h header in C and cmath library in C++. This function is used to compute the gamma function of an argument passed to the function.

Syntax:

```float tgamma(float x);
double tgamma(double x);
long double tgamma(long double x);
```

Parameters: This method accepts a parameter x which is the value whose gammma function is to be computed. It can be float, double or long double.

Return Value: This function returns the gamma function value of x.

• For x = 0: +inf/-inf
• For x = -inf: NAN
• For x = +inf: +inf
• For x = -ve: NAN
• For x = NAN: NAN

Errors: There are two types of errors that usually occur with tgamma() method:

1. Range errors:
• Overflow range error: This occurs when the magnitude of the parameter x is very large.
• Underflow range error: This occurs when the magnitude of the parameter x is very small.
2. Domain/Pole errors:
• If x is zero or a negative integer for which the function is asymptotic, it may cause a domain error or a pole error (or none, depending on implementation).

Below examples demonstrate the use of tgamma() function in C/C++:

 `// C++ program to show the``// use of tgamma() method`` ` `#include ``#include ``using` `namespace` `std;`` ` `// Driver code``int` `main()``{`` ` `    ``// Example 1``    ``float` `x = 0.0;``    ``cout << ``"For x = "` `<< x``         ``<< ``", tgamma(x) = "``         ``<< tgamma(x) << endl;`` ` `    ``// Example 2``    ``x = -18.0 / 0.0;``    ``cout << ``"For x = "` `<< x``         ``<< ``", tgamma(x) = "``         ``<< tgamma(x) << endl;`` ` `    ``// Example 3``    ``x = 10.0 / 0.0;``    ``cout << ``"For x = "` `<< x``         ``<< ``", tgamma(x) = "``         ``<< tgamma(x) << endl;`` ` `    ``// Example 4``    ``x = 0.0 / 0.0;``    ``cout << ``"For x = "` `<< x``         ``<< ``", tgamma(x) = "``         ``<< tgamma(x);`` ` `    ``return` `0;``}`
Output:
```For x = 0, tgamma(x) = inf
For x = -inf, tgamma(x) = nan
For x = inf, tgamma(x) = inf
For x = -nan, tgamma(x) = -nan
```
Want to learn from the best curated videos and practice problems, check out the C++ Foundation Course for Basic to Advanced C++ and C++ STL Course for foundation plus STL.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.
My Personal Notes arrow_drop_up