python笔记3

35.给你两个正整数a和b(0<a<b<10000),请你判断是否存在两个整数,他们的和为a,乘积为b.若存在,输出Yes,否则输出No。

while True:
    a = input("a =")
    a = int(a)
    b = input("b =")
    b = int(b)
    flag = 0  #标识位
    if a < 0 or b < a or b > 10000:
        print("请重新输入!")
        continue
    for i in range(1,a):
        j = a - i
        if i * j == b:
            flag = 1
            break
    if flag == 1:
        print("Yes")
    else:
        print("No")
    break

36.输入一个不多于5位的整数,要求:(1)求出它们是几位数?(2)按逆序输出各位数字,比如123,应输出321

a1 = 0
a2 = 0
a3 = 0
a4 = 0
a5 = 0
while True:
    a = input("a =")
    a = int(a)
    if a > 10000 and a <= 0:
        print("请重新输入!")
        continue
    #假设a = 24567
    a5 = a // 10000
    a4 = a % 10000 // 100
    a3 = a % 1000 // 100
    a2 = a % 100 //10
    a1 = a % 10
    if a5 != 0:
       print("这是五位数。它的逆序为:",a1 * 10000 + a2 * 1000 + a3 * 100 + a4 * 10 + a5)
    elif a4 != 0:
        print("这是四位数。它的逆序为:",a1 * 1000 + a2 * 100 + a3 * 10 + a4)
    elif a3 != 0:
        print("这是三位数。它的逆序为:",a1 * 100 + a2 * 10 + a3)
    elif a2 != 0:
        print("这是二位数。它的逆序为:",a1 * 10 + a2)
    else:
        print("这是一位数。它的逆序为:",a1)
    break

37.输入三角形的三条边,求三角形的面积。(S=/`p(p - a)(p - b)(p - c),其中p = (a + b + c)/2, a, b, c是三角形的三条边)#例:输入a,b,c三个参数,求/`b^2 - 4ac的值,判断求一元二次方程的解,保留小数点后两位

import math

a = input("a =")

a = float(a)

b = input("b =")

b = float(b)

c = input("c =")

c = float(c)

k = b * b - 4 * a * c

if k >= 0:

        m = math.sqrt(k)

        x1 = (-b + m)/(2 * a)

        x2 = (-b - m)/(2 * a)

        print("x1 = %0.2f,x2 = %0.2f"%(x1,x2)) #占位符

else:

        print("无解")

import math
a = input("a =")
a = float(a)
b = input("b =")
b = float(b)
c = input("c =")
c = float(c)
p = (a + b + c)/2
s = p * (p - a) * (p - b) * (p - c)
m = math.sqrt(s)
print("面积为:",m)

#a = 4
#b = 5
#c = 6
#面积为:9.92156716492215

38..输入三角形的三条边,求三角形的面积。(S=/`p(p - a)(p - b)(p - c),其中p = (a + b + c)/2, a, b, c是三角形的三条边)#例:输入a,b,c三个参数,求/`b^2 - 4ac的值,判断求一元二次方程的解,保留小数点后两位

import math
while True:
    a = input("a =")
    a = float(a)
    b = input("b =")
    b = float(b)
    c = input("c =")
    c = float(c)
    if a + b < c or a + c < b or b + c < a:
        print("请重新输入!")
        continue
    p = (a + b + c)/ 2
    s = math.sqrt(p * (p - a) * (p - b) * (p - c))
    print("三角形的面积是%0.2f"% s)
    break

39.例:在三角形中三条边a,b,c,则

#cosA = (b * b + c * c - a * a)/(2 * b * c).输入三角形的三条边a,b,c,求夹角A

#课堂练习:输入直角三角形的直角边a,b,求该直角三角形的斜边,并求出两个夹角的度数。(显示小数点后两位)

import math

a = input("a =")

a = float(a)

b = input("b =")

b = float(b)

c = input("c =")

c = float(c)

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

        cosA = (b * b + c * c - a * a) / (2 * b * c)

        A = math.acos(cosA)

        print("%0.2f度"%math.degrees(A))

else:

        print("输入错误!")

     

import math

a = input("a =")

a = float(a)

b = input("b =")

b = float(b)

c = math.sqrt(a * a + b * b)

print("三角形的斜边%0.2f"%c)

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

        cosA = (b * b + c * c - a * a) / (2 * b * c)

        A = math.acos(cosA)

        cosB = (a * a + c * c - b * b) / (2 * a * c)

        A = math.acos(cosB)

        print("角A = %0.2f度"%math.degrees(A))

        print("角B = %0.2f度"%math.degrees(B))

else:

        print("输入错误!")


#a = 3
#b = 4
#三角形的斜边5.00
#角A = 36.87度
#角B = 53.13度

 40.#课堂练习:输入直角三角形的直角边a,b,求该直角三角形的斜边,并求出两个夹角的度数。(显示小数点后两位)#假设斜边是c,sinA = a/c,A = math.asin(sinA)

import math

a = input("a =")

a = float(a)

b = input("b =")

b = float(b)

c = math.sqrt(a * a + b * b)

print("三角形的斜边%0.2f"%c)

sinA = a/c

A =math.asin(sinA)

A = math.degrees(A)

B = 90 - A

print("角度分别是:%0.2f度和%0.2f度"%(A,B))

import math

a = input("a =")

a = float(a)

b = input("b =")

b = float(b)

c = math.sqrt(a * a + b * b)

print("三角形的斜边%0.2f"%c)

sinA = a/c

A =math.asin(sinA)

A = math.degrees(A)

B = 90 - A

print("角度分别是:%0.2f度和%0.2f度"%(A,B))

41.#丢色子。当出现6时,结束,显示丢的次数。

import random

while True:

        k = random.choice(range(1,7))

        print(k)

        input()

import random

n = 0

while True:

        k = random.choice(range(1,7))

        print(k)

        n = n + 1
    
        if k == 6:
        
            break

print("需要",n,"次")

#2
#3
#4
#6
#需要:4 次

42.猜数游戏,随机产生一个1-100之间的整数,请猜出其大小,看几次猜对。

import random

i = 0

k = random.choice(range(1,101))

while True:

        n = input("请猜数:")

        n = int(n)

        i = i + 1

        if n == k:

                pirnt("你猜对了!一共猜了",i,"次")

                break

        elif n < k:

                print("你猜小了!再试一次")

        else:

                print("你猜大了!再试一次")

import random

i = 0

k = random.choice(range(1,101))

while True:

        n = input("请猜数:")

        n = int(n)

        i = i + 1

        if n == k:

                pirnt("你猜对了!一共猜了",i,"次")

                break

        elif n < k:

                print("你猜小了!再试一次")

        else:

                print("你猜大了!再试一次")

43.随机产生10道10以内的整数的加减题,一道题10分,自动统计学生的分数。

import random

r = 0

for i in range(10):

        k = random.choice(["+","-"])

        a = random.choice(range(1,10))

        b = random.choice(range(1,10))

        print(a,k,b "=", end = "")

        c = input()

        c = int(c)

        if k == "+" and a + b == c:

                r = r + 1

        elif k == "-" and a - b == c:

                r = r + 1

print("你的分数是:",r * 10) 

import random

r = 0

for i in range(10):

        k = random.choice(["+","-"])

        a = random.choice(range(1,10))

        b = random.choice(range(1,10))

        print(a,k,b "=", end = "")

        c = input()

        c = int(c)

        if k == "+" and a + b == c:

                r = r + 1

        elif k == "-" and a - b == c:

                r = r + 1

print("你的分数是:",r * 10) 

44.随机生成三个1-100之间的整数,判断是否能构成三角形?如果可以,则计算出该三角形的面积。(精确到小数点后两位)

import math
import random
a = random.choice(range(1,100))
b = random.choice(range(1,100))
c = random.choice(range(1,100))
if a + b > c and a + c > b and b + c > a:
    is_triangle = True
else:
    is_triangle = False
if is_triangle:
    print("可以构成三角形")
    p = (a + b + c)/2
    s = p * (p - a) * (p - b) * (p - c)
    m = math.sqrt(s)
    print("三角形的面积是",m)
else:
    print("不能构成三角形")

#可以构成三角形
#三角形的面积是:2174.838140529083


(可能我写错了)

45.模拟丢100次色子,统计每个数字出现的概率,比如:100次中“6”出现了15次,则概率为15%,以此类推。

import random
n = 0
for i in range(100)
    a = random.choice(range(1,7))
    if a == 6:
        n = n + 1
    s = n / 100 * 100
print("一共出现",n,"次数字6")
print("概率为:",s,"%")


#一共出现18次数字6
#概率为:18.0%

46.定义函数fun1(x),当x >= 0时,输出x的平方根,否则输出“无解”。#例:定义函数fun1(x),当x >= 0时,输出x的平方#实参,形参

import math

def fun1(x):

        if x >= 0:

                print(x * x)

fun1(3)

import math

def fun1(x):

    if x >= 0:
                
       a = math.sqrt(x)

       print(a)

    else:
       print("无解")
x = int(input("x = "))
fun1(x)

#x = 25
#5.0

47.定义函数fun3(a):输入整数a,输出1,2,3,...,a;  #例:定义函数disp(a,b),输入a,b两个整数,输出a,a+1,a+2,...b;#比如:a = 5, b = 10,则输出:5,6,7,8,9,10

def disp(a,b):

        for i  in range(a,b +1):

                print(i,end = ",")

a = int(input("a ="))

b = int(input("b ="))

disp(a,b)

def fun3(a):

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

                print(i,end = ",")

a = int(input("a ="))

fun3(a)

#a = 10
#1,2,3,4,5,6,7,8,9,10

48.练习:定义函数fun4(),显示出从1到100

def sayHello():

        print("Hello,How are you?")

sayHello()

def fun4():
    for i in range(1,101):
        print(i)
fun4()

#1
#2
...
#99
#100

49.例:构建函数fun(a,b,c):输入整数阿,吧,从,返回b^2 - 4 * a * c;#例:定义函数fun(a,b),输入整数a,b,返回a + b 的值

def fun(a,b):

        c = a + b

        return c

a = int(input("a ="))

b = int(input("b ="))

k = fun(a,b)

print("a + b =",k)

def fun(a,b,c):
    d = b * b - 4 * a * c
    return d
a = int(input("a ="))
b = int(input("b ="))
c = int(input("c ="))
f = fun(a,b,c)
print(" b * b - 4 * a * c =",f)

#a = 4
#b = 10
#c = 5
#b * b - 4 * a * c = 20

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值