1.1

编写程序计算购买图书的总金额:用户输入图书的定价和购买图书的数量,并分别保存到一个 float 和一个 int 类型的变量中,然后根据用户输入的定价和购买图书的数量,计算购书的总金额并输出。其中,图书销售策略为:正常情况下按 9 折出售,购书数量超过 10本打 8.5 折,超过 100 本打 8 折

num = int(input('请输入购买书的数量:'))  # 书的数量
price = float(input('请输入购买书的价格:'))  # 书的价格
if 10 < num <= 100:print((num * price) * 0.85)
elif num > 100:print((num * price) * 0.8)
else:print((num * price) * 0.9)

1.2
动物园想在新建一个三角形的人工湖,一是为了养鱼美观,二是可以循环水资源。从键盘输入三条边 A、B、C 的边长,请编程判断能否组成一个三角形。(可以组成三角形的要素,两边之和大于第三边,两边之差小于第三边)
要求:如果三条边长 A、B、C 能组成三角形的话,输出 YES,否则 NO。

a = float(input('请输入A边:'))
b = float(input('请输入B边:'))
c = float(input('请输入C边:'))
if a + b > c and a + c > b and b + c > a:print('YES')
else:print('NO')

1.3
商店A 准备在今年夏天开始出售西瓜,西瓜的售价如下,20 斤以上的每斤 0.85 元;重于 15 斤轻于等于 20 斤的,每斤 0.90 元;重于 10 斤轻于等于 15 斤的,每斤 0.95 元;重于 5 斤轻于等于 10 斤的,每斤 1.00 元;轻于或等于 5 斤的,每斤 1.05 元。现在为了知道商店是否会盈利要求 A 公司帮忙设计一个输入西瓜的重量和顾客所付钱数,输出应付货款和应找钱数的程序。

weight = float(input('请输入西瓜的重量:'))
price = float(input('顾客所付钱数:'))
repay = 0
money = 0
if weight > 20:money = weight * 0.85
elif 15 < weight <= 20:money = weight * 0.9
elif 10 < weight <= 15:money = weight * 0.95
elif 5 < weight <= 10:money = weight * 1
else:money = weight * 1.5
repay = price - money
if repay < 0:print(f'商品的价格是{money}元')print(f'你所支付的钱不够,你还需支付{-repay}元')
elif repay == 0:print('你所支付的钱刚刚好')
else:print(f'商品的价格是{money}元')print(f'找零{repay}元')

1.4
对学生成绩进行统计和数据分析可以发现学生对知识的掌握情况,以便教师根据分析的结果调整教学内容和重难点,现在需要完成以下任务来实现成绩分析系统。
输入一个百分制的成绩 t,将其转换成对应的等级然后输出,具体转换规则如下:90~100 为 A
80~89 为 B
70~79 为 C
60~69 为 D
0~59 为 E
要求:如果输入数据不在 0~100 范围内,请输出一行错误提示:“数据超出范围!”

grade = float(input('请输入成绩:'))
if 90 <= grade < 100:print('A')
elif 80 <= grade < 90:print('B')
elif 70 <= grade < 80:print('C')
elif 60 <= grade < 70:print('D')
else:print('E')

1.5
从键盘接收一个十一位的数字,判断其是否为尾号 5 连(最后5个数一样)的手机号。规则:第 1 位是 1,
第二位可以是数字 358 其中之一,后面 4 位任意数字,最后 5 位为任意相同的数字。例如:
18601088888、13912366666 则满足。
注意:不满足的输出“false”,满足要求的输出“true”。

phone = int(input('请输入手机号码:'))
one = phone // 10000000000  # 第一位
two = phone // 1000000000 % 10  # 第二位
last_five = [phone % 10, phone % 100 // 10, phone % 1000 // 100, phone % 10000 // 1000,phone % 100000 // 10000]  # 最后五位
if one == 1:  # 第 1 位是 1if two == 3 or two == 5 or two == 8:  # 第二位可以是数字 358 其中之一if sum(last_five) == last_five[0] * 5:  # 最后5位为任意相同的数字print("true")else:print("false")else:print("false")
else:print("false")

1.6
按顺序输入正方形的边长(a),长方形的长(l)和宽(d),以及圆的半径(r),计算并比较它们哪个图形面积更大,输出面积最大的图形。
例如:输入 1 3 4 1,输出:长方形

a, l, d, r = (input('按顺序输入正方形的边长(a),长方形的长(l)和宽(d),以及圆的半径(r):')).split(' ')
a = float(a)
l = float(l)
d = float(d)
r = float(r)
area = [a * a, l * d, r ** 2 * 3.14]
graphics = ['正方形', '长方形', '圆形']
print(graphics[area.index(max(area))])

1.7
整除判断游戏能显著提高小朋友的逻辑思维能力,问题要求如下:
•能同时被 3、5、7 整除
•能同时被 3、5 整除
•能同时被 3、7 整除
•能同时被 5、7 整除
•只能被 3、5、7 中的一个整除
•不能被 3、5、7 任一个整除
输入一个整数,输出满足对应条件的结果。要求:使用分支结构语句实现。

data = int(input('请输入一个整数:'))
if data % 3 == 0 and data % 5 == 0 and data % 7 == 0:print('能同时被 3、5、7 整除')
elif data % 3 == 0 and data % 5 == 0:print('能同时被 3、5 整除')
elif data % 3 == 0 and data % 7 == 0:print('能同时被 3、7 整除')
elif data % 5 == 0 and data % 7 == 0:print('能同时被 5、7 整除')
elif data % 5 == 0 or data % 7 == 0 or data % 3 == 0:print('只能被 3、5、7 中的一个整除')
else:print('不能被 3、5、7 任一个整除')

1.8
判断一个整数是否为“水仙花数”。所谓“水仙花数”是指一个三位的整数,其每个单独数字的立方和等于该数本身。例如:153 是一个“水仙花数”, 例如 153=13+53+3**3。
如果是水仙花数就输出YES,否则就输出No

data = int(input('请输入一个三位的整数:'))
if data == (data // 100) ** 3 + (data // 10 % 10) ** 3 + (data % 10) ** 3:print('YES')
else:print('NO')

循环 (包含for while 列表 字典知识)

1.1
从键盘接受一个正整数,列出该数字的中文表示格式,例如:键盘输入 123,打印出一二三;键盘输入 3103,打印出三一零三.(考验循环和列表的索引使用

data = int(input('请输入一个正整数:'))
cn_num = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九']
print_answer = []
while data:print_answer.append(cn_num[data % 10])data //= 10
for i in range(len(print_answer) - 1, -1, -1):print(print_answer[i], end='')

1.2
门票的序列号必定是系统里总序列的子序列,请你核对门票的真实性。
从键盘接收两个字符串a 和b,请你判断字符串a 是否包含字符串b,是的话输出“Yes”,否则输出“No”。有多组测试用例,每个测试用例占一行,两个字符串之间用空格隔开。
例如:输入JavaStudy Java 则输出Yes Student School 则输出 No
注意 :判断后者是否存在与前者里面 请用循环完成

a, b = input('按顺序输出字符串a,b:').split(' ')
for i in range(len(a) - len(b) + 1):if b == a[i:i + len(b)]:print('YES')break
else:print('NO')

1.3 中国结
公司现在需要打印中国结的主结(位于中间,最大的那一个结),为了打印出漂亮新颖的主结,于是设计打印主结的长度满足可以被 7 整除这个条件。现在公司需要统计某个范围内
能被 7 整除的整数的个数,以及这些能被 7 整除的数的和。
从键盘上输入一个整数 N,输出 1~N 之间能被 7 整除的整数的数,以及这些能被 7 整除的数的和

sum_seven = 0
data = int(input('请输入一个正整数N:'))
for i in range(1, data):if i % 7 == 0:sum_seven += iprint(i, end=' ')
print(f'\n被 7 整除的数的和:{sum_seven}')

1.4 项列求和
有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13 … 求出这个数列的前 20 项之和。要求:利用循环计算该数列的和。注意分子分母的变化规律。
注意:
a1=2, b1=1, c1=a1/b1; a2=a1+b1, b2=a1, c2=a2/b2; a3=a2+b2, b3=a2, c3=a3/b3;

s = c1+c2+…+c20;
s 即为分数序列:2/1,3/2,5/3,8/5,13/8,21/13 … 的前 20 项之和。


num_mom = 2  # 分母
num_sun = 1  # 分子
num_sum = 0  # 序列之和
temp = 0  # 替换值
for i in range(20):num_sum += num_sun / num_momtemp = num_momnum_mom = num_sunnum_sun = num_sun + temp
print(num_sum)

1.5
一个球从 100 米高度自由落下,每次落地后反弹回原高度的一半,再落下,再反弹。求它在第十次落地时,球共经过多少米? 第十次反弹多高?

sum_h = 0
h = 100
for i in range(10):sum_h += h#相加下落的高度h = h / 2sum_h += h#相加反弹的高度
print(f'球经过{sum_h-h}米')
print(f'第十次反弹{h}米高')

1.6
求奇数、
编写程序实现:从键盘输入正整数 s,从低位开始取出 s 中的奇数位上的数,依次构成一个新数 t,高位仍放在高位,低位仍放在低位,最后在屏幕上输出 t。例如,当 s 中的数为 7654321 时,t 中的数为 7531。

num = int(input('输入一个正整数:'))
i = 1  # 循环次数判断奇、偶
remainder = 0  # 余数
t = 0
mul = 1  # 乘数
if num / 10 == 0:t = num % 10
else:while num:if i % 2 != 0:t += num % 10 * mulmul = mul * 10num = num // 10i += 1
print(f't的值是{t}')

1.7
在一个停车场内,汽车、摩托车共停了 48 辆,其中每辆汽车有 4 个轮子,每辆摩托车
有 3 个轮子,这些车共有 172 个轮子,编程输出停车场内有汽车和摩托车的数量。

i = 0  # 汽车数量
for i in range(1, 49):if i * 4 + (48 - i) * 3==172:print(f"汽车数量是:{i},摩托车数量是:{48-i}")

1.8
小明今天参加了“校园歌手大赛”,评委的打分规则是去掉一个最低分和一个最高分后算出剩下分数的平均分,你能帮助小明快速的算出平均分吗? (评委数量必须大于 2)
输入说明:首先输入一个整数 n,代表评委人数,然后输入 n 个数。请按照题目的计算规则计算出平均分然后输出。
例如输入: 6
100 90 90 80 85 95
按照题目注意计算平均分并输出: 90.0

在这里插入代码片n = int(input('输入评委人数:'))
point = input('输入分数:').split(' ')
point = list(map(int, point))  # 将列表值转化为整形
point.remove(max(point))
point.remove(min(point))
print(f'平均分为:{sum(point) / len(point)}')

1.9九九乘法表、
选择乘法口诀助记功能,输出阶梯形式的 9*9 乘法口诀表

for i in range(1, 10):for j in range(1, i+1):print(f'{i}X{j}={i * j}', end=' ')print()

1.10
输入一个字符串统计每个字符在字符串中出现的次数。

char = input('请输入一个字符串:')
data = []
count = []
for i in char:if i in data:count[data.index(i)] += 1else:data.append(i)count.append(1)
for i in range(len(data)):print(f'{data[i]}:{count[i]}次')

python-编程训练题相关推荐

  1. Python编程大题

    Python编程大题 文章目录 Python编程大题 前言 一.语法基础 二.函数 三.面向对象编程 四.序列类型.集合和字典 五.文件操作与异常 六.数据库操作 七. 数据可视化 总结 前言 Pyt ...

  2. python编程狮题库答案_‎Python编程狮-零基础学Python dans l’App Store

    Python编程狮是W3Cschool编程狮旗下专门为零基础Python编程爱好者打造的一款入门工具App,致力于帮助初学者入门,轻松迈入编程世界.学Python,从这里开始! [零基础也能学]初学者 ...

  3. python 编程刷题_一起刷题吧 | 100+Python编程题带你快速上手(附答案)

    来源:Python大本营 本文约1000字,建议阅读5分钟. 100+编程练习帮大家轻松学习Python,春节也要抓紧学习哟~ 春节马上就要到了,怎么能让自己在假期里不掉队?今天,给大家准备一个项目: ...

  4. python编程基础题库_大学moocPython编程基础题库及答案

    参考答案如下 大学间接赞扬的方式可能受到意想不到的效果.() 编程郑玄对"一人贪戾"的"戾"的解释为(),形容在欲望的追寻中出现的人与人的矛盾状态. 郑谷有&l ...

  5. Python 编程训练2:二维向量

    目标 定义一个 Python 类名为 V2,用于表示二维向量,支持下列向量运算: 由两个实数创建一个二维向量:如:v = V2(1.1, 2.2) 将一个向量转换为字符串形式(使用__str__方法) ...

  6. python函数编程训练题_Python文件与函数练习题

    有名为poetry.txt的文件,其内容如下,请删除第三行: """ 昔人已乘黄鹤去,此地空余黄鹤楼. 黄鹤一去不复返,白云千载空悠悠. 晴川历历汉阳树,芳草萋萋鹦鹉洲. ...

  7. Python 编程训练(3)

    iter()函数 python中迭代对象的生成. 示例:(条件求和) bonuses=[4, 2, 4, 5],n=3 输出: calcBonuses(bonuses, n) = 10bonuses= ...

  8. Python编程基础题(2-求一元二次方程的解Ⅱ)

    Description 求一元二次方程ax^2+bx+c=0的解.a,b,c为任意实数. Input 输入数据有一行,包括a b c的值. Output 按以下格式输出方程的根x1和x2.x1和x2之 ...

  9. python编程基础题答案_大学moocPython编程基础题目及答案

    情境领导理论中提到的成熟度包括()A.生理成熟度B.心理成熟度C.年龄成熟度D.工作成熟度E.技能成 要显示当前过程中的所有变量及对象的取值,可以利用 ______ 窗口.A.监视B.调用堆栈C.立即 ...

  10. python编程30题_python编程30个常用技巧

    1.冒泡排序 2.计算x的n次方的方法 3.计算aa + bb + c*c + -- 4.计算阶乘 n! 5.列出当前目录下的所有文件和目录名 6.把一个list中所有的字符串变成小写: 7.输出某个 ...

最新文章

  1. 经验 | 深度学习优化背后的数学基础
  2. RDKit | 计算化合物描述符
  3. iOS证书及ipa包重签名探究
  4. Effective stl---笔记
  5. [tarjan][树形dp] 洛谷 P2515 软件安装
  6. 【Linux】一步一步学Linux——rmdir命令(22)
  7. vuex commit 模块_Vuex详细介绍
  8. Zend Framework实例教程
  9. en 2014-12-31
  10. 谷歌搜索363搜索引擎入口_SEO谷歌搜索引擎优化到底有啥好?
  11. 中亿验钞机升级_最前线|火山小视频升级为抖音火山版,抗衡快手火力更足了吗?...
  12. Luogu4712「生物」能量流动
  13. android上的单片机编程软件下载,AVR单片机编程软件(AVR_fighter)
  14. App微信支付(Java)
  15. c++ 专题 2 面向对象:常量成员函数
  16. Vue项目使用SSR服务器渲染
  17. Android 模块化开发
  18. 魔方还原算法学习笔记
  19. 最全计算机网络期末考试试题及答案
  20. 关于谷歌JSV8与微软JSRT的性能比较

热门文章

  1. 解码快手新市井电商,新品牌流量多,大品牌政策好
  2. win10添加计算机语言,Win10添加语言包报错“0x800F0950”怎么办?
  3. 【问题】连接mysql报错errorCode 0, state 08S01
  4. 关于 网页 链接 分享朋友圈 更换title 文字方法
  5. [Webpy]在webpy中使用jinja2模板
  6. Windows 本地账户
  7. kotlin map和Json转换,Json解析
  8. PostgreSQL集群篇——PostgreSQL的配置文件解析
  9. 办公实用资源网站分享,每一款都能让你升职加薪
  10. html 样式大全,2017最新css样式大全