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

2024-05-07 06:52

本文主要是介绍武汉理工大学python123实验——流程控制结构,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

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

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

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


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 = 0for i in range(a+1):if i*2+(a-i)*4==b:print(f'有{i}只鸡,{a-i}只兔')flag=1if flag==0:print('Data Error!')def amount_of_goods():"""一些物品,不知道有多少个,3个3个数的话,还多出2个;5个5个数则多出3个;7个7个数也会多出2个。输入一个正整数,从小到大依次输出所有不超过输入数字且满足条件的物品数量,有多个答案时每行输出一个。例如输入:200输出:23128"""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 = 1b = 1sa = 0sb = 0sum = 0while True:t = nn = n - asa+=an = n - bsb+=bsum+=1if n==0:print(sum)print(sb,sa)breakelif(n<0):print(sum)sa-=asb-=bn = n+a+bsa+=n*(a/(a+b))sb+=n*(b/(a+b))print(f'{sb:.1f}',f'{sa:.1f}')breaka = a*2b = b/2def libai_buy_wine():"""大诗人李白,提着酒壶,从家里出来,酒壶中有酒若干。他边走边唱:无事街上走,提壶去买酒,遇店加一倍,见花喝一斗,五遇店和花,喝光壶中酒,计算并输出壶中原有酒几斗?"""a = 0for i in range(5):a+=1a/=2print(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

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

n = int(input())
a = 1.5
ss=1
for i in range(n):ss/=10b = 2.4def func(x):return x**5-15*x**4+85*x**3-225*x**2+274*x-121while(1):mid = (a+b)/2tp = func(mid)if tp>0:a=midelif tp<0:b=midif tp==0:print(f'{mid:.6f}')break####################################if abs(tp)<10**(-n):print(f'{mid:.6f}')break

这篇关于武汉理工大学python123实验——流程控制结构的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/966630

相关文章

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

nodejs打包作为公共包使用的完整流程

《nodejs打包作为公共包使用的完整流程》在Node.js项目中,打包和部署是发布应用的关键步骤,:本文主要介绍nodejs打包作为公共包使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言一、前置准备二、创建与编码三、一键构建四、本地“白嫖”测试(可选)五、发布公共包六、常见踩坑提醒

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

一个Java的main方法在JVM中的执行流程示例详解

《一个Java的main方法在JVM中的执行流程示例详解》main方法是Java程序的入口点,程序从这里开始执行,:本文主要介绍一个Java的main方法在JVM中执行流程的相关资料,文中通过代码... 目录第一阶段:加载 (Loading)第二阶段:链接 (Linking)第三阶段:初始化 (Initia

Git打标签从本地创建到远端推送的详细流程

《Git打标签从本地创建到远端推送的详细流程》在软件开发中,Git标签(Tag)是为发布版本、标记里程碑量身定制的“快照锚点”,它能永久记录项目历史中的关键节点,然而,仅创建本地标签往往不够,如何将其... 目录一、标签的两种“形态”二、本地创建与查看1. 打附注标http://www.chinasem.cn

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service