python语言程序设计基础(嵩天)第四章课后习题部分答案
p121:
*题4.1:猜数字游戏。在程序中预设一个0~9之间的整数,让用户通过键盘输入所猜的数,如果大于预设的数,显示“遗憾,太大了!”;小于预设的数,显示“遗憾,太小了!”,如此循环,直至猜中该数,显示“预测N次,你猜中了!”,其中N是用户输入数字的次数。
源代码:
from random import*
y=5
n=1
m=False
while(m==False):
x=eval(input("请输入您猜想的数字:"))
try:
if(x>y):
print("遗憾!太大了!")
n+=1
m=False
elif(x<y):
print("遗憾!太小了!")
n+=1
m=False
else:
print("预测{}次,你猜中了!".format(n))
m=True
except NameError :
print("请输入一个整数!")
except:
print("其他错误!")
运行结果:

*题4.2:统计不同字符个数。用户从键盘输入一行字符,编写一个程序,统计并输出其中的英文字符、数字、空格和其他字符的个数。
源代码:
x1,x2,x3,x4=0,0,0,0#数字x1,英文x2,空格x3,其他x4
s=input("请任意输入一段字符:")
l=len(s)
i=0
try:
while(i<l):
if(0<=ord(s[i])<32):
x4=x4+1
i+=1
elif(ord(s[i])==32):
x3+=1
i+=1
elif(32<ord(s[i])<48):
x4=x4+1
i+=1
elif(47<ord(s[i])<58):
x1+=1
i+=1
elif(57<ord(s[i])<65):
x4=x4+1
i+=1
elif(64<ord(s[i])<91):
x2=x2+1
i+=1
elif(90<ord(s[i])<97):
x4=x4+1
i+=1
elif(96<ord(s[i])<123):
x2=x2+1
i+=1
elif(122<ord(s[i])<128):
x4=x4+1
i+=1
print("数字有{},字母有:{},空格有:{},其他有:{}".format(x1,x2,x3,x4))
except:
print("未知错误!")
运行结果:

*题4.4:猜数字游戏续。改编程序练习题4.1,让计算机能够随机产生一个预设数字,范围在0~100之间,其他游戏规则不变。
源代码:
from random import*
y=randint(0,100)
n=1
m=False
while(m==False):
x=eval(input("请输入您猜想的数字:"))
try:
if(x>y):
print("遗憾!太大了!")
n+=1
m=False
elif(x<y):
print("遗憾!太小了!")
n+=1
m=False
else:
print("预测{}次,你猜中了!".format(n))
m=True
except NameError :
print("请输入一个整数!")
except:
print("其他错误!")
运行结果:

python语言程序设计基础(嵩天)第四章课后习题部分答案的更多相关文章
- python语言程序设计基础(第二版)第五章答案随笔
1.实现isOdd()函数,参数为整数,如果整数是奇数,返回True,否则返回False def isOdd(num): if num % 2 == 0: return True ...
- C语言程序设计·谭浩强(第四版)第二章课后习题的答案,算法——程序的灵魂
C语言程序小练习 1.用C语言设计程序算出1-1/2+1/3-14+1/5...+1/99-1/100的值 #include<stdio.h> int main() { ; double ...
- python语言程序设计基础(嵩天)第二章课后习题
p56: *2.1 实例1的修改.改造实例代码1.1,采用eval(input(<提示内容>))替换现有输入部分,并使输出的温度值为整数. 源代码: TempStr=input(" ...
- python语言程序设计基础(嵩天)第三章课后习题部分个人练习
p69: *题3.5: 源代码: (1)print(30-3**2+8//3**2*10) 答案:21 (2)print(3*4**2/8%5) 答案:1.0 (3)print(2** ...
- python语言程序设计基础 习题 天天向上的力量(math.pow)
实例1: 一年365天,,以第一天的能力值为基数1.0,当好好学习时能力值相比前一天提高1%,没有学习时能力值相比前天要降低1%,每天努力和每天放任,一年下来的能力值相差多少? 解析: 如果每天都好好 ...
- Python语言程序设计基础(4)—— 程序的控制结构
PM2.5 pm = eval(input()) if pm>=75: print("空气存在污染") else : print("空气没有污染") pr ...
- Python语言程序设计基础(7)—— 文件和数据格式化
返回字符串 file = input() #返回字符串 fo = open(file,"r").read(6) print(fo) 返回列表形式 file = input() fo ...
- Python语言程序设计基础(6)—— 组合数据类型
tuple 元组(创建后不能修改) tuple = "cat","dog","tiger","human" print( ...
- Python语言程序设计基础(5)—— 函数和代码复用
lambda sum = lambda x,y : x + y print(sum(3,3),type(sum)) 默认参数 def prints(str,times = 2) : print(str ...
随机推荐
- 通过CMD命令窗口获取django版本号
通过CMD命令窗口获取django版本号 方法一: C:\Users\Administrator>python >>> import django >>> d ...
- mybatis plus使用redis作为二级缓存
建议缓存放到 service 层,你可以自定义自己的 BaseServiceImpl 重写注解父类方法,继承自己的实现.为了方便,这里我们将缓存放到mapper层.mybatis-plus整合redi ...
- Airflow: TypeError can't pickle memoryview objects
apache-airflow1.9.0 + python3 + rabbitmq + librabbitmq2.0.0 相关配置如下: broker_url = amqp://cord:123456@ ...
- Spring Boot应用上传文件时报错
问题描述 Spring Boot应用(使用默认的嵌入式Tomcat)在上传文件时,偶尔会出现上传失败的情况,后台报错日志信息如下:"The temporary upload location ...
- SpringCloud微服务笔记-Nginx实现网关反向代理
背景 当前在SpringCloud微服务架构下,网关作为服务的入口尤为重要,一旦网关发生单点故障会导致整个服务集群瘫痪,为了保证网关的高可用可以通过Nginx的反向代理功能实现网关的高可用. 项目源码 ...
- ORA-08102异常重现及恢复
现象: 在表上面新建主键报ORA-08102的异常: SQL> alter table t add primary key(id); alter table t add primary key( ...
- 记一次处理mysql数据库无故锁表的经历
某日,生产环境上的用户表突然无故锁表,原以为只是偶发的bug.所以第一时间想到的解决方案简单粗暴:重启数据库(service mysqld restart).问题得以解决. 10min后,该表再次锁表 ...
- ASP.NET Core 3.0 gRPC 双向流
目录 ASP.NET Core 3.0 使用gRPC ASP.NET Core 3.0 gRPC 双向流 ASP.NET Core 3.0 gRPC 认证授权 一.前言 在前一文 <ASP.NE ...
- Transformer各层网络结构详解!面试必备!(附代码实现)
1. 什么是Transformer <Attention Is All You Need>是一篇Google提出的将Attention思想发挥到极致的论文.这篇论文中提出一个全新的模型,叫 ...
- 3D 飞行器航迹规划
3D-Route-Planning 三维航迹规划 -Matlab 本次代码主要解决数学建模中多约束条件下的航迹规划问题 解决的问题如下: 复杂环境下航迹快速规划是智能飞行器控制的一个重要课题.由于 ...