Hola de nuevo. Bueno ya averigué como recorrer la cadena y también cómo obtenerla con espacios blancos desde la consola. Estoy haciendo un pequeño programa que me diga si una palabra es palíndromo o no.
import java.util.Scanner;
public class Palindromo
{
public static void main( String args[] )
{
String cadena;
Scanner entrada = new Scanner( System.in );
System.out.printf( "\n Deme cadena : " );
cadena = entrada.nextLine();
if ( esPalindromo( cadena ) )
System.out.printf( "\n %s ES un palindromo\n", cadena );
else
System.out.printf( "\n %s NO es un palindromo\n", cadena );
}
// devuelve true si la cadena "s" es un palíndromo, false en caso contrario
public static boolean esPalindromo( String s )
{
int lcar, rcar;
boolean bandera;
lcar = 0;
rcar = s.length() - 1;
bandera = true;
while ( (lcar <= rcar) && bandera ) {
if ( s.charAt(lcar) != s.charAt(rcar) ) bandera = false;
++lcar;
--rcar;
}
return bandera;
}
}
Pero quiero preguntar 2 cositas:
1) ¿Por qué me exige retornar como static en la función esPalindromo?
2) ¿Cómo hago para que el programa siga ejecutando hasta que el usuario decida salir?, o sea algo como ésto en C:
int main( void )
{
char cadena[80];
int continuar = 'S'; /* bandera de continuación */
/* ciclo de control del programa */
while ( continuar != 'N' ) {
/* */
printf( "\n\n\n\t\t Desea continuar? S/N: " );
fflush( stdin );
continuar = toupper( getchar() );
}
return 0;
} /* Fin de main */
Muchas gracias.