Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - lokiam14

#1
por favor, quien me puede ayudar con ese ejercicio, ya lo en gran parte, me corre haci como esta, pero ahora necesito crear la funcia boolPalindrome(ptNODO frase)l, xq no puedo tener en el programa principal, la parte q me dice si una palabra es palindromo, quienme ayuda

Código (cpp) [Seleccionar]
/*
Se tiene una lista en la que se han introducido pedidos
según el orden de llegada, por lo que puede haber pedidos
del mismo artículo. Se pide escribir un programa que llene
la lista como la anteriormente descrita y, dada esa lista,
llamar a una función devuelva un único elemento por cada
artículo, en el cual el campo Cant_Pedidatenga la suma
detodas las cantidades pedidas de ese artículo. No se
pueden utilizar estructuras auxiliares

La función'boolPalindrome(ptNODO frase)
*/

#include <cstdlib.h>
#include <iostream.h>
#include<conio.h>

struct datos
{
    char frase[50];
};
typedef datos DATO;

struct NODO
{ DATO  Info;
NODO  *sig, *ant;
};
typedef  NODO*  ptNODO;


ptNODO CrearNodo(DATO X)
{ ptNODO NUEVO;
NUEVO = new NODO;
NUEVO->Info = X;
NUEVO->sig = NULL;
NUEVO->ant = NULL;
return NUEVO;
}


ptNODO Inicializar(ptNODO &inicio, ptNODO &fin, DATO X)
{       ptNODO NUEVO;
NUEVO = CrearNodo(X);
inicio = NUEVO;
fin = NUEVO;
}


void main (void)
{
ptNODO inicio=NULL,fin, NUEVO;
DATO X;
int op,n=0;
int i, j, cond=1;


cout<<"Introduzca la frase: ";
cin.getline(X.frase,50);


if (inicio==NULL)
  Inicializar(inicio, fin,X);
else
   {
    NUEVO=CrearNodo(X);
    fin->sig=NUEVO;
    fin = NUEVO;
   }

for (i=0; i<strlen(X.frase)-1; i++)
   {
      if (X.frase[i] == ' ')
         {
            for (j=i; j<strlen(X.frase)-1; j++)
               {
                  X.frase[j]=X.frase[j+1];
               }
            X.frase[strlen(X.frase)-1]='\0';
         }
}
cout<<"La frase sin espacios es:"<<X.frase;

//comprobar si es palindromo
for (i=0; i<strlen(X.frase)/2 && cond==1; i++)
  {
     if (X.frase[i] != X.frase[strlen(X.frase)-i-1])
       {
         cond=0;
       }
  }
if (cond == 1)
  {
    cout<<"\nEs palindromo.\n";
  }
else
  {
    cout<<"\nNo es palindromo.\n";
  }

cout<< "Press the enter key to continue ...";
getch();
}



Mod: Obligatorio el uso de etiquetas GeSHi. Los temas sobre programación van a sus respectivos subforos.