Os cuento, hoy me he puesto a hacer un programa bastante básico, que consiste en introducir una palabra o una frase y te devuelve si es un palíndromo o no.
Puesto que aún tengo un nivel muy muy básico (por no decir malo) al principio he aclarado que nunca se utilicen espacios, ni mayúsculas, ni acentos, y en fin, cualquier cosa que dificulte mucho más la programación.
Bueno os dejo el programa y la localización y el fallo que me pone, supongo que es importante decir que utilizo DEV-C++.
Espero que me d¡gáis una pista o algo de como solucionarlo, gracias.
Código:
#include <iostream>
#include <cstring>
using namespace std;
int n;
bool palindromo;
int j;
int main(){
int i;
char cadena;
cout << "Introduzca una palabra o cadena de ellas sin utilizar espacios y/o" << endl;
cout << " mayusculas, minusculas, acentos, etc. El programa le dira si la" << endl;
cout << " cadena introducida es un palindromo."<< endl;
cin >> cadena;
cin.get();
if (palindromo) cout<< "Es un palindromo.";
else cout<< " No es un palindromo.";
cin.get();
return 0;
}
bool palindromo
{ //AQUI MARCA EL FALLO Y PONE: INVALID FUNCTION DECLARATION
int j = sizeof(cadena)/sizeof(cadena[1]);
int k = 1;
do{
if(strcmp(cadena[k],cadena[j])==0) k++ j-- n=1;
else n=0;
} while( k != j+1 && n!=0);
if (n==1) return true; else return false;
}
#include <cstring>
using namespace std;
int n;
bool palindromo;
int j;
int main(){
int i;
char cadena;
cout << "Introduzca una palabra o cadena de ellas sin utilizar espacios y/o" << endl;
cout << " mayusculas, minusculas, acentos, etc. El programa le dira si la" << endl;
cout << " cadena introducida es un palindromo."<< endl;
cin >> cadena;
cin.get();
if (palindromo) cout<< "Es un palindromo.";
else cout<< " No es un palindromo.";
cin.get();
return 0;
}
bool palindromo
{ //AQUI MARCA EL FALLO Y PONE: INVALID FUNCTION DECLARATION
int j = sizeof(cadena)/sizeof(cadena[1]);
int k = 1;
do{
if(strcmp(cadena[k],cadena[j])==0) k++ j-- n=1;
else n=0;
} while( k != j+1 && n!=0);
if (n==1) return true; else return false;
}
Gracias por adelantado.