天天看點

python求平方根的函數_Python求解平方根的方法

Python求解平方根的方法

本文執行個體講述了Python求解平方根的方法。分享給大家供大家參考。具體如下:

主要通過SICP的内容改寫而來。基于newton method求解平方根。代碼如下:

#!/usr/bin/python

def sqrt_iter(guess,x):

if(good_enough(guess, x)):

print guess

else:

sqrt_iter(improve(guess, x),x)

def improve(guess, x):

return average(guess, x/guess)

def average(x,y):

return (x+y)/2

def good_enough(guess,x):

if(abs(guess * guess -x) < 0.0001):

return True

else:

return False

def sqrt_oliver(x):

sqrt_iter(1.0,x)

sqrt_oliver(5)

希望本文所述對大家的Python程式設計有所幫助。

時間: 2015-03-10

一.求算術平方根 a= x=int(raw_input('Enter a number:')) if x >= : while a*a < x: a = a + if a*a != x: print x,'is not a perfect square' else: print a else: print x,'is a negative number' 二.求約數 方法一: divisor = [ ] x=int(raw_input('Enter a number:')) i= while

1. 歐幾裡德算法 歐幾裡德算法又稱輾轉相除法, 用于計算兩個整數a, b的最大公約數.其計算原理依賴于下面的定理: 定理: gcd(a, b) = gcd(b, a mod b) 證明:   a可以表示成a = kb + r, 則r = a mod b   假設d是a, b的一個公約數, 則有  d|a, d|b, 而r = a - kb, 是以d|r.   是以,d是(b, a mod b)的公約數.   加上d是(b,a mod b)的公約數,則d|b, d|r, 但是a = kb + r

本文執行個體講述了Python實作求最大公約數及判斷素數的方法.分享給大家供大家參考.具體實作方法如下: #!/usr/bin/env python def showMaxFactor(num): count = num / 2 while count > 1: if num % count == 0: print 'largest factor of %d is %d' % (num, count) break #break跳出時會跳出下面的else語句 count -= 1 else: prin

sqrt()方法傳回x的平方根(x>0). 文法 以下是sqrt()方法的文法: import math math.sqrt( x ) 注意:此函數是無法直接通路的,是以我們需要導入math子產品,然後需要用math的靜态對象來調用這個函數. 參數 x -- 這是一個數值表達式. 傳回值 此方法傳回x的平方根,對于x>0. 例子 下面的例子顯示了sqrt()方法的使用. #!/usr/bin/python import math # This will import math module pr

python求平方根的函數_Python求解平方根的方法

python中有一個zfill方法用來給字元串前面補0,非常有用 view sourceprint? n = "123" s = n.zfill(5) assert s == "00123" zfill()也可以給負數補0 n = "-123" s = n.zfill(5) assert s == "-0123" 對于純數字,我們也可以通過格式化的方式來補0 n = 123 s = "%05d" % n a

sort()方法排序清單中的對象,比較使用func(如果給定). 文法 以下是sort()方法的文法: list.sort([func]) 參數 func -- 這是一個可選參數,如果有将使用該函數,對清單中的對象進行排序 傳回值 此方法不傳回任何值,但是從清單中給定的對象進行排序 例子 下面的例子顯示了sort()方法的使用 #!/usr/bin/python aList = [123, 'xyz', 'zara', 'abc', 'xyz']; aList.sort(); print "Li

建構一個二階多項式:x^2 - 4x + 3 多項式求解 >>> p = np.poly1d([1,-4,3]) #二階多項式系數 >>> p(0) #自變量為0時多項式的值 3 >>> p.roots #多項式的根 array([3., 1.]) >>> p(p.roots) #多項式根處的值 array([0., 0.]) >>> p.order #多項式的階數 2 >>> p.coeffs #

下面代碼中利用了兩種比對的方法,一 對圖檔矩陣(m x m)求解特征值,通過比較特征值是否在一定的範圍内,判斷圖檔是否相同.二 對圖檔矩陣(m x m)中1求和,通過比較sum和來比較圖檔. # -*- coding: utf-8 -*- import cv2 as cv import numpy as np import os file_dir_a='C:\Users\wt\Desktop\data\image1\\' file_dir_b='C:\Users\wt\Desktop\data\

如下所示: import h5py import numpy as np #HDF5的寫入: imgData = np.zeros((2,4)) f = h5py.File('HDF5_FILE.h5','w') #建立一個h5檔案,檔案指針是f f['data'] = imgData #将資料寫入檔案的主鍵data下面 f['labels'] = np.array([1,2,3,4,5]) #将資料寫入檔案的主鍵labels下面 f.close() #關閉檔案 #HDF5的讀取: f = h5

小編想把用python将清單[1,1,1,1,1,1,1,1,1,1] 和 清單 [2,2,2,2,2,2,2,2,2,2]對應相加成[3,3,3,3,3,3,3,3,3,3]. 代碼如下: import numpy a = numpy.array([1,1,1,1,1,1,1,1,1,1]) b = numpy.array([2,2,2,2,2,2,2,2,2,2]) c = a + b print(type(c)) print(list(c)) 輸出結果為:

利用GDAL庫對tif影像進行讀取 示例代碼預設波段為[B.G.R.NIR的順序,且為四個波段] import gdal def readTif(fileName): dataset = gdal.Open(fileName) if dataset == None: print(fileName+"檔案無法打開") return im_width = dataset.RasterXSize #栅格矩陣的列數 im_height = dataset.RasterYSize #栅格矩陣的行

1.最小二乘也可以拟合二次函數 我們都知道用最小二乘拟合線性函數沒有問題,那麼能不能拟合二次函數甚至更高次的函數呢?答案當然是可以的.下面我們就來試試用最小二乘來拟合抛物線形狀的的圖像. 對于二次函數來說,一般形狀為 f(x) = a*x*x+b*x+c,其中a,b,c為三個我們需要求解的參數.為了确定a.b.c,我們需要根據給定的樣本,然後通過調整這些參數,知道最後找出一組參數a.b.c,使這些所有的樣本點距離f(x)的距離平方和最小.用什麼方法來調整這些參數呢?最常見的自然就是我們的梯度下降

如下所示: from sklearn.datasets import load_iris iris = load_iris() print iris.data.shape from sklearn.cross_validation import train_test_split X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size = 0.25, random_state = 3