1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        【PTA|Python】浙大版《Python 程序設(shè)計》題目集:第二章

        共 7225字,需瀏覽 15分鐘

         ·

        2021-07-21 20:32

        第二章習題

        2-1 計算 11+12+13+...+m (30 分)

        題目

        輸入一個正整數(shù)m(20<=m<=100),計算 11+12+13+...+m 的值。

        輸入格式:

        ?

        在一行輸入一個正整數(shù)m。

        輸出格式:

        ?

        在一行中按照格式“sum = S”輸出對應的和S.

        輸入樣例:

        在這里給出一組輸入。例如:

        ?

        90

        輸出樣例:

        在這里給出相應的輸出。例如:

        ?

        sum = 4040

        解答

        m=int(input())
        res=sum(list(range(11,m+1)))
        print("sum =",res)

        2-2 計算分段函數(shù)[1] (10 分)

        題目

        本題目要求計算下列分段函數(shù)_f_(x)的值:

        輸入格式:

        ?

        輸入在一行中給出實數(shù)x。

        輸出格式:

        ?

        在一行中按“f(x) = result”的格式輸出,其中x與result都保留一位小數(shù)。

        輸入樣例1:

        ?

        10

        輸出樣例1:

        ?

        f(10.0) = 0.1

        輸入樣例2:

        ?

        0

        輸出樣例2:

        ?

        f(0.0) = 0.0

        解答

        提交代碼-1

        x=float(input())
        if x==0:
            print("f({:.1f}) = {:.1f}".format(x,x))
        else:
            print("f({:.1f}) = {:.1f}".format(x,1/x))

        提交代碼-2

        x=float(input())
        if x==0:
            print('f(%.1f) = %.1f'%(x,x))
        else:
            print('f(%.1f) = %.1f' % (x, 1/x))

        2-3 階梯電價 (15 分)

        題目

        為了提倡居民節(jié)約用電,某省電力公司執(zhí)行“階梯電價”,安裝一戶一表的居民用戶電價分為兩個“階梯”:月用電量50千瓦時(含50千瓦時)以內(nèi)的,電價為0.53元/千瓦時;超過50千瓦時的,超出部分的用電量,電價上調(diào)0.05元/千瓦時。請編寫程序計算電費。

        輸入格式:

        ?

        輸入在一行中給出某用戶的月用電量(單位:千瓦時)。

        輸出格式:

        ?

        在一行中輸出該用戶應支付的電費(元),結(jié)果保留兩位小數(shù),格式如:“cost = 應付電費值”;若用電量小于0,則輸出"Invalid Value!"。

        輸入樣例1:

        ?

        10

        輸出樣例1:

        ?

        cost = 5.30

        輸入樣例2:

        ?

        100

        輸出樣例2:

        ?

        cost = 55.50

        解答

        m=int(input())
        if m<0:
            print("Invalid Value!")
        elif m<=50:
            cost=m*0.53
            print("cost = {:.2f}".format(cost))
        else:
            cost=50*0.53+(m-50)*(0.53+0.05)
            print("cost = {:.2f}".format(cost))

        2-4 特殊a串數(shù)列求和 (20 分)

        題目

        給定兩個均不超過9的正整數(shù)_a_和_n_,要求編寫程序求_a_+aa+aaa++?+aa_?_an_個_a)之和。

        輸入格式:

        ?

        輸入在一行中給出不超過9的正整數(shù)a和n。

        輸出格式:

        ?

        在一行中按照“s = 對應的和”的格式輸出。

        輸入樣例:

        ?

        2 3

        輸出樣例:

        ?

        s = 246

        解答

        a,n=map(int,input().split())
        num=0
        sum=0
        for i in range(1,n+1):
            num=num*10+a
            sum+=num
        print("s =",sum)

        2-5 求奇數(shù)分之一序列前N項和 (15 分)

        題目

        本題要求編寫程序,計算序列 1 + 1/3 + 1/5 + ... 的前N項之和。

        輸入格式:

        ?

        輸入在一行中給出一個正整數(shù)N。

        輸出格式:

        ?

        在一行中按照“sum = S”的格式輸出部分和的值S,精確到小數(shù)點后6位。題目保證計算結(jié)果不超過雙精度范圍。

        輸入樣例:

        ?

        23

        輸出樣例:

        ?

        sum = 2.549541

        解答

        n=int(input())
        sum=0
        for i in range(1,2*n,2):
            sum+=1/i
        print("sum = {:.6f}".format(sum))

        2-6 求交錯序列前N項和 (15 分)

        題目

        本題要求編寫程序,計算交錯序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N項之和。

        輸入格式:

        ?

        輸入在一行中給出一個正整數(shù)N。

        輸出格式:

        ?

        在一行中輸出部分和的值,結(jié)果保留三位小數(shù)。

        輸入樣例:

        ?

        5

        輸出樣例:

        ?

        0.917

        解答

        n=int(input())
        sum=0
        for i in range(1,n+1):
            if i%2==0:
                sum-=(i/(2*i-1))
            else:
                sum+=(i/(2*i-1))
        print("{:.3f}".format(sum))

        2-7 產(chǎn)生每位數(shù)字相同的n位數(shù) (30 分)

        題目

        讀入2個正整數(shù)A和B,1<=A<=9, 1<=B<=10,產(chǎn)生數(shù)字AA...A,一共B個A

        輸入格式:

        ?

        在一行中輸入A和B。

        輸出格式:

        ?

        在一行中輸出整數(shù)AA...A,一共B個A

        輸入樣例1: 在這里給出一組輸入。例如:

        ?

        1,  5

        輸出樣例1: 在這里給出相應的輸出。例如:

        ?

        11111

        輸入樣例2: 在這里給出一組輸入。例如:

        ?

        3  ,4

        輸出樣例2: 在這里給出相應的輸出。例如:

        ?

        3333

        解答

        a,b=map(int,input().split(','))
        res=0
        for i in range(1,b+1):
            res=(res*10)+a
        print(res)

        2-8 轉(zhuǎn)換函數(shù)使用 (30 分)

        題目

        輸入一個整數(shù)和進制,轉(zhuǎn)換成十進制輸出

        輸入格式:

        ?

        在一行輸入整數(shù)和進制

        輸出格式:

        ?

        在一行十進制輸出結(jié)果

        輸入樣例:

        ?

        在這里給出一組輸入。例如:45,8

        輸出樣例:

        ?

        在這里給出相應的輸出。例如:37

        解答

        提交代碼-1

        m,n=map(int,input().split(','))
        count=0
        ans=0
        while(m>0):
            ans=ans+(m%10)*pow(n,count)
            count=count+1
            m=int(m/10)
        print(int(ans))

        提交代碼-2

        m,n=input().split(',')
        ans=int(m,int(n))
        print(ans)

        2-9 比較大小 (10 分)

        題目

        本題要求將輸入的任意3個整數(shù)從小到大輸出。

        輸入格式:

        ?

        輸入在一行中給出3個整數(shù),其間以空格分隔。

        輸出格式:

        ?

        在一行中將3個整數(shù)從小到大輸出,其間以“->”相連。

        輸入樣例:

        ?

        4 2 8

        輸出樣例:

        ?

        2->4->8

        解答

        提交代碼 - 1

        a,b,c=map(int,input().split())
        if(a>b):
            temp=a
            a=b
            b=temp
        if(a>c):
            temp=a
            a=c
            c=temp
        if(b>c):
            temp=b
            b=c
            c=temp
        print("%d->%d->%d" %(a,b,c))

        提交代碼 - 2

        print(*sorted(map(int,input().split())),sep="->")

        提交代碼 - 3

        #!/usr/bin/python3
        print(*sorted(map(int,input().split(','))),sep="->")

        2-10 輸出華氏-攝氏溫度轉(zhuǎn)換表 (15 分)

        題目

        輸入2個正整數(shù)lower和upper(lower≤upper≤100),請輸出一張取值范圍為[lower,upper]、且每次增加2華氏度的華氏-攝氏溫度轉(zhuǎn)換表。溫度轉(zhuǎn)換的計算公式:C=5×(_F_?32)/9,其中:_C_表示攝氏溫度,_F_表示華氏溫度。

        輸入格式:

        ?

        在一行中輸入2個整數(shù),分別表示lower和upper的值,中間用空格分開。

        輸出格式:

        ?

        第一行輸出:"fahr celsius"

        接著每行輸出一個華氏溫度fahr(整型)與一個攝氏溫度celsius(占據(jù)6個字符寬度,靠右對齊,保留1位小數(shù))。若輸入的范圍不合法,則輸出"Invalid."。

        輸入樣例1:

        ?

        32 35

        輸出樣例1:

        ?

        fahr celsius

        32   0.0

        34   1.1

        輸入樣例2:

        ?

        40 30

        輸出樣例2:

        ?

        Invalid.

        解答

        #!/usr/bin/python3
        m,n=map(int,input().split())
        if(n<m):
            print('Invalid.')
        else:
            print('fahr celsius')
            for i in range(m,n+1,2):
                print("{:d}{:>6.1f}".format(i,5*(i-32)/9))
            

        2-11 求平方與倒數(shù)序列的部分和 (15 分)

        題目

        輸入格式:

        ?

        輸入在一行中給出兩個正整數(shù)m和n(m≤n),其間以空格分開。

        輸出格式:

        ?

        在一行中按照“sum = S”的格式輸出部分和的值S,精確到小數(shù)點后六位。題目保證計算結(jié)果不超過雙精度范圍。

        輸入樣例:

        ?

        5 10

        輸出樣例:

        ?

        sum = 355.845635

        解答

        提交代碼 - 1

        m,n=map(int,input().split())
        sum=0
        for i in range(m,n+1):
            sum=sum+i*i+1/i
        print("sum = {:.6f}".format(sum))

        提交代碼 - 2

        m,n=map(int,input().split())
        print("sum = %.6f"% sum([(m*m+1/m) for m in range(m,n+1)]))

        2-12 輸出三角形面積和周長 (15 分)

        題目

        本題要求編寫程序,根據(jù)輸入的三角形的三條邊_a_、bc,計算并輸出面積和周長。注意:在一個三角形中, 任意兩邊之和大于第三邊。三角形面積計算公式:area=√_s_(s_?_a)(s_?_b)(s_?_c),其中_s_=(a+b+c)/2。

        輸入格式:

        ?

        輸入為3個正整數(shù),分別代表三角形的3條邊a、b、c。

        輸出格式:

        ?

        如果輸入的邊能構(gòu)成一個三角形,則在一行內(nèi),按照

        area = 面積; perimeter = 周長

        的格式輸出,保留兩位小數(shù)。否則,輸出

        These sides do not correspond to a valid triangle

        輸入樣例1:

        ?

        5 5 3

        輸出樣例1:

        ?

        area = 7.15; perimeter = 13.00

        輸入樣例2:

        ?

        1 4 1

        輸出樣例2:

        ?

        These sides do not correspond to a valid triangle

        解答

        a,b,c=map(int,input().split())
        if(a+b<=c or a+c<=b or b+c<=a):
            print("These sides do not correspond to a valid triangle")
        else:
            s=(a+b+c)/2
            print("area = {:.2f}; perimeter = {:.2f}".format((s*(s-a)*(s-b)*(s-c))**0.5,a+b+c))

        2-13 分段計算居民水費 (10 分)

        題目

        為鼓勵居民節(jié)約用水,自來水公司采取按用水量階梯式計價的辦法,居民應交水費_y_(元)與月用水量_x_(噸)相關(guān):當_x_不超過15噸時,y=4_x_/3;超過后,y=2.5_x_?17.5。請編寫程序?qū)崿F(xiàn)水費的計算。

        輸入格式:

        ?

        輸入在一行中給出非負實數(shù)x。

        輸出格式:

        ?

        在一行輸出應交的水費,精確到小數(shù)點后2位。

        輸入樣例1:

        ?

        12

        輸出樣例1:

        ?

        16.00

        輸入樣例2:

        ?

        16

        輸出樣例2:

        ?

        22.50

        解答

        m=float(input())
        if(m<=15):
            print("{:.2f}".format((4*m)/3))
        else:
            print("{:.2f}".format(2.5*m-17.5))

        2-14 求整數(shù)段和 (15 分)

        題目

        給定兩個整數(shù)_A_和_B_,輸出從_A_到_B_的所有整數(shù)以及這些數(shù)的和。

        輸入格式:

        ?

        輸入在一行中給出2個整數(shù)A和B,其中?100≤A≤B≤100,其間以空格分隔。

        輸出格式:

        ?

        首先順序輸出從A到B的所有整數(shù),每5個數(shù)字占一行,每個數(shù)字占5個字符寬度,向右對齊。最后在一行中按Sum = X的格式輸出全部數(shù)字的和X。

        輸入樣例:

        ?

        -3 8

        輸出樣例:

        ?

        -3   -2   -1    0    1

        2    3    4    5    6

        7    8 Sum = 30

        解答

        a,b=map(int,input().split())
        sum=0
        count=0
        for i in range(a,b+1):
            print("{:>5d}".format(i),end="")
            sum+=i
            count=count+1
            if(count==5):
                print("\n",end="")
                count=0
            elif(i==b):
                print("\n",end="")
        print("Sum = {:d}".format(sum))

        結(jié)語

        希望對您有所幫助,如有錯誤歡迎小伙伴指正~

        我是 海轟?(?ˊ?ˋ)?

        如果您覺得寫得可以的話,請點個贊吧

        謝謝支持??

        寫留言

        瀏覽 114
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            成人无码片免费178www 久久开心激情网 | 大色综合网 | 操天天操| 91香蕉视频在线播放 | bl高肉喷汁彩漫肉 | 97久久久久久久久久久久 | 天堂A片 二本道一区二区三区免费视频 | 操女生逼网站 | 性爱AV免费观看 | 999久久久 |