资源简介 2.3程序设计基本知识P60实践活动编程计算体重指数程序设计答案:a=float(input('请输入身高米:'))b=float(input('请输入体重千克:'))BMI=b/(a*a)print("体重指数BMI=",round(BMI,2)) #保留1位小数P63实践活动评定体重指数等级程序设计答案:第2题:方案一b=float(input('请输入身高米:'))c=float(input('请输入体重千克:'))bmi=c/pow(b,2)t=bmiprint("你的体重指数BMI的值是:",round(t,1))if t>=16.5 and t<=23.3:print("正常")else :if t<=16.4:print('低体重')else:if t>=23.3 and t<=26.3:print("超重")else:print("肥胖")方案二:多分支结构b=float(input('请输入身高米:'))c=float(input('请输入体重千克:'))bmi=c/(b*b)t=bmiprint("体重指数BMI的值是:",round(t,1))if t>=16.5 and t<=23.3:print("正常")elif t<=16.4:print('低体重')elif t>=23.3 and t<=26.3:print("超重")else:print("肥胖")第3题:a=input('请输入性别:')e='男'f="女"if a!=e and a!=f:print("性别输入错误")else:b=float(input('请输入身高米:'))c=float(input('请输入体重千克:'))bmi=c/pow(b,2)t=bmiif a==e:if t>=16.5 and t<=23.3:print("正常")elif t<=16.4:print('低体重')elif t>=23.3 and t<=26.3:print("超重")else:print("肥胖")else:if a==f:if t>=16.5 and t<=22.7:print("正常")else:if t<=16.4:print('低体重')else:if t>=22.8 and t<=25.2:print("超重")else:print("肥胖")P67实践活动对多名学生进行体重指数的等级判断的程序设计。i=1rs=int(input('请输入学生人数:'))while i<=rs:i=i+1a=input('请输入性别:')e='男'f="女"if a!=e and a!=f:print("性别输入错误")else:b=float(input('请输入身高米:'))c=float(input('请输入体重千克:'))bmi=c/pow(b,2)t=bmiprint("体重指数BMI的值是:",round(t,1))if a==e:if t>=16.5 and t<=23.3:print("正常")elif t<=16.4:print('低体重')elif t>=23.3 and t<=26.3:print("超重")else:print("肥胖")else:if a==f:if t>=16.5 and t<=22.7:print("正常")else:if t<=16.4:print('低体重')else:if t>=22.8 and t<=25.2:print("超重")else:print("肥胖")P69练习提升1、分别指出下面程序中循环体执行的次数,写出运行结果,分析程序功能。(1)i=100r=1 #执行次数while i>1:print("进入第",r,"次循环,r=",r)r=r+1if i%13==0:breaki=i-1print(i)答案:程序执行的次数为10次,输出i的值为91。(2)r=1 #执行次数for i in range(100,1,-1):print("进入第",r,"次循环,r=",r)r=r+1if i%13!=0:continueprint(i)答案:程序执行的次数为99,出i的值为91、78、65、52、39、26、13。2.设计算法编写程序实现如下功能:已知一元二次方程ax2 +bx+c=0,从键盘输入a、b和c的值,获取该一元二次方程解的情况。import matha = float(input("请输入a的值:"))b = float(input("请输入b的值:"))c = float(input("请输入c的值:"))if a != 0:delta = b ** 2 - 4 * a * cif delta < 0:print("方程无解")elif delta == 0:s = -b / (2 * a)print("两根相等:x=",s)else :root = sqrt(delta)x1 = (-b + root) / (2 * a)x2 = (-b - root) / (2 * a)print("x1=", x1, "\t", "x2=", x2)3.求任意两个正整数的最大公约数,直至用户输入”q”或”Q”才退出程序。while True:a = int(input("输入第一个正整数:"))b = int(input("输入第一个正整数:"))while b:x = a % ba = bb = xprint("两个数的最大公约数是:",a)c = input("是否继续?(退出程序请输入‘q’或‘Q’;按其它键则继续)")if c == "q" or c == "Q":break4.编写程序和计算机来一场有趣的猜数游戏。要求:由计算机随机生成一个100以内的正整数,用户有五次猜数机会,如果猜中提示”猜中了!“并退出程序;否则,提示”数偏大“或”数偏小“,然后继续猜数。如果5次均未猜中,屏幕显示计算机随机生成的整数,并换行给出提示“五次没有猜中,很遗憾,游戏结束“,退出程序。import randomnumber = 5secret = random.randint(1, 100)while number > 0:temp1 = int(input("输入一个整数(1-100):"))if temp1 == secret:print("猜中了!")breakelif temp1 > secret:print("数偏大,还剩", number - 1, "次机会")else:print("数偏小,还剩", number - 1, "次机会")number -= 1if number == 0:print("答案是", secret)print("5次没有猜中,很遗憾,游戏结束") 展开更多...... 收起↑ 资源预览