zoukankan      html  css  js  c++  java
  • Python期中考试程序设计详解-3

    一、在程序中预设一个0-9之间的整数,让用户通过键盘输入所猜的数,如果大于预设的数,显示“遗憾,太大了”;小于预设的数,显示“遗憾,太小了”。如此循环,直至猜中该数,显示“预测了N次,你猜中了! ”,其中N是用户输入数字的次数。不使用异常处理。

    题目分析:

    (1)首先确定一个整数N,然后根据提示用户输入一个数:input()函数实现

    (2)利用N与input()函数的值进行比较,只要不相等,就分情况讨论:

    (3)如果输入的值不等于预设的值,执行while下面的整个循环体内容。否则直接输出print()语句。

    二、统计不同字符个数。用户从键盘输入一行字符,编写一个程序,统计并输出其中英文字符、数字、空格和其他字符的个数。

    题目分析:

    (1)统计字符个数,其实就是计数的一个过程。

    (2)对不同类型计数,就需要分类型讨论,数字属于0-9,字母属于a-z,A-Z,空格属于“ ”,

    (3)对输入的字符串进行一个一个字母分解,相当于对字符串进行遍历,for c in s格式,(读取字符串中的每一个字符)

     

    针对最后输出的格式,也可以进行整合:

    三、让计算机在程序中随机产生一个0-100之间的整数,让用户通过键盘输入所猜的数,如果大于预设的数,显示“遗憾,太大了”;小于预设的数,显示“遗憾,太小了”。如此循环,直至猜中该数,显示“预测了N次,你猜中了! ”,其中N是用户输入数字的次数。不使用异常处理。

    程序分析:

    (1)首先利用随机库函数,随机产生一个整数N=random.randint(0,100),然后根据提示用户输入一个数:input()函数实现

    (2)利用N与input()函数的值进行比较,只要不相等,就分情况讨论:

    (3)如果输入的值不等于预设的值,执行while下面的整个循环体内容。否则直接输出print()语句。

    import random #引入随机库
    N=random.randint(0,100) #产生一个0-100的随机整数
    a=eval(input("请输入一个整数:")) #对输入的数字进行类型转换
    k=1
    while a!=N:
      if a>N:  #注意if与while的缩进关系
        print("遗憾,太大了") #注意print与if的缩进关系
      elif a<N:
        print("遗憾,太小了")
      else:
        break
      a=eval(input("请输入一个整数:"))
      k+=1
    print("预测{}次,你猜中了!".format(k))

    四、从键盘接收两个整数,编写程序求出这两个整数的最大公约数和最小公倍数(提示:求最大公约数可用辗转相除法,求最小公倍数则用两个数的积除以最大公约数即可)

    程序分析:

    (1)最大公约数可用辗转相除法,求最小公倍数则用两个数的积除以最大公约数

     

  • 相关阅读:
    迭代器、生成器
    函数(函数基础、装饰器、递归、匿名函数)
    文件处理
    python对象、引用
    字符编码
    流程控制if、while、for
    编程与编程语言
    Java源码阅读(五)—— AbstractQueuedSynchronizer
    Java并发编程(二) —— volatile
    Java源码阅读(七)—— ReentrantReadWriteLock
  • 原文地址:https://www.cnblogs.com/python-lee/p/13905754.html
Copyright © 2011-2022 走看看