武汉理工大学python123实验——流程控制结构

1.百分制成绩转换五分制#1707

python 复制代码
n = int(input())

if n>=90:
    print('A')
elif n>=80:
    print('B')
elif n>=70:
    print('C')
elif n>=60:
    print('D')
else:
    print('E')

2.角古猜想#73963

python 复制代码
n = eval(input())
if n<=0:
    print('ERROR')
elif '.' in str(n):
    print('ERROR')
else:
    print(n,end=" ")
    sum = 0
    while True:
        if n==1:
            break
        if n%2==0:
            n = int(n/2)
            print(n,end=" ")
        else:
            n = n*3+1
            print(n,end=" ")
        sum+=1
    
    print(f'\n{sum}')
        

3.中国古代数学问题集锦#133159

python 复制代码
def type_judge(question):
    """接收一个字符串为参数,根据参数调用不同函数执行不同代码。
    这种写法不规范,但把输入、输出都放在一个函数中,方便管理。
    """
    if question == '鸡兔同笼':
        chicken_rabbit()  # 用户输入为'鸡兔同笼'调用此函数
    elif question == '物不知数':
        amount_of_goods()  # 用户输入为'物不知数'调用此函数
    elif question == '二鼠打洞':
        two_mice()  # 用户输入为'二鼠打洞'调用此函数
    elif question == '李白买酒':
        libai_buy_wine()  # 用户输入为'李白买酒'调用此函数
    elif question == '宝塔上的琉璃灯':
        lamp_on_pagoda()  # 用户输入为'宝塔上的琉璃灯'调用此函数
    else:
        print('输入错误')


def chicken_rabbit():
    """
    在同一行内输入用空格分隔的两个整数,代表头和脚的数量,计算并输出笼中各有多少只鸡和兔,
    如无解则输出"Data Error!",函数无返回值。
    输入:35 94
    输出:有23只鸡,12只兔
    输入:100 5
    输出:Data Error!
    """
    a,b = input().split()
    a = int(a)
    b = int(b)
    flag = 0
    for i in range(a+1):
        if i*2+(a-i)*4==b:
            print(f'有{i}只鸡,{a-i}只兔')
            flag=1
            
    if flag==0:
        print('Data Error!')
            


def amount_of_goods():
    """一些物品,不知道有多少个,3个3个数的话,还多出2个;5个5个数则多出3个;
    7个7个数也会多出2个。输入一个正整数,从小到大依次输出所有不超过输入数字
    且满足条件的物品数量,有多个答案时每行输出一个。
    例如输入:200
    输出:
    23
    128
    """
    a = int(input())
    for i in range(a+1):
        if i%3==2 and i%5==3 and i%7==2:
            print(i)


def two_mice():
    """有一堵十尺厚的墙,两只老鼠从两边向中间打洞。大老鼠第一天打洞一尺,小老鼠也是打洞一尺。
    大老鼠每天的打洞进度是前一天的一倍,小老鼠每天的进度是前一天的一半。计算并输出它们几天可以相逢,
    相逢时各打了多少尺。
    输入格式:输入1 个整数,代表墙的厚度,单位为尺
    输出格式:
    第一行输出1 个整数,表示相遇时所需的天数
    第二行输出2 个浮点数,分别为小鼠和大鼠打洞的距离,单位为尺,保留小数点后1 位数字。
    """
    n = int(input())
    a = 1
    b = 1
    sa = 0
    sb = 0
    sum = 0
    while True:
        t = n
        n = n - a
        sa+=a
       
        n = n - b
        sb+=b
        
        sum+=1
        if n==0:
            print(sum)
            print(sb,sa)
            break
        elif(n<0):
            print(sum)
            sa-=a
            sb-=b
            n = n+a+b
            sa+=n*(a/(a+b))
            sb+=n*(b/(a+b))
            print(f'{sb:.1f}',f'{sa:.1f}')
            break
        a = a*2
        b = b/2
        
        

def libai_buy_wine():
    """大诗人李白,提着酒壶,从家里出来,酒壶中有酒若干。他边走边唱:无事街上走,提壶去买酒,
    遇店加一倍,见花喝一斗,五遇店和花,喝光壶中酒,计算并输出壶中原有酒几斗?"""
    a = 0
    for i in range(5):
        a+=1
        a/=2
    print(a)
    


def lamp_on_pagoda():
    """有一座八层宝塔,每一层都有一些琉璃灯,每一层的灯数都是上一层的二倍,
    已知共有765 盏琉璃灯,计算并输出每层各有多少盏琉璃灯。
    输出为8行,从上往下数字依次增大。
    """
    ls = [1,2,4,8,16,32,64,128]
    a = 765/sum(ls)
    for i in range(8):
        print(f'第{i+1}层上有{int(a*ls[i])}只琉璃灯')


if __name__ == '__main__':
    choice = input()    # 接收用户输入的字符串
    type_judge(choice)  # 调用判断输入的函数决定执行哪个函数

4.计算函数曲线与x轴包围的面积 #2502

python 复制代码
a,b = input().split()
a=float(a)
b = float(b)
c = int(input())

import math
sum = 0
stp = abs(a-b)/c
nowi = a
for i in range(c):
    sum += abs(stp*(abs(math.sin(nowi))+abs(math.sin(nowi+stp)))/2)
    nowi+=stp
print(f'{sum:.2f}')

5.二分法求函数的零点 #37177

python 复制代码
n = int(input())
a = 1.5
ss=1
for i in range(n):
    ss/=10

b = 2.4

def func(x):
    return x**5-15*x**4+85*x**3-225*x**2+274*x-121
    
    
while(1):
    mid = (a+b)/2
    
    tp = func(mid)
    
    if tp>0:
        a=mid
    elif tp<0:
        b=mid
    if tp==0:
        print(f'{mid:.6f}')
        break
    
    ####################################
    if abs(tp)<10**(-n):
        print(f'{mid:.6f}')
        break
相关推荐
清水白石0087 分钟前
《深入 Python 上下文管理器:contextlib.contextmanager 与类实现方式的底层差异全景解析》
开发语言·python
程序员佳佳9 分钟前
GPT-4时代终结?GPT-5.2与Banana Pro实测数据公开,普通开发者如何接住这泼天富贵
开发语言·python·gpt·chatgpt·重构·api·midjourney
Blossom.11839 分钟前
多模态大模型LoRA微调实战:从零构建企业级图文检索系统
人工智能·python·深度学习·学习·react.js·django·transformer
小钻风33661 小时前
软件测试: 从入门到实践 (接口测试)
软件测试·python
小鸡吃米…1 小时前
带Python的人工智能——计算机视觉
人工智能·python·计算机视觉
玄同7652 小时前
Python 数据类型:LLM 语料与 API 参数的底层处理逻辑
开发语言·人工智能·python·自然语言处理·llm·nlp·知识图谱
databook2 小时前
数据分析师的“水晶球”:时间序列分析
python·数据挖掘·数据分析
技术路上的探险家3 小时前
vLLM常用启动参数的详细解释
python·大模型·qwen·vllm
WHJ2263 小时前
记录解决jupyter打开闪退
ide·python·jupyter
老歌老听老掉牙3 小时前
1V1砂轮轮廓的几何建模与可视化分析
python·sympy·砂轮