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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Ayuda para saber si una cadena es palíndromo o no en: 6 Diciembre 2021, 03:38 am
Buenas noches, agradecería si me ayudaran con mi código, por favor, ya que sólo me dice si una palabra es palíndromo pero si introduzco una frase, no funciona. Mi profesora me dijo que con el valor de N, ya sin los espacios, tenía que hacer el bucle (con for) y comparar cad[0] con cad[N-1]; cad[1] con cad[N-2] y así hasta llegar a cuando N es igual a la mitad de la cadena, pero creo que no supe como hacerlo. Este es mi código:

Código
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <string.h>
  4. #define L 50
  5.  
  6. void LEER_CADENA(char []);
  7. void VER_CADENA(char []);
  8. void QUITAR_ESPACIOS(char [], char []);
  9. void PALINDROMO (char[], char[]);
  10.  
  11. int main(){
  12.    char CAD[L];
  13.    char CADNUEVA[L];
  14.    int CON;
  15.    LEER_CADENA(CAD);
  16.    QUITAR_ESPACIOS(CAD,CADNUEVA);
  17.    VER_CADENA(CADNUEVA);
  18.    PALINDROMO(CAD,CADNUEVA);
  19.    getch();
  20. }
  21.  
  22. void LEER_CADENA(char cad[]){
  23.    printf("Ingresa la cadena: ");
  24.    gets(cad);
  25. }
  26.  
  27. void VER_CADENA(char cadnueva[]){
  28.    printf("\nLa cadena ingresada es: %s",cadnueva);
  29. }
  30.  
  31. void QUITAR_ESPACIOS(char cad[], char cadnueva[]){
  32.    int i,j,n;
  33.    i=0;
  34.    j=0;
  35.    n=strlen(cad);
  36.    for(i=0;i<n;i++){
  37.        if(cad[i]!=' '){
  38.            cadnueva[j]=cad[i];
  39.            j=j+1;
  40.        }
  41.    }
  42. }
  43.  
  44. void PALINDROMO(char cad[], char cadnueva[]){
  45.    int i,m,n;
  46.    i=0;
  47.    m=0;
  48.    int cont=0;
  49.    n=strlen(cad);
  50.    for(i=0;i<n/2;i++){
  51.            if(cad[i]!=cadnueva[m]){
  52.                cont++;}
  53.            if(cad[i]!=cadnueva[m]){
  54.                cont++;}
  55.            if(cad[i]!=cadnueva[m]){
  56.                cont++;}
  57.    }
  58.    if(cont==0) printf("\n\nEs un palindromo.\n");
  59.    else printf("\n\nNo es un palindromo.\n");
  60. }

MOD: Etiqueta GeSHi
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines