python等差數列
① python中for i in range(0, 3.0 , 0.1)為什麼錯
range函數用來產生一個范圍內的整數數組,輸入浮點數會出錯。
一個辦法是自己寫一個函數,參考http://www.sharejs.com/codes/python/1866;
另一個是引用numpy模塊的arange函數:
>>> from numpy import arange
>>> arange(0.5, 5, 1.5)
array([0.5, 2.0, 3.5])
② 用python3的語言編寫等差數列求和,就是給出首項、項數、公差,求數列的前n項和
首項=int(input('首項:'))
項數=int(input('項數:'))
公差=int(input('公差:'))
print(sum(range(首項,首項+公差*項數,公差)))
③ Python3哪位大神知道,首項為1項數和公差公比從1到任意的,生成任意等差等比數列的代碼
1.a(2n-1)=n,則a(n)=(2n+1)/2.
a(2n)=2^n,則a(n)=2^(n/2).用大括弧表示(2n-1)的是奇數,(2n)的是偶數
2.b(n)=n/(2^n),可寫出s(n)和s(n/2),相減,可得到s(n)=2-(n+2)/(2^n),可證明(n+2)/(2^n)單調遞減,故s(n)單調遞增,又s(n)無限趨近於2,故a>=2.
④ python中的range函數
range可以產生一個等差數列。
格式:range(start,end,step)三個參數都是整數
start-數列開始的數(包含)如果是0可以回參略
end-數列結束的數(不答包含)
step-步長,如果是1可以參略
如:range(5)產生0,1,2,3,4
range(1,5,2)產生1,3
range(5,1,-1)產生5,4,3,2
⑤ python 一句話生成浮點數等差數列[0,0.1...0.9]
一種用函數編程:
map(lambda x:x/10.0, range(10))
一種用列表推導:
[i/10.0 for i in range(10)]
⑥ python如何判斷list是否等差數列
看代碼:
#-*-encoding:gbk-*-
defis_arithmetic_progression(prog):
_len=len(prog)
foriinrange(0,_len-2):
ifprog[i+1]-prog[i]!=prog[i+2]-prog[i+1]:
returnFalse
returnTrue
prog1=[1,3,6,7,10,12]
prog2=[1,2,3,4]
printis_arithmetic_progression(prog1)
printis_arithmetic_progression(prog2)
運行:
⑦ python 判讀是不是等差數列,要求演算法時間復雜度為o
首先計算機的輸入數據只能是有限的,理論上的無窮項等差數列不可能輸入,只能以數組形版式輸入有限項等權差數列。
演算法原理:設輸入的數組為A[n],只要用d=A[1]-A[0];求出公差。然後逐項檢查所有數組相鄰差值是否為d即可。所以最佳時間復雜度為O(n)。
如果需要寫這么個簡單程序請追問。
⑧ python 等差數列求和
參考例子:
實現功能:求a和b之間偶數的和。
def sum_even(a, b):
count = 0
for i in range(a, b, 1):
if(i % 2 == 0):
count += i
return count
⑨ python等差數列求和怎麼打成一行
把print('0')改成print('0',end='')
把print('+%d'%n)改成print('+%d'%n,end='')
輸出就會在一行上了.