python选择结构上机报告

一、实验目的和要求

目的: ①掌握python中表示条件的方法。 ②掌握if语句的格式及执行规则 ③掌握选择结构设计的方法

二、 实验数据记录、处理及结果分析

(1)键盘输入55,写出输入结果

a=int(input())
if a>40:
    print("a1=",a)
    if a<50:
        print("a2=",a)
if a>30:
    print("a3=",a)

(2)输出结果:

x==0.1
y=2.0
if x-y==0.1:
    print("Equal")
else:
    print("Not Equal")

因为x是float型的变量,保存float型单精度数据,二进制保存时很可能并不是精确的0.1。0.1在程序中默认是double型的常数,二进制保存也很可能并不是精确的0.1。因此x=0.1比较很可能并不是真,原因是float和double在保存二进制不能精确保存的数据时因有效位数精度不同导致实际数据不同。

(3)补充程序运行结果:

m=int(input())
if m%3==0 or m%7==0:
    print("Yes")
else:
    print("No")
m%3==0 or m%7==0

(4)输入整数并完成结果:

import math
num = int(input("输入一个数字: "))
if (num % 2) == 0:
   print("偶数",math.pow(num,1/3))
else:
   print("奇数",math.sqrt(num))

(5)输入三个数,判断是否为三角形:

#输入合法性检查,必须输入正数,不支持科学计数法
def ispositive(num):
    try:
        float(num)
    except:
        return False
    else:
        if float(num) <= 0:
            return False
        else:
            return True
def ispythagoras(a,b,c):
    if a**2 + b**2 == c**2 or a**2 + c**2 == b**2 or b**2 + c**2 == a**2:
        return True
    else:
        return False

num1 = input("pls enter 1st number:
")
while not ispositive(num1):
    num1 = input("Thats not a valid number. Try again:
")

num2 = input("pls enter 2nd number:
")
while not ispositive(num2):
    num2 = input("Thats not a valid number. Try again:
")

num3 = input("pls enter 3rd number:
")
while not ispositive(num3):
    num3 = input("Thats not a valid number. Try again:
")

num1 = float(num1)
num2 = float(num2)
num3 = float(num3)
if num1 + num2 > num3 and num2 + num3 > num1 and num1 + num3 > num2:
    if num1 == num2 == num3:
        print("%.2f
%.2f
%.2f
可以组成等边三角形" % (num1,num2,num3))
    elif num1 == num2 or num2 == num3 or num1 == num3:
        if ispythagoras(num1,num2,num3):
            print(%.2f
%.2f
%.2f
可以组成等腰直角三角形 % (num1,num2,num3))
        else:
            print(%.2f
%.2f
%.2f
可以组成等腰三角形 % (num1,num2,num3))
    elif ispythagoras(num1,num2,num3):
        print(%.2f
%.2f
%.2f
可以组成直角三角形 % (num1,num2,num3))
    else:
        print(%.2f
%.2f
%.2f
可以组成普通三角形 % (num1,num2,num3))
else:
    print(%.2f
%.2f
%.2f
不能组成三角形 % (num1,num2,num3))
三、讨论、心得

(1)在运行时,第一次报错: Python严格地要求代码缩进,缩进的代码块相对于上一级是从属关系。 if a==2: print ‘hello world’if语句的条件为真时会执行print语句,print语句是if语句的从属代码块,代表从属关系,print语句之前有4个空格。如果if语句没有任何从属的代码块就会报错expected an indented block。与if语句类似的,必须包含从属代码块的还有while、for、try-except等 (4)报错情况: 修改之后继续报错

经验分享 程序员 微信小程序 职场和发展