Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: Dracco07 en 13 Marzo 2017, 00:27 AM

Título: Ejercicio Palindromo en Python
Publicado por: Dracco07 en 13 Marzo 2017, 00:27 AM
Buen dia

Me podrían ayudar con un ejercicio que estoy haciendo..

Se trata de generar un objeto en Python que me diga si es palidromo o no la palabra que ingrese

hice este código pero no logro que me regrese la respuesta
no se que me hace falta.



#Hacer una Clase que tenga un metodo para que evalue si es
#o no palindromo..

class Cadenas:
    def __init__ (self, cad1):
        self.cad1=cad1
        #self.cad2=cad2
    def pal(self):
        cad1,c,i,nom,cad,x = '',0,0,'','',''
        i = len(cad1)
        nom = cad1.lower()
        while i != c:
            for x in nom:
                cad = x + cad
                c=c+1
            if nom==cad:
                print (cad1, " Es Palindromo")
            else:
                print (cad1, " No es Palindromo")
        return cad1

cad1 = str(input('Dame una palabra: '))
op1=Cadenas(cad1)
print(op1.pal)



Muchas gracias de antemano
Título: Re: Ejercicio Palindromo en Python
Publicado por: tincopasan en 13 Marzo 2017, 02:04 AM
no tengo ganas de ponerme a corregir tu código, así que haré otro que cumpla la misma función, para que veas donde puede estar el error.
Código (python) [Seleccionar]

class Palindromo:
    def __init__(self):
        self.__palabra = "Introduce una palabra"
    def palabra(self,cadena=""):
        if cadena!= "":
            resultado= cadena[::-1]
            if cadena == resultado:
                respuesta="Es un palindromo"
            else:
                respuesta="No es un palindromo"
            return respuesta
        else:
            return self.__palabra

palindromo=Palindromo()
pregunta=input("Escriba una palabra: ")
final=palindromo.palabra(pregunta)
print(final)


Título: Re: Ejercicio Palindromo en Python
Publicado por: Dracco07 en 13 Marzo 2017, 02:40 AM
Muchas gracias

Ya lo he corregido, fue un error al no utilizar la variable de self.cad1
lo dejo por aqui...


##Hacer una Clase que tenga un metodo para que evalue si es
##o no palindromo..

class Cadenas:
    def __init__ (self, cad1):
        self.cad1=cad1
       
    def Pal(self):
        cad1 = self.cad1
        c,i,nom,cad,x = 0,0,'','',''
        i = len(cad1)
        nom = cad1.lower()
        while i != c:
            for x in nom:
                cad = x + cad
                c=c+1
            if nom==cad:
                #print (cad1, " Es Palindromo")
                return str(cad1 + " Es Palindromo")
            else:
                #print (cad1, " No es Palindromo")
                return str(cad1 + " No es Palindromo")

cad1 = input('Dame una palabra: ')
op1=Cadenas(cad1)

#op1.Pal()#Impresion de la funcion
print(op1.Pal())
Título: Re: Ejercicio Palindromo en Python
Publicado por: tincopasan en 13 Marzo 2017, 05:00 AM
que bueno que lo resolviste, pero... ¿tanto código para una palabra? si fuesen frases vaya y pase! se supone que hay que hacer las cosas funcionales y simples en vez de tanto código para lo mismo.