中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python常見的基礎算法題有哪些

發布時間:2022-02-19 16:35:57 來源:億速云 閱讀:236 作者:iii 欄目:開發技術

這篇文章主要介紹“Python常見的基礎算法題有哪些”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Python常見的基礎算法題有哪些”文章能幫助大家解決問題。

1.求100(含100)以內所有偶數的和

range(start,end,step)這個序列生成器,和那個切片的語法一樣,含頭不含尾,step是步長,這里就不需要在對j進行判斷了,對于這些簡單求奇數和、求偶數和,就n的倍數和等等就可以這樣做。

for j in range(0,101,2):

    s = s + j

print(s)

2.求第n位斐波那契數

這是求第n位斐波那契數,大家可以嘗試多種方法做,我這就不做多的演示了,要是求n(包含n)位前所有斐波那契數了,創建一個列表保存一下就好,希望大家可以去做一下,加深對列表方法的使用

# 斐波那契數列:1,1,2,3,5,8,13,21,34,55.....

# 從第三位開始:后一個數等于前面兩數相加

n = int(input('請輸入你要求第幾位斐波那契數:'))

a = 0

b = 1

for i in range(n):

    # c = a

    # a = b

    # b = c + b

    # 上三式可以簡寫為:

    a,b = b,a+b

print(a)

3.求水仙花數

我這定義了一個函數去求n位數的水仙花數,不過水仙花數就是100-1000內個位十位百位3次方的和等于本身的數,我那只是類推一下,當然也可以不定義函數,直接使用input輸入一個n或者直接給定n的值

def get_Narcissistic(n):

    for i in range(pow(10,n-1),pow(10,n)):

        s = 0

        for j in range(n):

            s = s+pow(i//10**j%10,n)

        if i==s:

            print(i)

get_Narcissistic(3)

# 153

# 370

# 371

# 407

4.打印99乘法表

用于理解循環的使用

# a=0

# while a<9:

#     a+=1

#     b=0

#     while b<a:

#         b+=1

#         print(b,'*',a,'=',a*b,sep='',end='\t') #sep是分隔符默認是空格,\t是制表符

#     print()

for i in range(1,10):

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

        print(f'{j}*{i}={i*j}',end='\t')

    print()

"""

1*1=1

1*2=2 2*2=4

1*3=3 2*3=6 3*3=9

1*4=4 2*4=8 3*4=12 4*4=16

1*5=5 2*5=10 3*5=15 4*5=20 5*5=25

1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36

1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49

1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64

1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

"""

5.百馬百擔

一匹大馬能背3擔貨,一匹中馬能背2擔貨,兩匹小馬能背1擔貨,如果用一百匹馬背一百擔貨,有哪些不同的背法

for i in range(34): # i代表大馬的匹數

    for j in range(51): # j代表中馬的匹數

        if i*3+j*2+(100-i-j)/2 == 100:

            print(f'大馬={i},中馬={j},小馬={100-i-j}')

# 大馬=2,中馬=30,小馬=68

# 大馬=5,中馬=25,小馬=70

# 大馬=8,中馬=20,小馬=72

# 大馬=11,中馬=15,小馬=74

# 大馬=14,中馬=10,小馬=76

# 大馬=17,中馬=5,小馬=78

# 大馬=20,中馬=0,小馬=80

6.判斷用戶輸入的年份是否為閏年

輸入一個數,先判斷如果是400的倍數,則滿足;如果不是400的倍數,再判斷如果該數能夠被4整除,卻不能被100整除,則滿足。

n = int(input('請輸入年份:'))

if n % 400 == 0 or n % 4 == 0 and n % 100 != 0:

    print('{0}是閏年'.format(n))

else:

     print('{0}不是閏年'.format(n))

高效方法:

python 的 calendar 庫中已經封裝好了一個方法 isleap() 來實現這個判斷是否為閏年:

import calendar

n = int(input("請輸入年份:"))

year = calendar.isleap(n)

if year == True:

    print ("{0}是閏年".format(n))

else:

    print ("{0}不是閏年".format(n))

關于“Python常見的基礎算法題有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

柳河县| 霍山县| 罗田县| 班玛县| 玛曲县| 邓州市| 阜宁县| 稻城县| 松江区| 赫章县| 石景山区| 育儿| 北流市| 通化市| 崇义县| 渭南市| 榆社县| 藁城市| 漳平市| 祁东县| 合阳县| 北碚区| 上思县| 德保县| 永安市| 青田县| 广平县| 竹北市| 晋宁县| 商河县| 军事| 雷波县| 平潭县| 金塔县| 贞丰县| 溧阳市| 比如县| 株洲市| 红河县| 潞城市| 顺昌县|