Python練習題一

2021-09-25 14:52:08 字數 3871 閱讀 4658

1.將華氏溫度轉換為攝氏溫度,轉換公式:f =1.8c + 32

f=input()

if f[-1] in ['f','f']:

c=(float(f[0:-1])-32)/1.8

print("%.2fc"%c)

else:

print("輸入錯誤")

2.輸入半徑計算圓的周長和面積

import math

r=input()

r1=float(r)

if r1>=0:

c=2*math.pi*r1

s=math.pi*r1**2

print("%.2f"%c)

print("%.2f"%s)

else:

print("輸入錯誤")

3.輸入年份判斷是不是閏年

import calendar

year=int(input())

year1=calendar.isleap(year)

if year1==true:

print("%d年是閏年"%year)

else:

print("%d年是平年"%year)

4.英製單位英吋和公制單位厘公尺互換,已知:1英吋=2.54厘公尺

a=float(input())

b=input()

if b in ['in','英吋']:

print("%.3f英吋=%.3f厘公尺"%(a,a*2.54))

elif b in ['cm','厘公尺']:

print("%.3f厘公尺=%.3f英吋"%(a,a/2.54))

else:

print("輸入有誤")

5.現有乙個骰子,要求扔出骰子後,輸出骰子的點數(骰子每面朝上的概率均等)

import random

a=random.randint(1,6)

print("%d點"%a)

6.輸入百分制成績的分數,轉其轉換為等級制成績並輸出,90分以上–> a,80分~89分–> b,70分~79分–> c,60分~69分–> d,60分以下–> e

score=float(input())

if score>=90:

grade='a'

elif score>=80:

grade='b'

elif score>=70:

grade='c'

elif score>=60:

grade='d'

else:

grade='e'

print(grade)

import math

a=float(input())

b=float(input())

c=float(input())

if (a+b>c) and (a+c>b) and (b+c>a):

ci=a+b+c

p=(a+b+c)/2

s=math.sqrt(p*(p-a)*(p-b)*(p-c))

print("周長為%.3f"%ci)

print("面積為%.3f"%s)

else:

print("不能構成三角形")

8.輸入乙個數判斷是不是素數

import math

a=int(input())

b=int(math.sqrt(a))+1

c=true

for i in range(2,b):

if a%i==0:

c=false

break

if (c==true) and (a!=1):

print("%d是素數"%a)

else:

print("%d不是素數"%a)

9.輸入兩個正整數,計算最大公約數和最小公倍數

a=int(input())

b=int(input())

a1=a

b1=b

while true:

r=a%b

if r==0:

print("最大公約數為%d"%b)

print("最小公倍數為%d"%(a1*b1/b))

break

else:

a=bb=r

10.乙個三位的十進位制數字 n,如果它的百位數、十位數和個位數的立方和,恰好等於這個數字本身,那麼,這個數字 n 就是水仙花數,編寫程式,求出所有三位水仙花數

for i in range(1,10):

for j in range(0,10):

for k in range(0,10):

if i**3+j**3+k**3==i*100+j*10+k:

print(i*100+j*10+k)

11.所謂完美數,是指這樣的乙個數,它等於其真因子(不包括它本身)的和,例如:6=1+2+3;28=1+2+4+7+14,編寫程式,找出1000以內的完美數

import math

for i in range(2,1000):

a=0for j in range(1,int(math.sqrt(i))+1):

if i%j==0:

a=a+j

b=i/j

if b!=i and b!=j:

a=a+b

if a==i:

print(i)

12.公雞乙個五塊錢,母雞乙個三塊錢,小雞三個一塊錢,現在要用一百塊錢買一百隻雞,問公雞、母雞、小雞各多少只?

for i in range(0,20):

for j in range(0,33):

k=100-i-j

if i*5+j*3+k/3==100:

print("公雞、母雞、小雞各%d、%d、%d只"%(i,j,k))

13.乙個斐波那契數列,其起始兩項為0和1,此後的每一項為它的前兩項之和,編寫程式,構造斐波那契數列

a=0

b=1print(a," ",end='')

print(b," ",end='')

for _ in range(20):

c=a+b

a=bb=c

print(c," ",end='')

14.有兩個骰子,每個骰子每面朝上的概率是均等的,現在兩個人玩遊戲:如果第一次擲出的點數和為7或11,則a勝;如果第一次擲出的點數和為2、3、12,則b勝;若和為其他點數,則記錄第一次擲出的點數,然後繼續擲,直到點數和等於第一次擲出的點數和,此時 a 勝,若這個過程中,擲出的點數和為7,則b勝。編寫程式,輸出最後勝利的人

from random import randint

a1=randint(1,6)+randint(1,6)

print("a1為%d"%a1)

if a1==7 or a1==11:

print("勝利的為a")

elif a1==2 or a1==3 or a1==12:

print("勝利的為b")

else:

while true:

a2=randint(1,6)+randint(1,6)

print("a2為%d"%a2)

if a2==a1:

print("勝利的為a")

break

if a2==7:

print("勝利的為b")

break

python練習題(一)

字串拼接 使用者輸入兩個字串,將它們組合後輸出 str1 input wanghui str2 input los angeles print 世界這麼多,想去 看看。format str1,str2 整數序列求和 使用者輸入乙個正整數 n,計算從 1 到 n 包含 1和 n 相加之後的結果 n i...

Python練習題一

點讚,收藏 關注,理財 技術不迷路 什麼是bif?bif 就是 built in functions,內建函式。為了方便程式設計師快速編寫指令碼程式 指令碼就是要程式設計速度快快快!python 提供了非常豐富的內建函式,我們只需要直接呼叫即可,例如 print 的功能是 列印到螢幕 input 的...

python書中練習題 python練習題

1 定義乙個空列表,接收從鍵盤輸入的整數,把列表傳給乙個從大到小排序的函式,再輸出排序後的列表的值 listex b 0 a int input 請輸入列表長度 while b a num int input 請輸入字元 b 1 print listex sum 0 for i in range 0...