lubcat 发表于 2017-2-16 22:45:04

回文联小问题

def huihun():
   

    temp = input('shu ru zi fu chuan:')
    i = 0
    length = len(temp)
    if length ==1 :
      print('zhi you yi ge zi!! bu suan!!')
    else:
      while i<=length/2:
            
            if temp != temp:
                print('bu shi hui hun lian!')
                break
            else:
                i += 1
            print('shi hui hun lian!!!')

使用循环实现回文判断。
运行结果,对于单字符可以返回提示,对于非回文可以确认。
但是对于回文就出现出多次的正确提示。次数是输入字符串长度的一半,
请教大佬,这个有什么可以修改的方法??
望大佬不吝赐教{:10_245:}

lubcat 发表于 2017-2-16 22:47:00

另外,这个可不可以使用迭代方式实现??
递归已经实现……

lubcat 发表于 2017-2-17 15:03:50

经前辈指点,
这种情况需要添加个标签,用以确定输出情况。   
这个方法没用递归,没用迭代,仅列表的基本方法
def huiwen():
    temp = list(input('请输入字符串:'))
    b = temp[::-1]
    i = 0
    flag = 0
    length = len(temp)
   
    if temp == b and i<=length:
      i += 1
    else:
      flag = 1
      
    if flag ==0:
      print('回文句!')
    else:
      print('不是回文句!')

sd小舅子 发表于 2017-2-21 10:16:12

def huiwen(s):
        list1 = list(s)
        list2 = list(s)
        list2.reverse()
        if list1 == list2:
                print('是回文!')
        else:
                print('不是回文!')
页: [1]
查看完整版本: 回文联小问题