Math.Pow(Double, Double) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen kuvvete yükseltilmiş bir sayı döndürür.
public:
static double Pow(double x, double y);
public static double Pow (double x, double y);
static member Pow : double * double -> double
Public Shared Function Pow (x As Double, y As Double) As Double
Parametreler
- x
- Double
Bir kuvvete yükseltilecek çift duyarlıklı kayan nokta sayısı.
- y
- Double
Bir gücü belirten çift duyarlıklı kayan nokta sayısı.
Döndürülenler
Üssüne y
yükseltilen sayıx
.
Örnekler
Aşağıdaki örnek, 2'yi 0 ile 32 arasında bir güce yükseltmenin sonucunu veren değeri hesaplamak için yöntemini kullanır Pow .
int value = 2;
for (int power = 0; power <= 32; power++)
Console.WriteLine($"{value}^{power} = {(long)Math.Pow(value, power):N0} (0x{(long)Math.Pow(value, power):X})");
// The example displays the following output:
// 2^0 = 1 (0x1)
// 2^1 = 2 (0x2)
// 2^2 = 4 (0x4)
// 2^3 = 8 (0x8)
// 2^4 = 16 (0x10)
// 2^5 = 32 (0x20)
// 2^6 = 64 (0x40)
// 2^7 = 128 (0x80)
// 2^8 = 256 (0x100)
// 2^9 = 512 (0x200)
// 2^10 = 1,024 (0x400)
// 2^11 = 2,048 (0x800)
// 2^12 = 4,096 (0x1000)
// 2^13 = 8,192 (0x2000)
// 2^14 = 16,384 (0x4000)
// 2^15 = 32,768 (0x8000)
// 2^16 = 65,536 (0x10000)
// 2^17 = 131,072 (0x20000)
// 2^18 = 262,144 (0x40000)
// 2^19 = 524,288 (0x80000)
// 2^20 = 1,048,576 (0x100000)
// 2^21 = 2,097,152 (0x200000)
// 2^22 = 4,194,304 (0x400000)
// 2^23 = 8,388,608 (0x800000)
// 2^24 = 16,777,216 (0x1000000)
// 2^25 = 33,554,432 (0x2000000)
// 2^26 = 67,108,864 (0x4000000)
// 2^27 = 134,217,728 (0x8000000)
// 2^28 = 268,435,456 (0x10000000)
// 2^29 = 536,870,912 (0x20000000)
// 2^30 = 1,073,741,824 (0x40000000)
// 2^31 = 2,147,483,648 (0x80000000)
// 2^32 = 4,294,967,296 (0x100000000)
open System
let value = 2
for power = 0 to 32 do
printfn $"{value}^{power} = {Math.Pow(value, power) |> int64:N0} (0x{Math.Pow(value, power) |> int64:X})"
// The example displays the following output:
// 2^0 = 1 (0x1)
// 2^1 = 2 (0x2)
// 2^2 = 4 (0x4)
// 2^3 = 8 (0x8)
// 2^4 = 16 (0x10)
// 2^5 = 32 (0x20)
// 2^6 = 64 (0x40)
// 2^7 = 128 (0x80)
// 2^8 = 256 (0x100)
// 2^9 = 512 (0x200)
// 2^10 = 1,024 (0x400)
// 2^11 = 2,048 (0x800)
// 2^12 = 4,096 (0x1000)
// 2^13 = 8,192 (0x2000)
// 2^14 = 16,384 (0x4000)
// 2^15 = 32,768 (0x8000)
// 2^16 = 65,536 (0x10000)
// 2^17 = 131,072 (0x20000)
// 2^18 = 262,144 (0x40000)
// 2^19 = 524,288 (0x80000)
// 2^20 = 1,048,576 (0x100000)
// 2^21 = 2,097,152 (0x200000)
// 2^22 = 4,194,304 (0x400000)
// 2^23 = 8,388,608 (0x800000)
// 2^24 = 16,777,216 (0x1000000)
// 2^25 = 33,554,432 (0x2000000)
// 2^26 = 67,108,864 (0x4000000)
// 2^27 = 134,217,728 (0x8000000)
// 2^28 = 268,435,456 (0x10000000)
// 2^29 = 536,870,912 (0x20000000)
// 2^30 = 1,073,741,824 (0x40000000)
// 2^31 = 2,147,483,648 (0x80000000)
// 2^32 = 4,294,967,296 (0x100000000)
Public Module Example
Public Sub Main
Dim value As Integer = 2
For power As Integer = 0 To 32
Console.WriteLine("{0}^{1} = {2:N0} (0x{2:X})", _
value, power, CLng(Math.Pow(value, power)))
Next
End Sub
End Module
' The example displays the following output:
' 2^0 = 1 (0x1)
' 2^1 = 2 (0x2)
' 2^2 = 4 (0x4)
' 2^3 = 8 (0x8)
' 2^4 = 16 (0x10)
' 2^5 = 32 (0x20)
' 2^6 = 64 (0x40)
' 2^7 = 128 (0x80)
' 2^8 = 256 (0x100)
' 2^9 = 512 (0x200)
' 2^10 = 1,024 (0x400)
' 2^11 = 2,048 (0x800)
' 2^12 = 4,096 (0x1000)
' 2^13 = 8,192 (0x2000)
' 2^14 = 16,384 (0x4000)
' 2^15 = 32,768 (0x8000)
' 2^16 = 65,536 (0x10000)
' 2^17 = 131,072 (0x20000)
' 2^18 = 262,144 (0x40000)
' 2^19 = 524,288 (0x80000)
' 2^20 = 1,048,576 (0x100000)
' 2^21 = 2,097,152 (0x200000)
' 2^22 = 4,194,304 (0x400000)
' 2^23 = 8,388,608 (0x800000)
' 2^24 = 16,777,216 (0x1000000)
' 2^25 = 33,554,432 (0x2000000)
' 2^26 = 67,108,864 (0x4000000)
' 2^27 = 134,217,728 (0x8000000)
' 2^28 = 268,435,456 (0x10000000)
' 2^29 = 536,870,912 (0x20000000)
' 2^30 = 1,073,741,824 (0x40000000)
' 2^31 = 2,147,483,648 (0x80000000)
' 2^32 = 4,294,967,296 (0x100000000)
Açıklamalar
Aşağıdaki tabloda, ve y
parametreleri için çeşitli değerler veya değer aralıkları belirtildiğinde x
döndürülen değer gösterilir. Daha fazla bilgi için bkz. Double.PositiveInfinity, Double.NegativeInfinity ve Double.NaN.
x | y | Döndürülen değer |
---|---|---|
Dışında herhangi bir değer NaN |
±0 | 1 |
NaN |
±0 | 1 (NaN .NET Framework)* |
NaN |
0 dışında herhangi bir değer | NaN * |
±0 | < 0 ve tek bir tamsayı |
NegativeInfinity veya PositiveInfinity |
±0 | NegativeInfinity |
PositiveInfinity |
±0 | PositiveInfinity |
+0 |
±0 | > 0 ve tek bir tamsayı | ±0 |
-1 |
NegativeInfinity veya PositiveInfinity |
1 |
+1 | Dışında herhangi bir değer NaN |
1 |
+1 | NaN |
1 (NaN .NET Framework)* |
1 dışında herhangi bir değer | NaN |
NaN * |
-1 < x < 1 | PositiveInfinity |
+0 |
< -1 veya > 1 | PositiveInfinity |
PositiveInfinity |
-1 < x < 1 | NegativeInfinity |
PositiveInfinity |
< -1 veya > 1 | NegativeInfinity |
+0 |
PositiveInfinity |
< 0 | +0 |
PositiveInfinity |
> 0 | PositiveInfinity |
NegativeInfinity |
< 0 ve sonlu ve tek tamsayı | -0 |
NegativeInfinity |
> 0 ve sonlu ve tek tamsayı | NegativeInfinity |
NegativeInfinity |
< 0 ve sonlu ve tek bir tamsayı değil | +0 |
NegativeInfinity |
> 0 ve sonlu ve tek bir tamsayı değil | PositiveInfinity |
±0 | < 0 ve sonlu ve tek bir tamsayı değil | PositiveInfinity |
±0 | > 0 ve sonlu ve tek bir tamsayı değil | +0 |
< 0 ama değil NegativeInfinity |
Tamsayı olmayan sonlu | NaN |
* Bu satırlar, Floating-Point Aritmetik için pow
IEEE Standardı tarafından tanımlandığı şekilde için tam kurallar kümesinde görünmez. .NET, IEEE 754 kayan nokta özel durumlarını devre dışı bırakması ve bu nedenle (sessiz NaN) ile sNaN
(sinyal NaN' arasında ayrım qNaN
yapmaması) nedeniyle bunlar buraya eklenir.
IEEE 754 belirtimi bu özel durumun devre dışı bırakılmasına izin verir.
Bu yöntem, temel alınan C çalışma zamanını çağırır ve tam sonuç veya geçerli giriş aralığı farklı işletim sistemleri veya mimariler arasında farklılık gösterebilir.