日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

Python中def()函數(shù)的實戰(zhàn)練習(xí)題_python

作者:橘子愛吃橘子 ? 更新時間: 2022-08-26 編程語言

一、判斷以下哪些不能作為標(biāo)識符

A、a
B、¥a
C、_12
D、$a@12
E、false
F、False

答案為:(F、D、B、E)

二、輸入數(shù),判斷這個數(shù)是否是質(zhì)數(shù)(要求使用函數(shù) + for循環(huán))

def zhishu(num):
    for i in range(2,num//2+1):
        if num%i==0:
            return (f"{num}不是質(zhì)數(shù)")
    return (f"{num}是質(zhì)數(shù)")
print(zhishu(5))

三、求50~150之間的質(zhì)數(shù)是那些?

def zhishu(num):
        for i in range(2,num//2+1):
            if num%i==0:
                return  False
        return True
for i in range(50,151):
    if zhishu(i):
        print(f"{i}是質(zhì)數(shù)")

四、打印輸出標(biāo)準(zhǔn)水仙花數(shù),輸出這些水仙花數(shù)

def num1():
 for num in range(100,1000):
    i = num // 100 
    j = num // 10 % 10
    k = num % 10 
    if num == i ** 3 + j ** 3 + k ** 3:
        print ("輸出的水仙花數(shù)為:%s"%(num))
num1()

五、驗證:任意一個大于9的整數(shù)減去它的各位數(shù)字之和所得的差,一定能被9整除.

在這里插入代碼片num = int (input("請輸入大于9的數(shù)字:"))
if num<100:
    i=num%10
    j=num//10
    sums=i+j
    print(sums)
    if (num-sums)%9==0:
        print("該數(shù)能夠被9整除,驗證成功")
    else:
        print("該數(shù)能夠被9整除,驗證失敗")
elif num>=100 and num<=1000:
        i=(num %100)%10
        j= (num %100)//10
        k=num//100
        sums=i+j+k
        print(sums)
        if (num -sums)/9==0:
            print("該數(shù)能夠被9整除,驗證成功")
        else:
            print('這個數(shù)不能被9整除,驗證失敗')

六、一個五位數(shù),若在它的后面寫上一個7,得到一個六位數(shù)A,若在它前面寫上一個7,得到一個六位數(shù)B,B是A的五倍,求此五位數(shù).

def num():
    for i in range(10000,100000):
       num1=i * 10 + 7
       num2=i + 700000
       if num2==5*num1:
           print(i)
num()

七、有一種最簡真分?jǐn)?shù),它們的分子與分母的乘積都是140,把所有這樣的真分?jǐn)?shù)從小到大打印出來

def nums():
    for i in range(1,20):
        for j in range(i,141):
              if i*j==140:
                  print("%d/%d"%(i,j))
nums()

八、某數(shù)被80除所得的商,不但是7的倍數(shù),而且用2,3,4,5,6去除余數(shù)都是1,求這 個自然數(shù).

def nums():
    for num in range(1,100000):
        n=num/80
        if n%7==0 and n%2==1 and n%3==1 and n%4==1 and n%5==1 and n%6==1:
            print('這個自然數(shù)為:%s'%(n))
nums()

九、編程求出滿足以下條件的三位數(shù):它除以11所得的商等于它各位數(shù)字之和

def nums():
    for num in range(100,1000):
        i=(num %100)%10
        j= (num %100)//10
        k=num//100
        sums = i+j+k
        if sums==num/11:
            print("滿足條件的三位數(shù)為:%s"%num)
            break
nums()

十、有一堆硬幣,每次只能拿一個或者兩個,求最少多少次可以拿完硬幣[10, 8, 5, 3, 27, 99]

方法一
coin=[10, 8, 5, 3, 27, 99]
x=0
for i in coin:
	if i%2==0:
		x+=i//2
	else:
			 x+=i//2+1
print("最少%s"%(x)+"次可以拿完硬幣")
# 方法二,遞歸法
def coin(n):
    if n==1 :
        return 1
    if n==2:
        return 2
    return coin(n-1)+coin(n-2)
print("最少%s"%(coin(10))+"次可以拿完硬幣")

十一、求1~100之間不能被3整除的數(shù)之和

def sums():
    num1 = 0
    for num in range(1,101):    
       if num % 3 != 0:
           num1 += num 
    print("1~100之間不能被3整除的數(shù)之和為:%s"%(num1))
sums()
print("1~100之間不能被3整除的數(shù)之和為:%s"%(num1))

十二、給定一個正整數(shù)N,找出1到N(含)之間所有質(zhì)數(shù)的總和

def sums():
    N=int(input("請輸入一個正數(shù):"))
    sum=0
    for num in range(0,N):
        sum+=num+1
    print("1~N求和的結(jié)果為:{}".format(sum))
sums()

十三、計算PI(公式如下:PI=4(1-1/3+1/5-1/7+1/9-1…)

def sums():
    x=0
    y=0
    for i in range(1,99999999,4):
        x+=4*(1/i)
    for i in range (3,99999999,4):
        y-=4*(1/i)
    print(x+y)
sums()

十四、給定一個10個元素的列表,請完成排序(注意,不要使用系統(tǒng)api)

def sorts():
    list1=[10,25,12,11,10,9,8,1,5,30]
    for i in list1:
        list1.sort()
    print("排序后的元素為:%s"%list1)
sorts()

十五、求a+aa+aaa+…+aaaaaaaaa=?其中a為1至9之中的一個數(shù),項數(shù)也要可以指定。

def sums():
    a=int(input("請輸入數(shù)字:"))
    b=int(input("請輸入項數(shù):"))
    c=0
    for i in range(1,b+1):
        sums=a**i
        c+=sums
    print("您輸入的項為%s"%(b)+",數(shù)字為:%s"%(a)+",和為:%s"%(c))
sums()

十六、合并兩個有序數(shù)組,合并后還是有序列表

def ls():
    list1=[1,2,3,4,5,6]
    list2=[7,8,9,10,11,12]
    print('合并后的列表為:%s'%(list1+list2))
ls()

十七、給定一個非負(fù)整數(shù)數(shù)組A,將該數(shù)組中的所有偶數(shù)都放在奇數(shù)元素之前

def ls():
    lsA=[1,2,33,35,34,36]
    lsB=[]
    lsC=[]
    for i in lsA:
        if i%2==0:
            lsB.append(i)
        else:
            lsC.append(i)
    lsB.extend(lsC)
    print("該數(shù)組中的所有偶數(shù)都放在奇數(shù)元素之前的元素為:%s"%(lsB))
ls()

十八、將10進(jìn)制數(shù)據(jù)轉(zhuǎn)換為二進(jìn)制,并且統(tǒng)計其中的0和1的數(shù)量

十九、給定一個數(shù)組,已知數(shù)組中的元素都是成對出現(xiàn),現(xiàn)在數(shù)組中只有一個元素沒有成對,請找出這個元素。[1,3,1,2,2,8,8]

def ls():
    ls=	[1,3,1,2,2,8,8]
    for i in ls:
        if ls.count(i) %2 !=0:
            print("沒有成對的元素為:%s"%(i))
ls()

總結(jié)

原文鏈接:https://blog.csdn.net/qq_50589028/article/details/124029856

欄目分類
最近更新