Crossin的编程教室

标题: 习题十一 [打印本页]

作者: 万建涛    时间: 2017-3-24 20:32
标题: 习题十一
print '输出不超过200的回文数'
# 外层是控制输出的个数
for i in range(1,201):
    # 把遍历的数转换成字符串
    word=str(i)
    # 计算出字符串的长度
    n=len(word)
    # 遍历从
    for e in range(n/2):
        if word[e]==word[n-1-e]:
            print i



不知道哪里不对,结果不对,我这是取出回文数,和体还有点不同

作者: crossin先生    时间: 2017-3-25 23:16
你取回文数没什么不对吧。只不过你没有考虑只有1位的情况

但题目是平方是回文数
作者: 万建涛    时间: 2017-3-26 19:17
crossin先生 发表于 2017-3-25 23:16
你取回文数没什么不对吧。只不过你没有考虑只有1位的情况

但题目是平方是回文数 ...

老师,一位数的情况怎么写,改循环条件总是写错
作者: crossin先生    时间: 2017-3-26 20:35
万建涛 发表于 2017-3-26 19:17
老师,一位数的情况怎么写,改循环条件总是写错

可以单独加一段处理
if n == 1:
    print i
作者: 376909437    时间: 2017-7-22 21:10

for N in range(1,201):
  num=N*N
  i=0
  l=[]
  for  c in str(num):
        i+=1
        l.append(c)
  ls=[]
  while i>=1:
    ls.append(l[i-1])
    i-=1
   
  if ls==l:
        print N
        


看到答案才知道[::-1]的用法
作者: haohonglee    时间: 2017-9-1 00:22
376909437 发表于 2017-7-22 21:10
for N in range(1,201):
  num=N*N
  i=0

我也是,学习了
作者: haohonglee    时间: 2017-9-1 00:23
将列表a倒序处理,如果a=[1,2,3],则a[::-1]=[3,2,1]。前两个冒号表示处理整个列表,也可以写上参数表示处理列表的一部分,例如a[2:0:-1]=[3,2],第一个参数表示起始点包括起始点,第二个参数表示结束点但不包括结束点。最后一个参数如果为负的话,需要保证第一个参数大于第二个参数,表示依次递减逆序,否则会输出空列表。最后一个参数为正同理。

作者:任育成
链接:https://www.zhihu.com/question/28600108/answer/41420669
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。




欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/) Powered by Discuz! X2.5