demo19:

1.你可以通过询问5个问题来找出你朋友的生日在-一个月中的哪天。每个问题都在询问这一天是否在5个数字集中。

生日就是出现这个数字的集合的第- L 个数字的和,例如:如果生日是19,那它就会在setl. set2和set5中出现。这三个集合的第一个数字分别是1.2. 16。它们加起来的和就是19。

set1 = "1\t3\t5\t7\n" \"9\t11\t13\t15\n" \"17\t19\t21\t23\n" \"25\t27\t29\t31\n"
set2 = "2\t3\t6\t7\n" \"10\t11\t14\t15\n" \"18\t19\t22\t23\n" \"26\t27\t30\t31\n"
set3 = "4\t5\t6\t7\n" \"12\t13\t14\t15\n" \"20\t21\t22\t23\n" \"28\t29\t30\t31\n"
set4 = "8\t9\t10\t11\n" \"12\t13\t14\t15\n" \"24\t25\t26\t27\n" \"28\t29\t30\t31\n"
set5 = "16\t17\t18\t19\n" \"20\t21\t22\t23\n" \"24\t25\t26\t27\n" \"28\t29\t30\t31\n"
day = 0
print(set1)
choice = input("你的生日在不在这些数字中(1/2):")
if choice == 1 :day += 1
print(set2)
choice = input("你的生日在不在这些数字中(1/2):")
if choice == 1 :day += 2
print(set3)
choice = input("你的生日在不在这些数字中(1/2):")
if choice == 1 :day += 4
print(set4)
choice = input("你的生日在不在这些数字中(1/2):")
if choice == 1 :day += 8
print(set5)
choice = input("你的生日在不在这些数字中(1/2):")
if choice == 1 :day += 16
elif day == 0 :print("闹呢?????")
else :print("你的生日是%d号"%day)

demo20:

2.BMI是根据体重测量健康的方式。通过以千克为单位的体重除以以米为单位的身高的平方计算出BMI。下面是16 岁以上人群的BMI图表:
编写一个程序,提示用户输人以磅为单位的体重和以英寸为单位的身高,然后显示BMI值。注意: 1磅是0.453592 37千克而1英寸是0.0254米。程序清单4-6给出这个程序。

(height,weight) = eval(input("请输入身高体重: "))
height1 = height / 0.0254
weight1 = weight / 0.45359237
BMI = weight1 / (height1 ** 2)
if 30 <= BMI :print("您已经痴肥了哦!!")
elif 30 > BMI >= 25 :print("您已超重!")
elif 25 > BMI >= 18.5 :print("很标准,很棒!")
elif BMI < 18.5 :print("太轻了,长点儿肉吧!亲!")

demo21 :

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

year = float(input("请输入一个年份:  "))
if year % 4 == 0 and year % 100 != 0 :print("该年为闰年!!!")
elif year % 400 == 0 :print("该年为闰年!")
else :print("不是闰年")

demo22 :

4.假设你想开发- -个玩彩票的程序。程序随机产生一个两位数的数字,然后提示用户输人一个两位数的数字,并根据以下规则判定用户是否赢得奖金。
1 )如果用户输人的数字和随机产生的数字完全相同(包括顺序),则奖金为10000美元。
2)如果用户输人的数字和随机产生的数字相同(不包括顺序),则奖金为3000美元。
3)如果用户输人的数字和随机产生的数字有一-位数相同,则奖金为1000美元。

import random
num1 = random.randint(10,99)#定义电脑随机抽取10-99之间的数
num2 = int(input("请输入一个两位数: "))#参加该游戏的人进行猜数
player1 = num2 % 10#取数的个位
player2 = num2 // 10#取数的十位
computer1 = num1 % 10
computer2 = num1 // 10
print("我们的数字是:" + str(num1))
if player1 == computer1 and player2 == computer2:#猜的数,个位十位都相同print("恭喜你,猜的正确,获得10000美元奖金!!!")
elif player1 == computer2 and player2 ==computer1:#猜的数,个位等于十位print("恭喜你,两个数都猜对了,获得3000美元奖金!!!")
elif player1 == computer1 or player1 == computer2 or player2 == computer1 or player2 == computer2:#有一个数猜中print("恭喜你,猜对了一个数,获得1000美元奖金!!!")
else :#全没猜中print("谢谢参与!")

demo23 : 

5.(代数方面:解一元二次方程)例如: ax^2+ bx+c=0的平方根可以使用下面的公式获取。
b^2 - 4ac被称为二次方程的判别式。如果它为正,那么方程有两个实根。如果它为零,那么方程有一个根。如果它为负,那么方程没有实根。
编写程序,提示用户输人a、b和c的值,然后显示判别式的结果。如果判别式为正,则显示两个根。如果判别式为零,则显示一个根。否则,显示“The equation has no real roots"。

import math
( a , b , c ) = eval(input("请输入a,b,c的值:  "))#定义a,b,c的值
n = b ** 2 - 4 * a * c
if n > 0:x1 = ((-b) + math.sqrt(b ** 2 - 4 * a * c)) / (2 * a)#math.sqrt表示运用数学库中的算术平方根x2 = ((-b) - math.sqrt(b ** 2 - 4 * a * c)) / (2 * a)print("该方程有两个根")print("x1 = %0.2f   x2 = %0.2f" %(x1,x2))#%0.2f表示取小数点后2位
elif n == 0:x = ((-b) + math.sqrt(b ** 2 - 4 * a * c)) / (2 * a)print("该方程有相同的一个根")print("x1 = x2 = %0.2f" %x)
elif n < 0:print("该方程没有根")

demo24: 

6.(代数:解2x2线性方程)你可以使用克莱姆法则解下面的线性方程2x2系统:

编写程序,提示用户输人a、b、c、d、e和f,然后显示结果。如果ad-bc为零,呈现“Theequation has no solution"

(a,b,c,d,e,f) = eval(input("请输入a,b,c,d,e,f的值: "))
n = a * d - b * c
if n == 0:print("无解!")
else :x = (e * d - b * f) / (a * d - b * c)y = (a * f - e * c) / (a * d - b * c)print("结果:x = %0.2f  y = %0.2f"%(x,y))

demo25 : 

7.(找未来数据)编写程序提示用户输人表示今天是一-周内哪一- 天的数字(星期天是0,星期一是1,…星期六是6)。还要提示用户输人今天之后到未来某天的天数,然后显示未来这天是星期几。

today = int(input("今天星期几: "))
day = int(input("请输入经过了多少天: "))
day1 = (today + day) % 7
if 0 <= today <=6 :print("今天是星期%s过了%s天后是星期%s"%(today,day,day1))
else :print("别闹!!真皮啊")

demo26 :

8.(金融方面:比较价钱)假设你购买大米时发现它有两种包装。你会想编写-一个程序比较这两种包装的价钱。程序提示用户输人每种包装的重量和价钱,然后显示价钱更好的那种包装。

a1, a2 = eval(input("请输入第一种包装的重量和价格: ") )
b1, b2 = eval(input("请输入第二种包装的重量和价格: ") )
if (a2 / a1) > (b2 / b1) :print("第一种包装更好!!")
elif (a2 / a1) < (b2 / b1) :print("第二种包装更好!!!")
elif (a2 / a1) == (b2 / b1) :print("两种包装一样牛逼!!!")

demo27 :

9.(检测-一个数字)编写一个程序提示用户输人-一个整数,然后检测该数字是否能被5和6都整除、能被5或6整除还是只被它们中的-一个整除(但又不能被它们同时整除)。

a = int(input("请输入一个数: "))
if a % 5 ==0 and a % 6 ==0 :print("该数能同时被5和6整除")
elif a % 5 ==0 and a % 6 != 0 :print("该数能被5整除但不能被6整除")
elif a % 6 ==0 and a % 5 != 0 :print("该数能被6整除但不能被5整除")
elif a % 5 !=0 and a % 6 !=0 :print("该数5和6都不能整除")

demo28 :

10.(游戏:剪刀、石头、布)编写程序来玩流行的剪刀-石头一布的游戏。(剪刀可以剪纸,石头可以磕碰剪刀,而布可以包裹石头。)程序随机产生-一个数字0、1或2来表示剪刀、石头和布。程序提示用户输人数字0、1 或2然后显示一条消息表示用户或计算机是赢、输还是平局。

import random
c = random.randint(0,2)#电脑随机输入0,1,2中任意一个数
p = int(input("请输入一位数0(剪刀),1(石头),2(布): "))
if p > 2 or p < 0 :print("你是不是虎啊!!")
elif p - c == 0 :print("呦呵,巧了平局")
elif p - c == 1 or p - c == -2 :print("恭喜你,赢了!")
elif p - c ==2 or p - c == -1 :print("很遗憾,你输了!")

demo29 :

11.(金融问题:货币对换)编写一个程序提示用户输人美元和人民币之间的货币汇率。提示用户输人0表示将美元转换为人民币而1表示将人民币转换为美元。提示用户输人美元数或人民币数将它分别转换为人民币或美元。

num = float(input("请输入你要转换的数值:  "))
a = int(input("请输入转换方式0(美元转换为人民币),1(人民币转换为美元):  "))
num1 = num * 6.3634#进行人民币转换成美元
num2 = num / 6.3634#进行美元转换为人民币
if a != 0 and a != 1 :print("请输入1或0!!")
elif a == 0 :print("你能兑换%f的人民币: "%num1)
elif a == 1 :print("你能兑换%f的美元: "%num2)

demo30 :

12.(计算三角形的周长)编写程序读取三角形的三个边,如果输入都是合法的则计算它的周长。否则,显示这个输入是非法的。如果两边之和大于第三边则输入都是合法的。

side1,side2,side3 = eval(input("请输入三角形的三条边: "))
per = side3 + side2 + side1
if ((side1 + side2) > side3) and ((side1 + side3) > side2) and ((side2 + side3) > side1) :#判断三条边关系print("该三角形的周长为: %d"%per)
elif ((side1 + side2) < side3) or ((side1 + side3) < side2) or ((side2 + side3) < side1) :print("该三角形不成立!!! ")

demo31 :

13.(科学问题: - .周的星期几)泽勒的一- 致性是一个由泽勒开发的算法,用于计算- -周的星期几。这个公式是

●这里的h是指一-周的星期几(0:星期六; 1:星期天; 2:星期一; 3:星期二; 4:星期三; 5:星期四; 6:星期五)。
●q是一个月的哪- -天。
●m是月份(3:三月; 4:四月; .; 12:十二月)。一月和二月都是按照前一年的13月和14月来计数的。
●j是世纪数(即|year/100|)。
●k是一个世纪的某一年(即year % 100 )。
编写程序提示用户输人一个年份、月份以及这个月的某天,然后它会显示它是一周的星期几。
下面是一些事例运行。

(提示: [nJ=n//I其中n是一个正数。 一月和二月在公式中是以13 和14来计算的,所以你需要将用户输人的月份1转换为13和将用户输人的2转换为14, 将它们的年份改变为前一-年。)

year , month , day = eval(input("请输入年,月,日: "))
m = 0
if month == 1 or month == 2:m = month + 12year -= 1
elif month != 1 and month != 2:m = monthyear = year
"""定义若是一,二月是13,14,且年份为上一年,从三月开始到十二月都是正常
的3-12,年份也正常"""
j = year // 100
k = year % 100
h = (day + ((26 * (m + 1)) // 10) + k + k // 4 + j // 4 + 5 * j) % 7
if h == 0:print("该日子对应的是星期六")
elif h == 1:print("该日子对应的是星期天")
elif h == 2:print("该日子对应的是星期一")
elif h == 3:print("该日子对应的是星期二")
elif h == 4:print("该日子对应的是星期三")
elif h == 5:print("该日子对应的是星期四")
elif h == 6:print("该日子对应的是星期五")

demo32 :

(几何问题:点在圆内吗? )编写一个程序提示用户输入一个点(x,y),然后检测这个点是否在圆心为(0,0)半径为10 的圆内。例如:点(4,5)在圆内而(9,9)在圆外,如图4-8a所示。

(提示:如果一个点到(0,0)之间的距离小于或等于10,那它就在圆内。计算距离的公式是:

import math
x , y = eval(input("请输入x,y: "))
r = math.sqrt((x - 0) ** 2 + (y - 0) ** 2)#math.sqrt是引用算术平方根
if r <= 10:print("该点在圆内")
else :print("该点不在圆内")

demo33 :

15.(几何问题:点在矩形内吗? )编写程序提示用户输人点(x,y),然后检测这个点是否在以(0,0)为中心而宽为10高为5的矩形内。例如: (2,2) 在矩形内而(6,4)在矩形外,如图4-8b 所示。(提示:如果一个点到(0,0)的水平距离小于或等于10/2而到(0,0)的垂直距离小于或等于5.0/2。测试你的程序覆盖所有的情况。)

import math
x , y = eval(input("请输入x , y: "))
if abs(x) <= 10/2 and abs(y) <= 5/2:
#取x,y的绝对值使其不能超过矩形长和宽的一半print("该点在该矩形中")
if abs(x) > 10/2 or abs(y) > 5/2:print("该点不在该矩形中")

demo34 :

16.(回文数)编写程序提示用户输入一个三位整数,然后决定它是否是一一个回文数。如果一个数从左向右和从右向左读取时是-样的,那么这个数就是回文数。

num = int(input("请输入一个三位数: "))
num1 = num // 100
num2 = num % 10
if num1 == num2:print("该数是回文数")
else:print("该数不是回文数")

demo35 :

17.(几何问题:点在三角形内吗? )假设-一个直角三角形被放在一个水平面上,如下图所示。直角点是在(0,0)而另外两个点在(200,0)和(0,100)处。编写程序提示用户输入一个带x坐标和y坐标的点,然后决定这个点是否在三角形内。

x , y =eval(input("请输入x , y: "))
k1 = 100 / 200
if 0 <= x <= 200 and 0 <= y <= 100:#利用斜率判定是否在三角形中k = y / (200 - x)if k > k1:print("该点不在该直角三角形中")else:print("该点在该直角三角形中")
else:print("该点不在该直角三角形中")

demo36 :

18.(几何问题:两个圆)编写程序提示用户输人两个圆的中心的坐标以及它们的半径,然后判断第二个圆是在第—个圆内还是和第一个圆有重叠部分,如图4-11所示。(提示:如果两个中心的距离≤|r1 - r2|那么circle2在circlel内,如果两个中心的距离≤r1 + r2那么circle2是和circlel有重叠的。测试你的程序覆盖所有的情况。)

import math
x1 , y1 = eval(input("请输入第一个圆的圆心: "))
r1 = float(input("请输入第一个圆的半径: "))
x2 , y2 = eval(input("请输入第二个圆的圆心: "))
r2 = float(input("请输入第二个圆的半径: "))
w = math.sqrt((x1 - x2) ** 2 + (y1 - y2) ** 2)#圆心距
if w < abs(r1 - r2):print("圆2包含于圆1")
elif w == abs(r1 - r2):print("圆2内切于圆1")
elif w > abs(r1 - r2):if w < (r1 + r2):print("两个圆有覆盖")elif w == (r1 + r2):print("两个圆外切")elif w > (r1 + r2):print("两个圆分离")

Python编程题(二)相关推荐

  1. python编程题二

    输入合法性判断+素数判断 (10分) 实现isPrime()函数,参数为整数,要有异常处理.如果整数是素数,返回True,否则返回False.输入格式: 输入一个数输出格式: 如果整数是素数,输出&q ...

  2. 100+Python编程题给你练(附答案)

    大家如果能坚持独立思考完成以下题目,一定可以帮大家轻松 get Python 的编程技能.目前,这个项目已经获得了 3994 Stars,2952 Forks. Github 地址:Python-pr ...

  3. 记一次面试过程中的Python编程题

    这几天面试过程中遇到一道Python编程题,题目如下: 面试中遇到一个Python编程问题:一个字符串,将里面的数字取出来,如果第一个数字前面是+,表示整个数字为正数,如果第一个数字前面是-,表示数字 ...

  4. 实体类 接口_Java 语言基础编程题 (二维数组, 五子棋游戏, 实体类和接口)

    原文:Java 语言基础编程题 (二维数组, 五子棋游戏, 实体类和接口, 视频讲解) 这里分享三道编程题, 下面是我个人的视频讲解 二维数组, 五子棋游戏, 实体类和接口_哔哩哔哩 (゜-゜)つロ ...

  5. 首先定义一个Point (点)类,包含属性x,y(x,y为坐标点),方法有setPoint、getX、getY和OprintInfo...python编程题练习

    复习python编程题集合的第五题,若有错误和改进意见,欢迎评论交流!            首先定义一个Point (点)类:                   (1)包含属性x,y(x,y为坐标 ...

  6. Python编程题每日一练day1(附答案)

    Python编程题每日一练day1

  7. python编程题-python编程题库

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 上期题目连接:1000道python题库系列分享十一(9道)上期题目答案:? 本期 ...

  8. 从屌丝到高手,三道Python编程题,九种解题算法,看看你属于哪一类

    大家在平时刷题的过程中,不仅仅要注意理解问题的本质,而且要在解决问题的基础上,优化自己的解题思路和程序. 今天,小编就带领大家来进行三道简单问题的解决,从屌丝解法到进阶解法再到高手解法,一步步的带领大 ...

  9. python程序设计题库-python编程题库

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 上期题目连接:1000道python题库系列分享十一(9道)上期题目答案 ...

  10. Python编程题汇总

    Python编程复习 1.1找出列表中单词最长的一个 找出列表中单词最长的一个def test():a = ["hello", "world", "y ...

最新文章

  1. html实战例子: 简易的qq登录界面
  2. Webservice入门教程_用CXF编写基于Spring的WebService
  3. html左右滑动选择控件,jQuery让控件左右移动的三种实现方法
  4. Lab01:Xv6 and Unix utilities
  5. 2016和2017的区别就是昨晚和今早
  6. lynda ux_UX心态
  7. Python工作笔记-仿大佬的list赋值
  8. 分享一下最近看的东西
  9. Android性能优化之APK瘦身最全总结
  10. git出现红字说明什么_怀孕的第一个月会出现什么变化?若有7种表现,说明可能怀上了...
  11. [安卓学习]AndroidManifest.xml文件内容详解
  12. 一张图慢慢转换成下一张图_如何把一张照片变成炫酷的动图?
  13. BootStrap日历插件
  14. 计算机03年word做母亲节贺卡,制作图文并茂的作品---用word制作母亲节贺卡PPT课件...
  15. 抽象类和接口的区别(之二)
  16. win10计算机拨号连接,拨号连接设置(Win10怎么设置宽带自动连接 win10开机自动连接宽带设置方法详解)...
  17. 监控神器Prometheus
  18. 喝王老吉可延长寿命大约10%?
  19. webgl中顶点着色器的varying变量,使用方法。
  20. Golang之Shadowed Variables(幽灵变量)

热门文章

  1. 2019美国大学计算机本科排名,美国大学计算机排名2019最新排名
  2. (SWAT-6)输入表写入及模型运行
  3. 苹果产品信息查询_科普:苹果官网那些隐藏着的超实用工具
  4. 道士后期时的技能运用有哪些
  5. firefox flash问题
  6. PicGo简介及其下载 安装 配置 使用 卸载
  7. css3图片上下浮动动画
  8. AXD 汇编调试经验,使用及问题
  9. 博士申请 | 美国匹兹堡大学高伟教授招收Mobile AI方向全奖博士生
  10. 初级计算机英语,初级英语口语怎么学?