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

PythonのSqrt(x)


数xがあり、xが非負数であるとします。ライブラリ関数を使用せずに、xの平方根を見つける必要があります。したがって、sqrt(x)を評価するための独自の関数を作成する必要があります。この関数では、出力の10進数が切り捨てられます。

xの値が4であるとすると、xが8の場合、結果は2になり、sqrt(8)は2.82842であるため、結果も2になります。ただし、整数部分のみを取り上げます。

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

  • l =1、h =x + 1、回答=0を初期化します
  • h> lの間、do
    • mid =(h + l)/ 2
    • mid * mid <=xの場合、l:=mid + 1、answer =mid
    • それ以外の場合、h =mid
  • 回答を返す

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

例(Python)

class Solution(object):
   def mySqrt(self, x):
      """
      :type x: int
      :rtype: int
      """
      low = 1
      high = x+1
      ans = 0
      while high>low:
         mid = (high+low)//2
         print(low,mid,high)
         if mid*mid<=x:
            low = mid+1
            ans = mid
         else:
            high = mid
      return ans
ob1 = Solution()
print(ob1.mySqrt(4))
print(ob1.mySqrt(16))
print(ob1.mySqrt(7))
print(ob1.mySqrt(15))

入力

print(ob1.mySqrt(4))
print(ob1.mySqrt(16))
print(ob1.mySqrt(7))
print(ob1.mySqrt(15))

出力

2
4
2
3

  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の値に置き換