Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonのPow(x、n)


入力xとnが2つあるとします。 xは-100.0から100.0の範囲の数値であり、nは32ビットの符号付き整数です。ライブラリ関数を使用せずに、xのn乗を見つける必要があります。

したがって、指定された入力がx =12.1、n =-2の場合、出力は0.00683

になります。

これを解決するには、次の手順に従います-

  • power:=| n |およびres:=1.0
  • 電力が0ではない場合
    • パワーの最後のビットが1の場合、res:=res * x
    • x:=x * x
  • n<0
      の場合
    • return 1 / res
  • return res
例(Python)

理解を深めるために、次の実装を見てみましょう-

class Solution(object):
   def myPow(self, x, n):
      power = abs(n)
      res = 1.0
      while power:
         if power & 1:
            res*=x
         x*=x
         power>>=1
      if n<0:
         return 1/res
      return res
ob1 = Solution()
print(ob1.myPow(45, -2))
print(ob1.myPow(21, 3))

入力

45
-2
21
3

出力

0.0004938271604938272
9261.0

  1. Pythonのissuperset()

    この記事では、Pythonでのissuperset()と、さまざまな分野でのその実装について学習します。 このメソッドは、セットBのすべての要素に引数として渡されるすべての要素セットAが含まれている場合はブール値Trueを返し、Aのすべての要素がBに存在しない場合はfalseを返します。 これは、BがAのスーパーセットである場合、それを意味します returns true; else False 例 いくつかの例を見てみましょう A = {'t','u','t','o','r','i',

  2. PythonでのQuine

    Quineは、入力を受け取らないプログラムですが、出力を生成します。独自のソースコードが表示されます。さらに、Quineにはいくつかの条件があります。プログラム内でソースコードファイルを開くことができません。 サンプルコード a=a=%r;print (a%%a);print (a%a) 出力 a=a=%r;print (a%%a);print (a%a) このクワインはどのように機能していますか? ここでは、単純な文字列フォーマットが機能しています。変数「a」を定義し、a内に「a =%r; print(a %% a)」を格納します。次に、aの値を出力し、%rをaの値に置き換