Autor
|
Tema: palindromo (Leído 12,808 veces)
|
durasno
Desconectado
Mensajes: 373
|
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
Mensajes: 3.034
|
Lo acabo de hacer recien en el comentario y no lo probe, fijate si anda. #include <iostream> #include <string> #include <algorithm> using namespace std; int main(int argc, char *argv[]) { string str, str2; cin >> str; size_t pos = str.find_first_of(" "); while(pos != string::npos){ str.erase(pos); pos = str.find_first_of(" "); } str2 = str.substr(0, str.length()); reverse(str.begin(), str.end()); if(str2 == str) cout << "La frase '"<<str<<"' es palindroma." <<endl; else cout << "La frase '"<<str<<"' no es palindroma." <<endl; system("pause"); return EXIT_SUCCESS; }
ummm funciona con palabras más no con frases.
|
|
|
En línea
|
|
|
|
ALONSOQ
Desconectado
Mensajes: 62
|
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 int longitud; int inicio=0, fin; void palindromo (char palin[]); char palin[30]; main() { palindromo(palin); } void palindromo (char palin[]) { for(fin=longitud-1; palin[fin]==palin[inicio] && fin>=0; inicio++,fin--); if (inicio==longitud) { } else { } }
|
|
|
En línea
|
|
|
|
fary
|
Mucho más simple #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char Palabra[100]; int i,len; printf("Introduce la palabra: "); for (i=0;i!=len;i++) { if (Palabra[i] != Palabra[len-i-1]) break; } if (i ==len ) printf("Palindroma\n"); else printf("No es palindroma\n"); return 0; }
|
|
|
En línea
|
Un byte a la izquierda.
|
|
|
ALONSOQ
Desconectado
Mensajes: 62
|
Muchas gracias por tu respuesta
por cierto que significa memset(Palabra,0,100);?
gracias
|
|
|
En línea
|
|
|
|
|
X3R4CK3R
Desconectado
Mensajes: 74
Divide y vencerás
|
por cierto que significa memset(Palabra,0,100);? http://bit.ly/HniJLP google no muerde ni tampoco cplusplus.com Saludos
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Palindromo con Pilas
Programación C/C++
|
Muffin
|
1
|
14,905
|
28 Enero 2011, 02:32 am
por ricardo_b
|
|
|
Duda funcion palindromo
Programación C/C++
|
cazagavilan
|
2
|
3,039
|
9 Abril 2012, 16:07 pm
por cazagavilan
|
|
|
vector simetrico (palíndromo)
Programación C/C++
|
indict
|
3
|
5,674
|
16 Diciembre 2012, 22:39 pm
por bemone
|
|
|
Palindromo en un archivo
Programación C/C++
|
Eva93
|
8
|
4,496
|
30 Agosto 2013, 13:20 pm
por Eva93
|
|
|
Decir si un vector es palindromo o no
Programación C/C++
|
sora_ori
|
3
|
7,980
|
16 Diciembre 2013, 13:35 pm
por leosansan
|
|