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语言程序设计基础(嵩天)第四章课后习题部分答案的更多相关文章

  1. python语言程序设计基础(第二版)第五章答案随笔

    1.实现isOdd()函数,参数为整数,如果整数是奇数,返回True,否则返回False def isOdd(num):    if num % 2 == 0:        return True  ...

  2. C语言程序设计·谭浩强(第四版)第二章课后习题的答案,算法——程序的灵魂

    C语言程序小练习 1.用C语言设计程序算出1-1/2+1/3-14+1/5...+1/99-1/100的值 #include<stdio.h> int main() { ; double ...

  3. python语言程序设计基础(嵩天)第二章课后习题

    p56: *2.1 实例1的修改.改造实例代码1.1,采用eval(input(<提示内容>))替换现有输入部分,并使输出的温度值为整数. 源代码: TempStr=input(" ...

  4. 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** ...

  5. python语言程序设计基础 习题 天天向上的力量(math.pow)

    实例1: 一年365天,,以第一天的能力值为基数1.0,当好好学习时能力值相比前一天提高1%,没有学习时能力值相比前天要降低1%,每天努力和每天放任,一年下来的能力值相差多少? 解析: 如果每天都好好 ...

  6. Python语言程序设计基础(4)—— 程序的控制结构

    PM2.5 pm = eval(input()) if pm>=75: print("空气存在污染") else : print("空气没有污染") pr ...

  7. Python语言程序设计基础(7)—— 文件和数据格式化

    返回字符串 file = input() #返回字符串 fo = open(file,"r").read(6) print(fo) 返回列表形式 file = input() fo ...

  8. Python语言程序设计基础(6)—— 组合数据类型

    tuple 元组(创建后不能修改) tuple = "cat","dog","tiger","human" print( ...

  9. Python语言程序设计基础(5)—— 函数和代码复用

    lambda sum = lambda x,y : x + y print(sum(3,3),type(sum)) 默认参数 def prints(str,times = 2) : print(str ...

随机推荐

  1. lightoj 1140 - How Many Zeroes?(数位dp)

    Jimmy writes down the decimal representations of all natural numbers between and including m and n, ...

  2. 【Offer】[42] 【连续子数组的最大和】

    题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 输入一个整型数组,数组里有正数也有负数.数组中的一个或连续多个整数组成一个子数组.求所有子数组的和的最大值.要求时间复杂度为O(n). ...

  3. SQL,如果碰到Json,你会怎么做?

    1.Json串如下: DECLARE @JsonInfo NVARCHAR() SET @JsonInfo=N' { "CalcPayInput":{ ", " ...

  4. 【LeetCode】BFS 总结

    BFS(广度优先搜索) 常用来解决最短路径问题. 第一次便利到目的节点时,所经过的路径是最短路径. 几个要点: 只能用来求解无权图的最短路径问题 队列:用来存储每一层便利得到的节点 标记:对于遍历过的 ...

  5. Linux执行后台work相关

    Linux的后台运行.关闭.查看后台任务 & ctrl+z jobs fg bg kill nohup setsid disown screen 1.& 加在命令的最后,可以把命令放到 ...

  6. Unity3D_01_各种寻找GameObject方法

    1.GameObject.Find(): 寻找Hierarchy面板中的activie 不为false的游戏对象: 路径如官方事例写法: public class ExampleClass : Mon ...

  7. Vector和Arrarlist的异同;Hashtanle和HashMap的异同

    Vector和ArrayList的异同 实现原理相同,功能相同,可以互用 主要区别: Vector线程安全,ArrayList重速度,轻安全,线程非安全. 长度需要增长时,Vector默认增长一倍,A ...

  8. java使用FileSystem上传文件到hadoop文件系统

    import java.io.FileNotFoundException; import java.io.IOException; import java.net.URI; import org.ap ...

  9. 从零开始入门 K8s| 详解 Pod 及容器设计模式

    作者|张磊 阿里云容器平台高级技术专家,CNCF 官方大使 一.为什么需要 Pod 容器的基本概念 我们知道 Pod 是 Kubernetes 项目里面一个非常重要的概念,也是非常重要的一个原子调度单 ...

  10. HTML定位——绝对定位和相对定位、固定定位

    1.绝对定位 绝对定位指的是通过规定HTML元素在水平和垂直方向上的位置来固定元素,基于绝对定位的元素不会占据空间. 绝对定位的位置声明是相对于已定位的并且包含关系最近的祖先元素.如果当前需要被定为的 ...