View source code
							
							
						
								Display the source code in std/math.d from which this
								page was generated on github.
							
						
							Report a bug
							
						
								If you spot a problem with this page, click here to create a
								Bugzilla issue.
							
						
							
								Improve this page
							
							
					
								Quickly fork, edit online, and submit a pull request for this page.
								Requires a signed-in GitHub account. This works well for small changes.
								If you'd like to make larger changes you may want to consider using
								local clone.
							
						std.math.pow  - multiple declarations
				Function pow
Compute the value of x n, where n is an integer
						
					
				Example
writeln(pow(2.0, 5)); // 32.0
assert(pow(1.5, 9)Function pow
Compute the value of an integer x, raised to the power of a positive integer n.
						
				typeof(Unqual!F
				  F x,
				
				  G n
				
				) pure nothrow @nogc @trusted
				
				if (isIntegral!F && isIntegral!G);
						
					
				If both x and n are 0, the result is 1. If n is negative, an integer divide error will occur at runtime, regardless of the value of x.
Example
immutable int one = 1;
immutable byte two = 2;
immutable ubyte three = 3;
immutable short four = 4;
immutable long ten = 10;
writeln(pow(two, three)); // 8
writeln(pow(two, ten)); // 1024
writeln(pow(one, ten)); // 1
writeln(pow(ten, four)); // 10_000
writeln(pow(four, 10)); // 1_048_576
writeln(pow(three, four)); // 81
Function pow
Computes integer to floating point powers.
						
				real pow(I, F)
				(
				
				  I x,
				
				  F y
				
				) pure nothrow @nogc @trusted
				
				if (isIntegral!I && isFloatingPoint!F);
						
					
				Example
writeln(pow(2, 5.0)); // 32.0
writeln(pow(7, 3.0)); // 343.0
assert(pow(2, realFunction pow
Calculates xy.
						
				Unqual!(Largest!(F,G)) pow(F, G)
				(
				
				  F x,
				
				  G y
				
				) pure nothrow @nogc @trusted
				
				if (isFloatingPoint!F && isFloatingPoint!G);
						
					
				| x | y | pow(x, y) | div 0 | invalid? | 
|---|---|---|---|---|
| anything | ±0.0 | 1.0 | no | no | 
| |x| > 1 | +∞ | +∞ | no | no | 
| |x| < 1 | +∞ | +0.0 | no | no | 
| |x| > 1 | -∞ | +0.0 | no | no | 
| |x| < 1 | -∞ | +∞ | no | no | 
| +∞ | > 0.0 | +∞ | no | no | 
| +∞ | < 0.0 | +0.0 | no | no | 
| -∞ | odd integer > 0.0 | -∞ | no | no | 
| -∞ | > 0.0, not odd integer | +∞ | no | no | 
| -∞ | odd integer < 0.0 | -0.0 | no | no | 
| -∞ | < 0.0, not odd integer | +0.0 | no | no | 
| ±1.0 | ±∞ | -NAN | no | yes | 
| < 0.0 | finite, nonintegral | NAN | no | yes | 
| ±0.0 | odd integer < 0.0 | ±∞ | yes | no | 
| ±0.0 | < 0.0, not odd integer | +∞ | yes | no | 
| ±0.0 | odd integer > 0.0 | ±0.0 | no | no | 
| ±0.0 | > 0.0, not odd integer | +0.0 | no | no | 
Example
writeln(pow(1.0, 2.0)); // 1.0
writeln(pow(0.0, 0.0)); // 1.0
assert(pow(1.5, 10.0)Authors
Walter Bright, Don Clugston, Conversion of CEPHES math library to D by Iain Buclaw and David Nadlinger
License
					Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.