elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Programación
| |-+  Python (Moderador: Danielㅤ)
| | |-+  [Python] - Ejercicio Concatenación
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Python] - Ejercicio Concatenación  (Leído 5,776 veces)
ChicoMaravilla

Desconectado Desconectado

Mensajes: 61



Ver Perfil
[Python] - Ejercicio Concatenación
« en: 24 Enero 2011, 01:31 am »

Buenas noches a todos, Acudo a este foro porque tengo un pregunta sobre un ejercicio. bueno, es el ejercicio numero 272 del libro marmota, el cual dice:


· 272 Diseña una función llamada es_repeticion que reciba una cadena y nos diga si la
cadena está formada mediante la concatenación de una cadena consigo misma. Por ejemplo,
es_repeticion(’abab’) devolverá True, pues la cadena ’abab’ está formada con la cadena ’ab’
repetida; por contra es_repeticion(’ababab’) devolverá False

Bueno, yo lo que hice fue lo siguiente:

Código
  1. def es_repeticion(x):
  2.    letras=len (x)
  3.    mitad=letras/2
  4.    mitadmitad=mitad-1
  5.    lista=list(x)
  6.    if letras%2==0:
  7.        if lista[mitadmitad::]==lista[:mitadmitad:]:
  8.            return True
  9.        else:
  10.            return False
  11. repeticion=raw_input("Dame una concatenacion: ")
  12. print es_repeticion(repeticion)

si alguien podría decirme mi error, o cea el script ejecuta sin errores, pero siempre me devuelve false, aun siendo true.
desde ya muchas gracias.


En línea

ChicoMaravilla

Desconectado Desconectado

Mensajes: 61



Ver Perfil
Re: [Python] - Ejercicio Concatenación
« Respuesta #1 en: 24 Enero 2011, 18:23 pm »

uuuuuuuuuuuh XD ya descubrí mi error

alfinal el script es así:

Código
  1. def es_repeticion(x):
  2.    letras=len (x)
  3.    mitad=letras/2
  4.    mitadmitad=mitad-1
  5.    lista=list(x)
  6.    if letras%2==0:
  7.        if lista[mitad::]==lista[:mitad:]:
  8.            return True
  9.        else:
  10.            return False
  11. repeticion=raw_input("Dame una concatenacion: ")
  12. print es_repeticion(repeticion)

saque el mitadmitad, se ve que razone mal, porque yo puce mitad mitad que era la mitad-1 ya que el indice de las listas empieza con 0 y por eso lo hice.

 :laugh:


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda ejercicio python xD « 1 2 3 4 »
Python
kyps 34 17,363 Último mensaje 7 Enero 2010, 22:59 pm
por kyps
[Python] Ejercicio del deudor
Python
ChicoMaravilla 2 4,980 Último mensaje 2 Diciembre 2010, 15:17 pm
por ChicoMaravilla
[Python] Problemas con un ejercicio
Python
Latuen 2 5,082 Último mensaje 28 Enero 2011, 14:06 pm
por RyogiShiki
Problema ejercicio en python
Ejercicios
Patry46 0 3,378 Último mensaje 13 Abril 2012, 12:08 pm
por Patry46
AYUDA ejercicio en python
Ejercicios
jasson94 1 3,706 Último mensaje 16 Noviembre 2012, 20:38 pm
por Novlucker
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines