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 ...
随机推荐
- Play on Words UVA - 10129
题目: Some of the secret doors contain a very interesting word puzzle. The team of archaeologists has ...
- poj 1984 Navigation Nightmare(带权并查集+小小的技巧)
题目链接:http://poj.org/problem?id=1984 题意:题目是说给你n个线,并告知其方向,然后对于后面有一些询问,每个询问有一个时间点,要求你输出在该时间点a,b的笛卡尔距离,如 ...
- 技术漫谈 | 远程访问和控制云端K8S服务器的方法
对于部署在云端的K8S容器编排系统,可以先通过SSH远程登录到K8S所在主机,然后运行kubectl命令工具来控制K8S服务系统.然而,先SSH登录才能远程访问的二阶段方式,对于使用Linux桌面或者 ...
- POJ 2488 A Knight's Journey (DFS)
poj-2488 题意:一个人要走遍一个不大于8*8的国际棋盘,他只能走日字,要输出一条字典序最小的路径 题解: (1)题目上说的"The knight can start and end ...
- 【Redis】SpringBoot+Redis+Ehcache实现二级缓存
一.概述 1.1 一些疑惑? 1.2 场景 1.3 一级缓存.两级缓存的产生 1.4 流程分析 二.项目搭建 一.概述 1.1 一些疑惑? Ehcache本地内存 Redis 分布式缓存可以共享 一级 ...
- Cycone IV的DDR2硬件设计前验证
打算使用Cyclone IV的FPGA挂DDR2,按照流程,先使用Quartus跑IP,跑引脚分配,综合OK了再设计硬件,这部分主要是DM和DQS信号比较头疼,研究了好久才找到方法. 在Intel官网 ...
- 去重合并两个有序链表之直接操作和Set集合操作
两者思路对比: 直接操作:因为传入的是两个有序的链表,所以说我就直接以其中一个链表为基准,与另外一个链表比较,只将比返回值链表的最后一个记录的值大的插入,不将等值的插入,理论时间复杂度为O(n) Se ...
- Android-WebView支持input file启用相机/选取照片
webview要调起input-file拍照或者选取文件功能,可以在webview.setWebChromeClient方法中重写指定的方法,来拦截webview的input事件,并做我们相应的操作. ...
- MySQL二进制日志挖掘器BinlogMiner 1.0发布了。
MySQL从2014年开始超越SQL Server, 占据DB-Engines数据库流行度排行榜第二名, 是一种非常流行的关系型数据库, 特别是在互联网领域, 是一种应该掌握的数据库系统.最近在学My ...
- WPF 自定义UI控件学习
最近项目中运用到了WPF处理三维软件,在C/S结构中WPF做UI还是有很多优越性,简单的学了一点WPF知识,成功的完成项目目标.项目过度阶段对于WPF的一些基本特点有了进一步了解 .至此花费一点时间研 ...