全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 python论坛
3732 10
2016-11-11
代码如下:求助,原来没有加break,加了也不行
import random
a=random.randint(1,3)
b=random.randint(1,100)
c=random.randint(1,100)
if a==1:
    print(b+c)
    answer=input('您的答案是')
    j=b+c
    if answer==j:
        print("right")
    else:
        print("sorry,your answe is wrong")
    break
if a==2:
    print(b*c)
    answer=input('您的答案是')
    j=b*c
    if answer==j:
        print("right")
    else:
        print("sorry,your answe is wrong")
    break
elif a==3:
    print(b-c)
    answer=input('您的答案是')
    j=b-c
    if answer==j:
        print("right")
    else:
        print("sorry,your answe is wrong")
    break

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-11-12 02:07:12
用python编写了一个锻炼数学计算的小程序
1. 根据LZ所描述的需求和编写的程序,大致理解下LZ的想法 (因为需求实在是太短了,而且跟程序中反应出的结果有些差池 (之后会提到),所以跟LZ确认一下需求):LZ希望用Python编写一个小程序,程序的功能是随机给出2个100以内的数字,要求使用程序的人进行加法、减法、乘法三种运算中的一种,程序辅助判断计算结果,如果答案正确输出 “right”,如果答案错误输出 “sorry, your answer is wrong!”
2. LZ程序中的问题不是因为少加了 break,所以LZ如果想要自行修改代码的话,需要先将 break都去掉。程序中真正的问题在于 打印的语句中使用了中文字符:answer=input('您的答案是'),需要确认在文件开头输入这行:# -*- coding: utf-8 -*- 因此去掉 break,在文件开头添加编码格式之后,LZ的代码就可以运行了;
3. 如果LZ是按照我写的步骤进行修改的话,应该会发现另一个问题,就是本来LZ希望自行计算算式结果在于程序中的正确结果进行判断给出正确或者错误的反馈,结果现在LZ的程序将结果先打印出来了,然后又问LZ 您的答案是?程序功能上出问题了,这也是为什么之前需要跟LZ再次确认需求的原因。原因在于:print(b+c) 这条语句就是将b+c的结果打印出来了,可以修改为:print ("%d + %d = ?" % (b, c)) 这样打印出来的就是,例如,1 + 2 =?减法和乘法的修改方式相同;
其实到这里LZ的程序就已经修改完成了,之后的是希望尽一点微薄之力多帮助LZ一些之后的内容选读:
4. LZ在之前提到了 break的用法,我猜想LZ也不希望这个程序只能出一道题就结束了,想让这个程序一直出题,直到我们不想做了为止,这时候我们就需要将循环 while (True)和 break结合使用,换句话说,当需要继续的时候正常运行,当想要结束的时候 break。之后我会附代码,详情参看代码;
5. Python中函数 def的使用,这一块的内容就是将LZ的程序功能写入一个函数中,方便调用,没有什么特别的,详情参看代码。

最后附上代码
希望能帮到你
附件列表

Math.txt

大小:1.09 KB

 马上下载

小程序源代码

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-12 09:16:53
break  是退出循环,才能用。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-12 09:21:16
帮你修改了,问题出在二个方面
1、break 只用在退出循环。
2、input() 函数读的是字符串,需要用int()转换为整数

附件列表
Snip20161112_70.png

原图尺寸 102.46 KB

Snip20161112_70.png

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-12 17:31:28
IT小渣渣 发表于 2016-11-12 02:07
1. 根据LZ所描述的需求和编写的程序,大致理解下LZ的想法 (因为需求实在是太短了,而且跟程序中反应出的 ...
谢谢大神
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-12 17:31:59
python爱好者 发表于 2016-11-12 09:16
break  是退出循环,才能用。
谢谢大神
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群