Foro de elhacker.net

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.

Código:

#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
  1. class Palindromo:
  2.    def __init__(self):
  3.        self.__palabra = "Introduce una palabra"
  4.    def palabra(self,cadena=""):
  5.        if cadena!= "":
  6.            resultado= cadena[::-1]
  7.            if cadena == resultado:
  8.                respuesta="Es un palindromo"
  9.            else:
  10.                respuesta="No es un palindromo"
  11.            return respuesta
  12.        else:
  13.            return self.__palabra
  14.  
  15. palindromo=Palindromo()
  16. pregunta=input("Escriba una palabra: ")
  17. final=palindromo.palabra(pregunta)
  18. print(final)
  19.  
  20.  


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...

Código:
##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.