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

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  palindromo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: palindromo  (Leído 12,671 veces)
durasno


Desconectado Desconectado

Mensajes: 373


Ver Perfil
Re: palindromo
« Respuesta #10 en: 14 Julio 2012, 05:36 am »

Citar
Si no eliminases los espacios, oraciones como "dabale arroz a la zorra el abad" no se cosiderarian palindromos, siendo que si se consideran como tal... o tampoco seria un palindromo el famoso "a man a plan a canal panama", que incluso hay programadores que han trabajado con este ultimo para extenderlo todo lo posible.
:) ya entendi... Saludos


En línea

Ahorrate una pregunta, lee el man
dato000


Desconectado Desconectado

Mensajes: 3.034



Ver Perfil
Re: palindromo
« Respuesta #11 en: 14 Julio 2012, 17:32 pm »

Lo acabo de hacer recien en el comentario y no lo probe, fijate si anda.

Código
  1. #include <iostream>
  2. #include <string>
  3. #include <algorithm>
  4.  
  5. using namespace std;
  6.  
  7. int main(int argc, char *argv[])
  8. {
  9. string str, str2;
  10. cin >> str;
  11.  
  12. size_t pos = str.find_first_of(" ");
  13. while(pos != string::npos){
  14. str.erase(pos);
  15. pos = str.find_first_of(" ");
  16. }
  17.  
  18. str2 = str.substr(0, str.length());
  19. reverse(str.begin(), str.end());
  20.  
  21. if(str2 == str)
  22. cout << "La frase '"<<str<<"' es palindroma." <<endl;
  23. else
  24. cout << "La frase '"<<str<<"' no es palindroma." <<endl;
  25.  
  26. system("pause");
  27.        return EXIT_SUCCESS;
  28. }

ummm funciona con palabras más no con frases.


En línea


ALONSOQ

Desconectado Desconectado

Mensajes: 62



Ver Perfil
Re: palindromo
« Respuesta #12 en: 7 Agosto 2012, 10:11 am »

Hola he retomado este tema y he encontrado este código, que de una manera facil y entendible para los que somos principaiantes, dice si una palabra es o no palindromo. Pero me surge la siguiente duda de principante, en el bucle for termina con ';' ( en los codigos que yo he hecho hasta ahora no se termina con ';') y si se elimina, aunque el programa compila y ejecuta, no funciona correctamente ¿ por que?

muchas gracias
Código
  1. int longitud;
  2. int inicio=0, fin;    
  3.  
  4.  
  5. void palindromo (char palin[]);
  6. char palin[30];
  7. main()
  8. {
  9. palindromo(palin);
  10. }
  11.  
  12. void palindromo (char palin[])
  13. {
  14.  
  15.     printf("dime una palabra:");
  16.     gets (palin);
  17.    longitud = strlen(palin);
  18.  
  19.  
  20.     for(fin=longitud-1; palin[fin]==palin[inicio] && fin>=0; inicio++,fin--);
  21.  
  22.         if (inicio==longitud)
  23.         {
  24.            printf( "Es palindromo");
  25.         }  
  26.         else
  27.         {
  28.            printf( "no es palindromo");  
  29.         }  
  30.  
  31.  
  32. }
En línea

fary


Desconectado Desconectado

Mensajes: 1.075



Ver Perfil WWW
Re: palindromo
« Respuesta #13 en: 7 Agosto 2012, 13:34 pm »

Mucho más simple

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. int main()
  6. {
  7. char Palabra[100];
  8. int i,len;
  9.  
  10. memset(Palabra,0,100);
  11.  
  12. printf("Introduce la palabra: ");
  13. scanf("%s",&Palabra);
  14.  
  15. len = strlen(Palabra);
  16.  
  17. for (i=0;i!=len;i++)
  18. {
  19. if (Palabra[i] != Palabra[len-i-1]) break;
  20. }
  21.  
  22. if (i==len) printf("Palindroma\n");
  23. else printf("No es palindroma\n");
  24.  
  25. system("PAUSE");
  26. return 0;
  27. }
En línea

Un byte a la izquierda.
ALONSOQ

Desconectado Desconectado

Mensajes: 62



Ver Perfil
Re: palindromo
« Respuesta #14 en: 7 Agosto 2012, 17:34 pm »

Muchas gracias por tu respuesta

por cierto que significa memset(Palabra,0,100);?

gracias
En línea

fary


Desconectado Desconectado

Mensajes: 1.075



Ver Perfil WWW
Re: palindromo
« Respuesta #15 en: 7 Agosto 2012, 17:49 pm »

Muchas gracias por tu respuesta

por cierto que significa memset(Palabra,0,100);?

gracias

Llena el buffer Palabra con bytes nulos.

http://www.cplusplus.com/reference/clibrary/cstring/memset/

En línea

Un byte a la izquierda.
X3R4CK3R

Desconectado Desconectado

Mensajes: 74


Divide y vencerás


Ver Perfil WWW
Re: palindromo
« Respuesta #16 en: 7 Agosto 2012, 17:52 pm »

por cierto que significa memset(Palabra,0,100);?

http://bit.ly/HniJLP

google no muerde :-X ni tampoco cplusplus.com

Saludos
En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Palindromo con Pilas
Programación C/C++
Muffin 1 14,850 Último mensaje 28 Enero 2011, 02:32 am
por ricardo_b
Duda funcion palindromo
Programación C/C++
cazagavilan 2 3,000 Último mensaje 9 Abril 2012, 16:07 pm
por cazagavilan
vector simetrico (palíndromo)
Programación C/C++
indict 3 5,618 Último mensaje 16 Diciembre 2012, 22:39 pm
por bemone
Palindromo en un archivo
Programación C/C++
Eva93 8 4,439 Último mensaje 30 Agosto 2013, 13:20 pm
por Eva93
Decir si un vector es palindromo o no
Programación C/C++
sora_ori 3 7,932 Último mensaje 16 Diciembre 2013, 13:35 pm
por leosansan
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines