Python演習1

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 cm

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. 100点満点のスコアを入力し、評点ベースのスコアに変換して出力します。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)

7. 3つの入力辺の長さが三角形を形成できるかどうかを判断し、可能であれば、三角形の円周と面積を計算します(ヒント:辺の長さを持つ三角形の面積を計算する式はヘレンの式です)

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. 2つの正の整数を入力して、最大公約数と最小公倍数を計算します

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=b

        b=r

10. 3桁の10進数N(数百、数十、および1桁の3進数の合計が数値自体と完全に等しい場合)。この数Nは水仙の数であり、プログラムを記述してすべてを検索します。 3つの水仙の数

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=0

    for 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.オンドリが5ドル、鶏が3ドル、ひよこが3ドル今度は、100羽の鶏を100ドルで購入する必要があります。鶏、鶏、ひよこはいくつありますか。

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.最初の2つの項目が0と1であり、後続の各項目が最初の2つの項目の合計であるフィボナッチ数列フィボナッチ数列を構築するプログラムを作成する

a=0

b=1

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

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

for _ in range(20):

    c=a+b

    a=b

    b=c

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

14.サイコロが2つあり、それぞれの顔が上を向く確率は同じで、2人がゲームをプレイします。最初にロールしたポイントの合計が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
公開された48件の元の記事 いいね25 2453にアクセス

おすすめ

転載: blog.csdn.net/qq_43628959/article/details/97423594