- 主题:求推荐习题册或类似的东东
俺上学时学过C 和JAVA,应该算是有底子,看到娃的python书,翻了翻,自认为python不过如此。
娃有个小学趣味数学的题:任意3位数,若其反序数与原数不等,将其与反序数相减(大的减小的),则经过几次后,必定会得到495.……
我自告奋勇用python解决验证问题,还跟娃吹牛1分钟搞定。结果在IDLE里,缺冒号,缩进不对,之类,5分钟没搞定……程序后来通了,但娃的老师说,这是写C的人写的……
于是,想有个针对性的由易到难的习题集之类的东东,和娃一起练练手,求推荐。娃的教材已经教了半年的海龟画图,我觉得有些偏了
对了,上述数学问题求验证代码开眼
--
修改:xiaoding0326 FROM 120.242.139.*
FROM 120.242.139.*
估计直接用你娃的那书来练就行了,趁娃不用时赶快全部提前做一遍。
你这例子最简单的写法(python3.4,不做任何输入检查,输错了会自动退出):
s = input('i(001-998): ')
i = int(s)
while i != 495 and i != 0:
i = abs(i - int(s[2::-1]))
s = '%03d' % i
print(s)
【 在 xiaoding0326 (xiaoding0326) 的大作中提到: 】
: 俺上学时学过C 和JAVA,应该算是有底子,看到娃的python书,翻了翻,自认为python不过如此。
: 娃有个小学趣味数学的题:任意3位数,若其反序数与原数不等,将其与反序数相减(大的减小的),则经过几次后,必定会得到495.……
: 我自告奋勇用python解决验证问题,还跟娃吹牛1分钟搞定。结果在IDLE里,缺冒号,缩进不对,之类,5分钟没搞定……程序后来通了,但娃的老师说,这是写C的人写的……
: ...................
--
FROM 183.220.25.*
# 小学生写法
s = input("输入任意三位数:")
while s != "495" and s != s[::-1]:
s = str(abs(int(s) - int(s[::-1])))
print(s)
--
修改:freesand FROM 39.183.134.*
FROM 39.183.134.*
赞,学习了。我写不出这么简练的代码。
【 在 freesand 的大作中提到: 】
: [code=py]# 小学生写法
: s = input("输入任意三位数:")
: while s != "495" and s != s[::-1]:
: ...................
--
FROM 112.42.69.*
这是函数式编程的写法,一般人还真不习惯
【 在 ToSimplicity (致简) 的大作中提到: 】
: 据说有C基础的人,应该看K&R的书。
: 我推荐看raymond hettinger视频,他的写法看起来就是优美,接近自然语言,结构也清晰。
: >>> reverse_int = lambda x: int(''.join(reversed(str(x))))
: ...................
--
FROM 123.114.58.*
写 PAT 之类 OJ 呗。当然可能需要另外看看 python 的书或者文档,读代码,毕竟风格不太一样。
【 在 wushunchao 的大作中提到: 】
: 估计直接用你娃的那书来练就行了,趁娃不用时赶快全部提前做一遍。
:
: 你这例子最简单的写法(python3.4,不做任何输入检查,输错了会自动退出):
: ...................
--
FROM 114.249.197.*
要是我教孩子,最后肯定变成分析
abc - cba = a0c - c0a = d00 - d (其中 d = a-c)
然后对9种d分类讨论最终证明这个命题…嗯而且还在小学高年级接受范围内
【 在 xiaoding0326 的大作中提到: 】
: 俺上学时学过C 和JAVA,应该算是有底子,看到娃的python书,翻了翻,自认为python不过如此。
: 娃有个小学趣味数学的题:任意3位数,若其反序数与原数不等,将其与反序数相减(大的减小的),则经过几次后,必定会得到495.……
: 我自告奋勇用python解决验证问题,还跟娃吹牛1分钟搞定。结果在IDLE里,缺冒号,缩进不对,之类,5分钟没搞定……程序后来通了,但娃的老师说,这是写C的人写的……
: ...................
--
FROM 114.249.197.*