python 结构作业

news/2024/10/24 14:32:01/

基础练习

练习目标

if-else判断语句

while循环语句

01. 计算车费

题目描述

小红打车,起步价8元(3公里), 每公里收费 2 元,她打车行驶了 n 公里,计算车费

输入描述

输入一个公里数

输出描述

输出应付车费

示例

输入:

5

输出:

12

#输入
km=float(input("公里数:"))
if km<=3:print("车费为:")
else:print("车费为:%.2f" %(8+2*(km-3)))

02. 判定闰年

题目描述

一个年份如果能被4整除但不能被100整除,或者能被400整除,那么这个年份就是闰年

输入输出描述

输入一个年份

输出Yes表示该年份为闰年,No则表示不是闰年

示例1

输入:

2008

输出:

Yes

示例2

输入:

2002

输出:

No

#输入
year=int(input("输入年份:"))
if(year%4==0 and year%100!=0) or (year%400==0):print("Yes")
else:print("No")

03. 未来周几

题目描述

输入表示今天是一周内哪一天的数字(星期天是0,星期一是1,...,星期六是6)

并输入今天之后到未来某天的天数,然后输出该天是星期几

输入描述

分别输入两个数据,表示今日星期几的数字和未来某天的天数

输出描述

输出未来某天是星期几

示例1

输入:

1

3

输出:

星期四

示例2

输入:

0 31

输出:

星期三

#输入
today=int(input("今天星期几:"))
days=int(input("未来第几天:"))
x=days%7
#输出
print("今天星期"+str(x+today))

04. 方程求解

题目描述

如有一个2×2的线程方程组:

你可以使用克莱姆法则解该线性方程:

其中$ad-bc$为判别式,如果为零则输出无解

输入输出描述

输入a、b、c、d、e、f六个数据,数据之间用空格分隔

输出两行,第一行x的解,第二行y的解,保留一位小数

示例1

输入:

9.0 4.0 3.0 -5.0 -6.0 -21.0

输出:

-2.0

3.0

示例2

输入:

1.0 2.0 2.0 4.0 4.0 5.0

输出:

无解

#输入
#ax+by=e cx+dy=f
a,b,c,d,e,f=map(float,input("请依次输入a,b,c,d,e,f 6个数据:").split())
if (a*d-b*c==0):print("该方程无解")
else:print("x的解为:x=%.1f" %((e*d-b*f)/(a*d-b*c)))print("y的解为y=%.1f" %((a*f-e*c)/(a*d-b*c)))

05. 三角形周长

题目描述

输入三角形三边的长度,如果输入合法则计算周长并输出结果;否则输出非法

如果任意两边之和大于第三边则输入都是合法的

输入输出描述

输入三个数据表示三边,数据之间用空格分隔

输出三角形的周长,如果非法则输出非法

示例1

输入:

1 1 1

输出:

3

示例2

输入:

1 3 1

输出:

非法

#输入
a,b,c=map(float,input("请输入三角形的边长:").split())
if((a+b>c) and (a+c>b) and (b+c>a)):print("三角形三边的周长是:%.1f" %(a+b+c))
else:print("非法")

06. 图形构建

题目描述

输入一个整数n,按照下面的格式输出n行满足规律的数据

输入描述

输入一个整数n,表示输出n行数据

输出描述

输出满足规律的数字组成的图形(示例中的几种模式分别输出)

示例

模式A
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
模式B
1 2 3 4 5 6
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
模式C12 13 2 14 3 2 15 4 3 2 1
6 5 4 3 2 1
模式D
1 2 3 4 5 61 2 3 4 51 2 3 41 2 31 21
for i in range(1,7):for j in range(1,i+1):print(j,end="")print("\n")
​
#在 range() 函数中,如果只提供两个参数,第三个参数(步长)默认为1。
#为了代码的可读性,加一个-1
​
for i in range(7,0,-1):for j in range(1,i):print(j,end="")print()

07. 判断素数

题目描述

一个大于1的整数如果只能被正整数1和它本身整除,则它就是素数,例如2、3、5和7都是素数,而4、6、8、9则不是

输入描述

输入一个大于1的正整数

输出描述

输出Yes表示该数字是素数,否则输出No

示例1

输入:

9

输出:

No

示例2

输入:

11

输出:

Yes

a=int(input("输入一个大于1的数:"))
for i in range(2,a+1):if(a%i==0):break
if(a==i):print("Yes")
else:print("No")

最大公约数

题目描述

输入两个正整数,计算其最大公约数,例如4和2的最大公约数是2,16和24的最大公约数是8

输入描述

输入两个数字

输出描述

输出最大公约数

示例1

输入:

16 24

输出:

8

示例2

输入:

7 3

输出:

1

a,b=map(int,input("请输入两个正整数:").split())
if(a>b):x=b
else:x=a
for i in range(x,1,-1):if(a%i==0 and b%i==0):break
print(str(a)+"与"+str(b)+"的最大公约数为",i)

09. 计算π

题目描述

你可以使用下面的数列近似计算π

当i越大时,计算结果越近似于π

pi=0
for i in range(1,100):if(i%2==1):x=1else:x=-1pi+=1/(2*i-1)*x
print("Π值为:",4*pi)

10. 排列组合

题目描述

在数字范围[1,7]之间,任意选择两个不相同的数作为一个组合,输出每一组组合,并统计所有组合的个数

注:组合(a,b)与组合(b,a)算同一种组合,只记录一次

sum=0
for i in range(5,1,-1):sum+=i
print("一共有"+str(sum)+"可能")

拓展作业

w01.计算e

题目描述

你可以使用下面的数列近似计算e

当i越大时,计算结果越近似于e

#设x为每一项的分母,y为每一项
x=1
sum=0
sum=float(sum)
for i in range(1,100):x=x*isum+=1/x
print("e的值为",sum+1)

w02.组合

题目描述

有1、2、3、4这个四个数字,能组成多少个互不相同且无重复数字的三位数?分别又是多少?

#建立数组
digits=[1,2,3,4]
x=0
#应为 4*3*2 种可能
for i in range(1,5):for j in range(1,5):if(i!=j):for k in range(1,5):if((i!=k) and (j!=k)):x+=1print(100 * i + 10 * j + k)
print("如上所示,共有"+str(x)+"种可能")

w03.水仙花

题目描述

水仙花数,是一个三位数,且这个数的个位、十位和百位的立方和等于该数字本身,例如$153=1^3+5^3+3^3$

编写程序,输出所有的水仙花数

#设百 十 个 位分别为a b c,这个三位数为x
#i % 100 / 10 会得到一个浮点数  //得到的商向下取整
print("水仙花数有:")
for i in range(100,1000):a=i//100b=i%100//10c=i%100%10if(i==a**3+b**3+c**3):print(i)

w04.进制

题目描述

编写代码,实现十进制数据转换二进制、二进制转换十进制、十进制转换十六进制、十六进制转换十进制的代码实现

输入描述

输入一个原始数据

输出描述

输出一个转换后的数据

示例

输入一个数据(十进制): 3

输出(二进制):11

#输入一个十进制数x
#x=int(input("输入(十进制):"))
# #创建一个列表存储i
i_list=[]
while(x!=0):i=x%2#将i添加到空列表中i_list.append(str(i))x=x//2#将i_list中的项目反转输出
# # list.reverse()方法用于原地反转列表中的元素顺序,但是这个方法没有返回值(即返回None)
# i_list.reverse()
# #使输出数据之间没有间隔print(''.join(i_list))​
​
#十进制转16进制
#输入十进制数xx=int(input("输入一个十进制数:"))
#创建一个列表存储ii_list=[]while (x!=0):i=x%16i_list.append(str(i))x=x//16i_list.reverse()
#代码应该在循环中更新列表 i_list,而不是更新循环变量 j,因为循环变量 j 的更新不会影响到列表 i_list。
# 使用 enumerate 来获取每个元素的索引和值
for index,j in enumerate(i_list):if j=="10":i_list[index]="A"if j=="11":i_list[index]="B"if j=="12":i_list[index]="C"if j=="13":i_list[index]="D"if j=="14":i_list[index]="E"if j=="15":i_list[index]="F"print(''.join(i_list))
​
​
​
#2进制转10进制
#输入2进制xstr=input("输入一个字符串:")sum=0
# #range() 函数生成一个从字符串长度减1(即最后一个字符的索引)开始到0(包括0)的逆序列。步长设置为-1,表示索引是递减的。
#for index,i in enumerate(str):sum+=int(i)*(2**(len(str)-1-index))print("十进制数为:",sum)
​
​
​
#16进制转10进制
str=input("请输入一个16进制数:")
sum=0
str_list=list(str)
for index,i in enumerate(str_list):if(i=="A"):str_list[index]=10if(i=="B"):str_list[index]=11if(i=="C"):str_list[index]=12if(i=="D"):str_list[index]=13if(i=="E"):str_list[index]=14if(i=="F"):str_list[index]=15sum+=int(str_list[index])*(16**(len(str_list)-index-1))
print("10进制数为:",sum)
​


http://www.ppmy.cn/news/1541614.html

相关文章

使用gpt2-medium基座说明模型微调

预训练与微调的背景 预训练&#xff1a;在大规模数据集上训练模型&#xff0c;以捕捉通用的特征和模式。例如&#xff0c;GPT-2 模型在大量文本上进行训练&#xff0c;学习语言的基本结构和语法。微调&#xff1a;在特定领域或任务的数据上对预训练模型进行训练&#xff0c;以…

1024程序员节祝福

1024程序员节祝福 在每年的10月24日&#xff0c;我们迎来了属于程序员的节日——1024程序员节。这个特殊的日子&#xff0c;既是对广大程序员辛勤工作的致敬&#xff0c;也是对他们在科技创新和数字时代进步中做出贡献的认可。在这个值得庆祝的日子里&#xff0c;我想对所有程…

力扣每日一题3185. 构成整天的下标对数目 II

今天的题目没啥好说的&#xff0c;就是昨天的题目的进阶版&#xff0c;用昨天题解的最终版就可以直接过了 今天的就不写思路了&#xff0c;有需要就看昨天的就好了 力扣每日打卡挑战 3184. 构成整天的下标对数目 I class Solution { public:int countCompleteDayPairs(vecto…

WPF+Mvvm项目入门完整教程-基于SqlSugar的数据库实例(三)

目录 数据库实现创建数据库类库资源获取 在上一节中&#xff0c;我们实现了主页UI框架和基础菜单功能&#xff0c;本节主要实现数据库的类库创建、数据功能接口以及泛型方法实现。本例使用的数据库为 MySql数据库&#xff0c;ORM框架采用 SqlSugar 实现。 数据库实现 创建数据…

【计算机网络 - 基础问题】每日 3 题(四十九)

✍个人博客&#xff1a;https://blog.csdn.net/Newin2020?typeblog &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/fYaBd &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞…

百度开源语音识别强大工具PaddleSpeech从0到1快速上手:安装、部署、Debug与测试详尽指南

目录 Introduction 导言PaddleSpeech安装部署和测试环境要求&#xff1a;安装参考&#xff1a;安装整体过程如下&#xff1a;使用代码示例&#xff1a;Bug处理模型选择性能测试 参考资料其它资料下载 Introduction 导言 在当今快速发展的人工智能领域&#xff0c;语音识别技术…

JavaScript 在网页设计中的四大精彩案例:画布时钟、自动轮播图、表单验证与可拖动元素

在网页开发中&#xff0c;JavaScript 发挥着至关重要的作用&#xff0c;为网页带来丰富的交互性和动态效果&#xff0c;极大地提升了用户体验。本文将通过几个具体案例展示 JavaScript 的强大魅力。 一、美丽的画布时钟 这是一个使用 JavaScript 在网页上创建美丽画布时钟的案…

太空探索如何引领我们找到真正的命运?

为什么要进行太空探索呢&#xff1f;为什么我们人类要接过这一棒并奋力前行呢&#xff1f;这个问题的答案比太空探索给我们带来诸如果味饮料糖和智能手机等好处要深刻得多&#xff0c;甚至可能更加深远。 答案甚至比我们在其他国家占领月球部分区域以获取月球资源或我们有朝一…