鱼C论坛

 找回密码
 立即注册
查看: 5255|回复: 42

[技术交流] 第15讲习题代码以及分析

[复制链接]
发表于 2014-7-28 20:54:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 mumudontcry 于 2014-8-4 18:42 编辑

第一行喂@小甲鱼 第二行开始
题目我就不说了
惯例,先说说小甲鱼的答案,如图,随便测试一个数据:q
程序报错
其实不用图也可以,只是图片有说服力~~
当然题目要求的功能是可以实现,但秉承着对程序的严谨,我不想看到红色的报错提示。而且,我事先也没有看小甲鱼的答案,所以这是我的代码:
print("""
符号    说明
%c     格式化字符及其ASCII码
%s     化字符串
%d     格式化整数
%o     格式化无符号八进制数
%x     格式化无符号十六进制数
%X     格式化无符号十六进制数(大写)
%f     格式化定点数,可指定小数点后的精度
%e     用科学计数法格式化定点数
%E     作用同%e,用科学计数法格式化定点数
%g     根据值的大小决定使用%f活%e
%G     作用同%g,根据值的大小决定使用%f或者%E
""")
temp = '么么哒'
t = 'y'
while t == 'y':
    temp = input("请输入一个整数(输入Q结束程序):")
    if (len(temp) - 1 > 0) and temp[len(temp)-1] == 'Q' and temp[0:len(temp)-1].isdigit() == True:
#去掉“Q”
        temp = temp[0:len(temp)-1]
        num = int(temp)
#打印结果
        print(str(num))
        print("十进制 -> 十六进制:"+str(num) + " -> 0x"+ str('%x' % num))
        print("十进制 -> 八进制:"+str(num) + " -> 0o"+ str('%o' % num))
        print("十进制 -> 二进制:"+str(num) + " -> "+ bin(num))
        t = input("继续么?(y继续,其他退出)")
    else:
#长度为1或者0的,都需要重新输入
#长度>1,但最后一位不为“Q”的,重新输入
#长度>1,最后一位为“Q”的,但第0个到第倒数第二个字符不是数字(0~9)的,重新输入
        temp = input("请输入一个整数(输入Q结束程序):")

ps:目测上面的蓝字会是以后我发程序固定的一段文字>_<


pps(不想看故事请直接看蓝色的字)
有鱼油反映:“木木,你这个程序是错的!”
“哦嘞?哪有!”
“balabalabalabala……”
“不听不听不听,木木的程序就是对的!”
(一个星期之后……)
“好吧,木木错了……(半秒之后)错了又咋样!不服咬我啊!”
“……”
错在哪呢?
1、小甲鱼题目要求是输入Q结束程序,而木木这里理解成了以Q结尾的字符串
2、相应的,木木把这个改成了以“输入y结束程序”

(傲娇的)木木:“但!即使是这样,我的还是比小甲鱼的好!因为我只是输入数字的时候麻烦一点,要输入Q结尾,而小甲鱼的是输入的不是纯数字就会报错!”
(没节操小)甲鱼:“好好跟鱼油说话,你错你就改嘛”
“不改,就不改,那么长一坨程序,你让我改,不得累死我”
“那你这样不对会误导鱼油的”
“误导就误导呗,就算是错的,他们好歹说说哪里错了也好啊,不能光说:你看,你的程序运行之后错了。笨笨的木木哪里知道哪里错了嘛”
“……不管怎么说,你还是要改,不然以后小甲鱼就不给你丢肥皂了”
那我改吧,肥皂你也不要扔了,我不会捡的。嗯……说好了,木木不会全改的,因为木木是“虚心接受,坚决不改”的木木,我就稍微改一点点”
问:按照木木的说法,如果是稍微改一点点就达到小甲鱼题目的要求并且又不丢失原来程序的优点(输入不符合要求的东西不是报错而是要求重新输入),那要怎么稍~~~~~微改呢?(其实即使这么改了,程序依然不是那么简洁,毕竟,因为傲娇的木木不愿意把代码重新写一遍,之前留下来不好的还是存在,想要更好的程序,就改一改小甲鱼的代码。当然,如果你们有写更好的,就告诉木木,木木依旧虚心接受,坚决不改
答案将会公布在43楼

终于,小坏鱼在膜拜了木木的英明神武,足智多谋后决定,再也不给鱼油们增加万恶的习题了,于是,木木又让地球上的鱼油们度过了美好而又快乐的一天
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
点击
当没节操甲鱼遇上傲娇笨笨的木木
查看我的淘帖,喜欢就点“订阅”吧




QQ截图20140728205149.jpg

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +3 收起 理由
小甲鱼 + 5 + 5 + 3 不错,精神可嘉!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-7-28 21:05:38 | 显示全部楼层
@小甲鱼
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-28 21:06:22 | 显示全部楼层
@小甲鱼
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-28 21:07:39 | 显示全部楼层
还是失败了
@小甲鱼
成功!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-28 21:19:13 | 显示全部楼层
你这么屌。helen知道吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-28 22:07:05 | 显示全部楼层
if num not in ['q','Q']
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-28 22:09:09 | 显示全部楼层
『浴火凤凰』 发表于 2014-7-28 21:19
你这么屌。helen知道吗

Helen  他不懂编程吧、、
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-28 22:28:38 | 显示全部楼层

你这是要干嘛
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-28 22:29:43 | 显示全部楼层
啊,第16讲,小甲鱼说:多跟你的小女朋友们出去逛一逛号~看看花花草草
orz
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-29 04:17:45 | 显示全部楼层
。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-29 10:53:42 | 显示全部楼层

输入小q会报错啊,改成这样就不会了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-29 11:17:57 | 显示全部楼层
被巧击的键盘丶 发表于 2014-7-29 10:53
输入小q会报错啊,改成这样就不会了。

我这个程序输入“q”不会报错,你看下面的注释:长度为1或者0的,都需要重新输入
下面三个注释分别对应上面的三个判断语句
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-29 11:50:05 | 显示全部楼层

。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-29 20:53:19 | 显示全部楼层
写的挺好的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-30 01:29:57 | 显示全部楼层
mumudontcry 发表于 2014-7-29 11:17
我这个程序输入“q”不会报错,你看下面的注释:长度为1或者0的,都需要重新输入
下面三个注释分别对应 ...

那我输入一位数字不也需要重新输入了吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-30 01:33:11 | 显示全部楼层
被巧击的键盘丶 发表于 2014-7-30 01:29
那我输入一位数字不也需要重新输入了吗?

要啊,你运行一下,不论输入的一位是什么,它都会提示重新输入
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-30 02:50:50 | 显示全部楼层
水一个  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-30 03:37:15 | 显示全部楼层
精神可嘉!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-30 03:56:23 | 显示全部楼层
被巧击的键盘丶 发表于 2014-7-30 01:29
那我输入一位数字不也需要重新输入了吗?

我在想你是不是没有搞懂and的判断方式,and只要判断为0,就不会允许行后面的程序,所以那三个条件句一定要是那个顺序,不然会出错,也只有那个顺序,才可以保证注释上说的三个情况
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-30 15:46:25 | 显示全部楼层
mumudontcry 发表于 2014-7-30 01:33
要啊,你运行一下,不论输入的一位是什么,它都会提示重新输入

那不是算误判?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 17:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表