¿La cadena ‘string’ es un palíndromo?

LIDIA LIPE SCHLIEPER

//  Este programa nos dice si la cadena introducida es palíndromo (devuelve 1) o no lo es (devuelve 0).

#include <stdio.h>
#include <stdlib.h>

#define DIM 20

int main()
{
    char string [DIM], *p, *q;
    int i=0, j=0, resultado;

    printf("Introduzca el posible palindromon");
    gets(string);

    if(*string==») return 1;  // cadena vacía consideramos palíndromo

    p=string;
    q=string;

    while ( q[i]!=») i++;  // recorremos cadena hasta el final

    i–;

    while ((j<=i)&&(p[j]==q[i]))  // comparamos de los dos bordes hasta el centro
    {
         j++;
         i–;
    }

    if (j>i) resultado=1;   // devolvemos resultado
    else resultado=0;

    printf("El resultado es %dn", resultado);

      system("PAUSE");
      return 0;
}

Esta entrada fue publicada en Sin categoría. Guarda el enlace permanente.

Una respuesta a ¿La cadena ‘string’ es un palíndromo?

  1. Ricardo dijo:

    he introducido el control de la cadena vacía al principioporque si no podía dar el resultado contrario…he cambiado el orden de los operandos en el && por el caso de las cadenas de 1 carácterque podría hacer q[-1]… prúebalo a ver de las 2 formas…he puesto comentarios.bien,ric.

Deja un comentario

Este sitio utiliza Akismet para reducir el spam. Conoce cómo se procesan los datos de tus comentarios.