实验五 Python程序控制结构

实验目的

  1. 掌握程序的三种控制结构;
  2. 运用if语句实现分支结构;
  3. 运用for语句和while语句时间循环结构;
  4. 了解程序的异常处理及用法。

实 验 内 容

  1. 获取用户输入的一个百分制成绩,转换成五分制,给出对应的A、B、C、D、E等级分析运行以下程序,如输入score为80,观察输出grade的值是否符合转换结果。
    score = eval(input(“请输出一个百分制成绩:”))
    score = eval(input(‘请输入要转换的分数:’))
    if score >= 60.0:
    grade = “D”
    elif score >= 70.0:
    grade = “C”
    elif score >= 80.0:
    grade = “B”
    elif score >= 90.0:
    grade = “A”
    else:
    grade = “E”
    print(“对应的五分制成绩是:{}”.format(grade))
  2. 修改1中的程序代码,使输出grade的值符合转换结果。
  3. 猜数字游戏。在程序中预设一个0-9之间的整数,让用户通过键盘输入所猜的数,如果大于预设的数,显示“遗憾,太大了!”;小于预设的数,显示“遗憾,太小了!”,如此循环,直至猜中该数,显示“预测了N次,你猜对中了!”,其中N是用户输入数字的次数。
  4. 猜数字游戏续。改编第3题中的猜数字游戏,让计算机能够随机产生一个预设数字,范围在0-100之间,其他游戏规则不变。

实验过程

  1. 获取用户输入的一个百分制成绩,转换成五分制,给出对应的A、B、C、D、E等级分析运行以下程序,如输入score为80,观察输出grade的值是否符合转换结果。
    score = eval(input(“请输出一个百分制成绩:”))
    score = eval(input(‘请输入要转换的分数:’))
    if score >= 60.0:
    grade = “D”
    elif score >= 70.0:
    grade = “C”
    elif score >= 80.0:
    grade = “B”
    elif score >= 90.0:
    grade = “A”
    else:
    grade = “E”
    print(“对应的五分制成绩是:{}”.format(grade))

第一种解法
程序代码如下

score = eval(input("请输出一个百分制成绩:"))
score = eval(input('请输入要转换的分数:'))
if score >= 60.0:
    grade = "D"
elif score >= 70.0:
    grade = "C"
elif score >= 80.0:
    grade = "B"
elif score >= 90.0:
    grade = "A"
else:
    grade = "E"
print("对应的五分制成绩是:{}".format(grade))

运行截图如下
实验五 Python程序控制结构_第1张图片
结果分析如下
该程序的输出grade的值不符合转换结果。

  1. 修改1中的程序代码,使输出grade的值符合转换结果.

第一种解法
程序代码如下

score = int(input("请输出一个百分制成绩:"))
if score >= 90:
    grade = "A"
elif score >= 80:
    grade = "B"
elif score >= 70:
    grade = "C"
elif score >= 60:
    grade = "D"
else:
    grade = "E"
print("对应的五分制成绩是:{}".format(grade))

运行截图如下
实验五 Python程序控制结构_第2张图片

第二种解法
程序代码如下

score = eval(input("请输入要转换的分数:"))
if score >= 90.0:
    grade = "A"
elif score >= 80.0:
    grade = "B"
elif score >= 70.0:
    grade = "C"
elif score >= 60.0:
    grade = "D"
else:
    grade = "E"
print("对应的五分制成绩是:{}".format(grade))

运行截图如下
实验五 Python程序控制结构_第3张图片

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

第一种解法
程序代码如下

import random
num = random.randint(0,9)
user = int(input('猜数字游戏开始\n请输入数字(范围在0-9):'))
N = 1
while user != num:
    if user > num:
        print('遗憾,太大了!')
    else:
        print('遗憾,太小了!')
    user = int(input('猜数字游戏开始\n请输入数字(范围在0-9):'))
    N = N + 1
print('预测了{:.0f}次,你猜对了!'.format(N))

运行截图如下
实验五 Python程序控制结构_第4张图片

第二种解法
程序代码如下

from random import randint
num = randint(1,100)
time = 0
while 1:
    try:
        guess = eval(input('请输入您猜测的数字(0-100之间的整数):'))
        time += 1
        if guess > num:
            print('遗憾,太大了!')
        elif guess < num:
            print('遗憾,太小了!')
        else:
            print('预测了{}次,你猜对中了!'.format(time))
            break
    except:
         print('输入有误!')

运行截图如下
实验五 Python程序控制结构_第5张图片
4. 猜数字游戏续。改编第3题中的猜数字游戏,让计算机能够随机产生一个预设数字,范围在0-100之间,其他游戏规则不变。

第一种解法
程序代码如下

import random
num = random.randint(0,100)
user = int(input('猜数字游戏开始\n请输入数字(范围在0-100):'))
N = 1
while user != num:
    if user > num:
        print('遗憾,太大了!')
    else:
        print('遗憾,太小了!')
    user = int(input('猜数字游戏开始\n请输入数字(范围在0-100):'))
    N = N + 1
print('预测了{:.0f}次,你猜对了!'.format(N))

运行截图如下
实验五 Python程序控制结构_第6张图片
第二种解法
程序代码如下

num = 8
time = 0
while 1:
    try:
        guess = eval(input('请输入您猜测的数字(0-10之间的整数):'))
        time += 1
        if guess > num:
            print('遗憾,太大了!')
        elif guess < num:
            print('遗憾,太小了!')
        else:
            print('预测了{}次,你猜队了!'.format(time))
            break
    except:
        print('输入有误!')

运行截图如下
实验五 Python程序控制结构_第7张图片

你可能感兴趣的:(Python程序设计基础与应用,python)