python基礎練習25 39

2021-08-28 16:13:53 字數 3874 閱讀 9079

26.求100之內的素數。

for i in range(2,101):

for j in range(2,i):

if i % j==0:

break

else:

print(i)

27.對10個數進行排序。這裡用的是冒泡法

if __name__ == "__main__":

n = 10

# input data

print ('請輸入10個數字:\n')

l =

for i in range(n):

print()

for i in range(n):

print(l[i])

print()

# 排列10個數字

for i in range(n - 1):

min = i

for j in range(i + 1,n):

if l[min] > l[j]:min = j

l[i],l[min] = l[min],l[i]

print ('排列之後:')

for i in range(n):

print (l[i])

28.求乙個3*3矩陣主對角線元素之和。

import numpy as np

a=np.random.randint(1,100,9).reshape(3,3)

print(a)

(m,n)=np.shape(a)

sum=0

for i in range(m):

for j in range(n):

if i==j:

sum+=a[i,j]

print(sum)

29.兩個 3 行 3 列的矩陣,實現其對應位置的資料相加,並返回乙個新矩陣:(使用numpy更快)

x = [[12,7,3],

[4,5,6],

[7,8,9]]

y = [[5,8,1],

[6,7,3],

[4,5,9]]

z= for i in range(3):

for i in range(3):

for j in range(3):

print(z)

30.求輸入數字的平方,如果平方運算後小於 50 則退出。

a=1

while a:

n=int(input('num:'))

if n*n<50:

a=0print(n*n)

else:

a=1print(n*n)

31.楊輝三角

l=[1]

for i in range(10):

for k in l:

print(k,end='\t')

print('\n ')

l1=l[:]

l1.insert(0,0)

l2=for i in range(len(l1)-1):

l=l2[:]

32.輸入陣列,最大的與第乙個元素交換,最小的與最後乙個元素交換,輸出陣列。(numpy中的argmax,argmin更好用)

for i in range(len(a)):

if a[i] == max(a):

a[0], a[i] = a[i], a[0]

for i in range(len(a)):

if a[i] == min(a):

a[i], a[len(a)-1]=a[len(a)-1], a[i]

33.有n個人圍成一圈,順序排號。從第乙個人開始報數(從1到3報數),凡報到3的人退出圈子,問最後留下的是原來第幾號的那位。

if __name__ == '__main__':

nmax = 50

n = int(raw_input('請輸入總人數:'))

num =

for i in range(n):

i = 0

k = 0

m = 0

while m < n - 1:

if num[i] != 0 : k += 1

if k == 3:

num[i] = 0

k = 0

m += 1

i += 1

if i == n : i = 0

i = 0

while num[i] == 0: i += 1

print num[i]

34.海灘上有一堆桃子,五隻猴子來分。第一只猴子把這堆桃子平均分為五份,多了乙個,這只猴子把多的乙個扔入海中,拿走了乙份。第二隻猴子把剩下的桃子又平均分成五份,又多了乙個,它同樣把多的乙個扔入海中,拿走了乙份,第

三、第四、第五只猴子都是這樣做的,問海灘上原來最少有多少個桃子?

if __name__ == '__main__':

i = 0

j = 1

x = 0

while (i < 5) :

x = 4 * j

for i in range(0,5) :

if(x%4 != 0) :

break

else :

i += 1

x = (x/4) * 5 +1

j += 1

print x

35.編寫乙個函式,輸入n為偶數時,呼叫函式求1/2+1/4+...+1/n,當輸入n為奇數時,呼叫函式1/1+1/3+...+1/n

def sumfr(n):

ls = [1/i for i in range(n,0,-2)]

return sum(ls)

36.求0—7所能組成的奇數個數。

if __name__ == '__main__':

sum = 4

s = 4

for j in range(0,7):

print (sum)

if j <= 0:

s *= 7

else:

s *= 8

sum += s

print ('sum = %d' % sum)

37.輸入乙個奇數,然後判斷最少幾個 9 除於該數的結果為整數。

x=int(input('sum:'))

a=9n=1

while 1:

if a%x==0:

break

else:

a=a*10+9

n+=1

print(n)

38.讀取7個數(1—50)的整數值,每讀取乙個值,程式列印出該值個數的*

for i in range(7):

a=int(input('num:'))

if a>1 and a<50:

print(a*'*')

39某個公司採用公用**傳遞資料,資料是四位的整數,在傳遞過程中是加密的,加密規則如下:每位數字都加上5,然後用和除以10的餘數代替該數字,再將第一位和第四位交換,第二位和第三位交換。

b=

a=[2,3,1,4]

a[0], a[3]=a[3], a[0]

a[2], a[1]=a[1],a[2]

for i in range(4):

for j in range(4):

b[i]=(a[i]+5)%10

print(b)

Python基礎練習

1.python 為什麼不需要變數名和變數型別宣告?python語言中物件的型別和記憶體都是執行時確定的。在建立也就是賦值時,直譯器會根據語法和右側的運算元來決定新物件的型別。2.python 為什麼不需要宣告函式型別?待補充3.python 為什麼應當避免在變數名的開始和結尾使用雙下劃線?合法識別...

python基礎練習

比較大小5個數的大小 i 5j 1 sum1 0 while j i num1 int input 輸入第 d個數 j if j 1 max1 num1 min1 num1 sum1 num1 else if num1 max1 max1 num1 elif num1 求5個數的和及平均值 i 5j...

Python基礎練習

class rever object class 類。類屬性 裡面的變數 類方法 裡面封裝的函式 在類的內部,定義def函式的時候。必須含有self引數,並且必須是第乙個。表示函式私有,不可以被類之外的函式呼叫 表示私有變數,不能被這個函式之外的函式呼叫 object函式內建基類 init 初始化函...