久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Python經(jīng)典基礎(chǔ)習(xí)題(函數(shù))_python函數(shù)練習(xí)題

 沒有開始 2023-09-25

目錄

1.編寫函數(shù),實現(xiàn)根據(jù)鍵盤輸入的長,、寬,、高之值計算長方體體積,。

2.編寫函數(shù),,使用遞歸函數(shù)f(n)實現(xiàn)斐波那契數(shù)列中小于等于參數(shù)n的所有值,。

3.編寫函數(shù),,從鍵盤輸入一個整數(shù),,判斷其是否為完全數(shù),。所謂完全數(shù),是指這樣的數(shù),,該數(shù)的各因子(除該數(shù)本身外)之和正好等于該數(shù)本身,,例如:6=1+2+3,28=1+2+4+7+14,。

4.編寫函數(shù),,從鍵盤輸入?yún)?shù)n,使用遞歸函數(shù)H(n)實現(xiàn)下列特征方程中小于等于參數(shù)n的所有值,。 H(0)=0; H(1)=1; H(2)=2; H(n)= H(n)+9H(n-2)-9H(n-3)

5.編寫函數(shù),,實現(xiàn)折半查找。

6.編寫函數(shù),,從鍵盤輸入?yún)?shù)x和n,,計算并顯示形如x+xx +xxx + xxxx + xxxxx+xxx…xxx+ 的表達式前n項的值。

7.編寫函數(shù),,從鍵盤輸入?yún)?shù)n,,計算并顯示表達式1 +1/2 –1/3 + 1/4 –1/5 + 1/6+… +(-1)n/n 的前n項之和。

8.編寫函數(shù),,從鍵盤輸入一字符串,,判斷該字符串是否為會回文,所謂回文是指,,從前向后讀和從后向前讀是一樣的,。

運行結(jié)果:

9.編寫函數(shù),從鍵盤輸入一字符串,,把其中的各個字符顛倒,,標(biāo)點符號不顛倒,例如,,'I enjoy reading!’,,經(jīng)過函數(shù)調(diào)用后變?yōu)?gnidaer yojne I’。

10.佩奇去超市購買54元巧克力和53元果凍,,貨幣面值有20,、10、2,、1元,,按付款貨幣數(shù)量最少原則,佩奇需要付給超市多少數(shù)量的貨幣,,編寫函數(shù)實現(xiàn)該算法,。


1.編寫函數(shù),實現(xiàn)根據(jù)鍵盤輸入的長、寬,、高之值計算長方體體積,。

程序代碼:

  1. x = int(input("請輸入長方體的長:"))
  2. y = int(input("請輸入長方體的寬:"))
  3. z = int(input("請輸入長方體的高:"))
  4. def rectangle_volume(rectangle_length,rectangle_width,rectangle_height):
  5. rectangle_volume_true = rectangle_height*rectangle_width*rectangle_length
  6. print("矩形的體積為:",rectangle_volume_true)
  7. return 0
  8. rectangle_volume(x,y,z)

運行結(jié)果:

  1. C:\ProgramData\Anaconda3\python.exe D:/blue4/01.py
  2. 請輸入長方體的長:8
  3. 請輸入長方體的寬:4
  4. 請輸入長方體的高:2
  5. 矩形的體積為: 64
  6. 進程已結(jié)束,退出代碼0

2.編寫函數(shù),使用遞歸函數(shù)f(n)實現(xiàn)斐波那契數(shù)列中小于等于參數(shù)n的所有值,。

程序代碼:

  1. def fib(n):
  2. a,b = 1,1
  3. while a <= n:
  4. print(a,end=" ")
  5. a,b = b,a+b
  6. fib(1000)

運行結(jié)果:

  1. C:\ProgramData\Anaconda3\python.exe D:/blue4/02.py
  2. 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987
  3. 進程已結(jié)束,退出代碼0

3.編寫函數(shù),,從鍵盤輸入一個整數(shù),判斷其是否為完全數(shù),。所謂完全數(shù),,是指這樣的數(shù),該數(shù)的各因子(除該數(shù)本身外)之和正好等于該數(shù)本身,,例如:6=1+2+3,,28=1+2+4+7+14。

程序代碼:

  1. number = int(input("請輸入一個數(shù)字:"))
  2. a = []
  3. def complete_number(number):
  4. for i in range(1,number):
  5. if number % i == 0:
  6. a.append(i)
  7. if sum(a) == number:
  8. print("{}是完美數(shù)".format(number))
  9. else:
  10. print("{}不是完美數(shù)".format(number))
  11. complete_number(number)

運行結(jié)果:

  1. C:\ProgramData\Anaconda3\python.exe D:/blue4/03.py
  2. 請輸入一個數(shù)字:6
  3. 6是完美數(shù)
  4. 進程已結(jié)束,退出代碼0

4.編寫函數(shù),,從鍵盤輸入?yún)?shù)n,,使用遞歸函數(shù)H(n)實現(xiàn)下列特征方程中小于等于參數(shù)n的所有值。 H(0)=0; H(1)=1; H(2)=2; H(n)= H(n)+9H(n-2)-9H(n-3)

程序代碼:

  1. number= int(input("請輸入?yún)?shù)n:"))
  2. def H(n):
  3. if 0 <= n < 3:
  4. return n
  5. else:
  6. return H(n-1)+9*H(n-2)-9*H(n-3)
  7. print("函數(shù)H(n)小于等于參數(shù)n的所有值為:")
  8. for i in range(number+1):
  9. print(H(i),end=" ")

運行結(jié)果:

  1. C:\ProgramData\Anaconda3\python.exe D:/blue4/04.py
  2. 請輸入?yún)?shù)n:5
  3. 函數(shù)H(n)小于等于參數(shù)n的所有值為:
  4. 0 1 2 11 20 101
  5. 進程已結(jié)束,退出代碼0

5.編寫函數(shù),,實現(xiàn)折半查找,。

程序代碼:

  1. from random import randint
  2. def binarySearch(lst,value):
  3. start = 0
  4. end = len(lst)
  5. while start <= end:
  6. middle = (start+end)//2
  7. if value == lst[middle]:
  8. return middle
  9. elif value > lst[middle]:
  10. start = middle + 1
  11. elif value < lst[middle]:
  12. end = middle - 1
  13. return False
  14. lst = [randint(1,50) for i in range(1,20)]
  15. lst.sort()
  16. print(lst)
  17. result = binarySearch(lst,10)
  18. if result != False:
  19. print("查找成功!位置在:",result+1)
  20. else:
  21. print("查找失??!")

運行結(jié)果:

  1. C:\ProgramData\Anaconda3\python.exe D:/blue4/05.py
  2. [2, 6, 8, 10, 11, 12, 13, 19, 24, 32, 37, 37, 37, 39, 41, 44, 45, 45, 48]
  3. 查找成功!位置在: 4
  4. 進程已結(jié)束,退出代碼0

6.編寫函數(shù),,從鍵盤輸入?yún)?shù)x和n,,計算并顯示形如x+xx +xxx + xxxx + xxxxx+xxx…xxx+ 的表達式前n項的值。

程序代碼:

  1. x = int(input("請輸入最開始的一個數(shù):"))
  2. n = int(input("請輸入你想求和的項數(shù):"))
  3. a = 0
  4. b = 0
  5. def jie_fib_sum(x,n):
  6. global a,b
  7. while n:
  8. a += x
  9. n -= 1
  10. x *= 10
  11. b += a
  12. return b
  13. result = jie_fib_sum(x,n)
  14. print("前n項和為:",result)

運行結(jié)果:

  1. C:\ProgramData\Anaconda3\python.exe D:/blue4/06.py
  2. 請輸入最開始的一個數(shù):1
  3. 請輸入你想求和的項數(shù):5
  4. 前n項和為: 12345
  5. 進程已結(jié)束,退出代碼0

7.編寫函數(shù),,從鍵盤輸入?yún)?shù)n,,計算并顯示表達式1 +1/2 –1/3 + 1/4 –1/5 + 1/6+… +(-1)n/n 的前n項之和,。

程序代碼:

  1. n = int(input("請輸入你想進行計算的數(shù)字:"))
  2. count = 1
  3. def add(n):
  4. global count
  5. for i in range(2,n+1):
  6. if i%2 == 0:
  7. count += (1/i)
  8. else:
  9. count -= (1/i)
  10. print("前{}項和為:".format(n),count)
  11. add(n)

運行結(jié)果:

  1. C:\ProgramData\Anaconda3\python.exe D:/blue4/07.py
  2. 請輸入你想進行計算的數(shù)字:2
  3. 前2項和為: 1.5
  4. 進程已結(jié)束,退出代碼0

8.編寫函數(shù),,從鍵盤輸入一字符串,判斷該字符串是否為會回文,,所謂回文是指,,從前向后讀和從后向前讀是一樣的。

程序代碼:

  1. string = input("請輸入一字符串:")
  2. string_list = []
  3. for i in string:
  4. string_list.append(i)
  5. def return_word(lis):
  6. start = 0
  7. end = len(lis)
  8. if lis[start] == lis[end-1]:
  9. start += 1
  10. end -=1
  11. if lis[start] == lis[end-1]:
  12. print("{}是回文".format(string))
  13. else:
  14. print("{}不是回文".format(string))
  15. return_word(string_list)

運行結(jié)果:

  1. C:\ProgramData\Anaconda3\python.exe D:/blue4/08.py
  2. 請輸入一字符串:杜小杜
  3. 杜小杜是回文
  4. 進程已結(jié)束,退出代碼0

9.編寫函數(shù),,從鍵盤輸入一字符串,,把其中的各個字符顛倒,標(biāo)點符號不顛倒,,例如,,'I enjoy reading!’,經(jīng)過函數(shù)調(diào)用后變?yōu)?gnidaer yojne I’。

程序代碼:

由于太懶了就做了一個“,!”的字符顛倒,。代碼中有兩個感嘆號,是因為中英文輸入的感嘆號不同,,要是只寫中文感嘆號或是英文感嘆號可能會出現(xiàn)報錯情況,。

  1. string = input("請輸入一字符串:")
  2. string_list = []
  3. keep = []
  4. lis_new = []
  5. last = []
  6. for i in string:
  7. string_list.append(i)
  8. def replace(lis):
  9. count = 0
  10. end = len(lis)
  11. if end == 1:
  12. lis_ol = "".join(lis)
  13. print(lis_ol)
  14. else:
  15. for index,nums in enumerate(lis):
  16. if nums == "!" or nums == "!":
  17. keep.append(index)
  18. else:
  19. continue
  20. for i in range(end):
  21. keep_new = [i for i in keep]
  22. lis_new.append(i)
  23. lis_new_last = list(set(lis_new) - set(keep_new))
  24. if len(keep) == 0:
  25. lis[i], lis[end - i - 1] = lis[end - i - 1], lis[i]
  26. count += 1
  27. if count == (end // 2)+1:
  28. break
  29. if len(keep) != 0:
  30. lis_new_last.reverse()
  31. for l in (lis_new_last):
  32. if l == end - i - 2:
  33. lis[i],lis[l] = lis[l],lis[i]
  34. lis_ol ="".join(lis)
  35. print(lis_ol)
  36. replace(string_list)

運行結(jié)果:

  1. C:\ProgramData\Anaconda3\python.exe D:/blue4/09.py
  2. 請輸入一字符串:我愛杜杜,!
  3. 杜杜愛我,!
  4. 進程已結(jié)束,退出代碼0

10.佩奇去超市購買54元巧克力和53元果凍,貨幣面值有20,、10,、2、1元,,按付款貨幣數(shù)量最少原則,,佩奇需要付給超市多少數(shù)量的貨幣,編寫函數(shù)實現(xiàn)該算法,。

程序代碼:

  1. def min_number(n):
  2. if n <= 0:
  3. print("錯誤,!請檢查您的付款金額")
  4. else:
  5. x = n // 20
  6. x += 1
  7. print("需要最少貨幣:",x, "張")
  8. min_number(107)

運行結(jié)果:

  1. C:\ProgramData\Anaconda3\python.exe D:/blue4/10.py
  2. 需要最少貨幣: 6 張
  3. 進程已結(jié)束,退出代碼0

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多