Ayuda con programa en java!

  • Autor Autor George Albert
  • Fecha de inicio Fecha de inicio
G

George Albert

Épsilon
Diseñador
Bueno pues soy noob todavia en la programacion en java y pues ando practicando
me dejaron realizar un programa el cual detecte o diga si una palabra es un palindrome* o no, la cuestion es que lo hice y corre pero cuando pongo por ejemplo:

* es una palabra, número o frase que se lee igual hacia adelante que hacia atrás.

anitalavalatina me dice ES PALINDROMO.

pero cuando pongo

aniitalavalatina me dice ES PALINDROMO
NO ES PALINDROMO

osea que me imprime dos resultados a la vez :S

tambien si pongo al inicio Mayusculas me marca como no palindromo aunque si lo es .

espero me puedan ayudar con este problema por favor les dejo el codigo que llevo hasta ahorita

Insertar CODE, HTML o PHP:
public class Palindromo

{

        public static void main(String[] args)
	{
                              
                String Palabra;
                
                System.out.println("Cual es la palabra:");
                Palabra=Teclado.readString();
                
                int a = 0;
                int z = Palabra.length()-1;
               	int x; 
               		
               	for(x=0; x<=0; x++)
               	{
               		 if (Palabra.charAt(a)==Palabra.charAt(z)) {                               
                                a++;
                                z--;
                         
                         
                              	 System.out.println(Palabra+ " es un PALINDROMO");
                              	 
               	}  
                               if (Palabra.charAt(a)!=Palabra.charAt(z)){
                               a++;
                               z--;
                               	
                               //	else
                               		System.out.println(Palabra+ "\t"+"no es PALINDROMO");
                               	
                               	
                               }
               		
               		
               		
               	}
               	
               	
                }        
                                
     }
 
Enlace eliminado
 
Pregunta, tuviste en cuenta que no es lo mismo procesar una palabra palindromo que sea par o impar ?

PD: M no es lo mismo que m 😛 (tenés que contemplar tanto minusculas como matusculas. Tendrias que restringir el string a lo mucho.
 
Pregunta, tuviste en cuenta que no es lo mismo procesar una palabra palindromo que sea par o impar ?

PD: M no es lo mismo que m 😛 (tenés que contemplar tanto minusculas como matusculas. Tendrias que restringir el string a lo mucho.

no la verdad no tube encuenta eso todavia ya que todavia no logro que me cuenta bien las cadenas de izquiera a derecha y biseversa por eso tambien preguntaba como se le podia hacer para que contada con mayusculas y minusculas jejeje
 
El tema es que en código puro mucho no te puedo ayudar porque todavía no se java.

Pero por ejemplo, tendrias que hacer un método por si la estructura es par y otra por si es impor (si es par, los "punteros" tienen que pasarse para veirficar, y si es impor, simplemente te fijas que sean iguales)

Pregunto, esto:

Insertar CODE, HTML o PHP:
a++;
z--;

Es la forma en que marcas el sub rango ? Si es así, simplemente lo haces doble a++ z-- A++ z--

Osea, te puedo ayudar en lo teórico pero no en los práctico proque no se la sintaxis de Java :S
 
El tema es que en código puro mucho no te puedo ayudar porque todavía no se java.

Pero por ejemplo, tendrias que hacer un método por si la estructura es par y otra por si es impor (si es par, los "punteros" tienen que pasarse para veirficar, y si es impor, simplemente te fijas que sean iguales)

Pregunto, esto:

Insertar CODE, HTML o PHP:
a++;
z--;

Es la forma en que marcas el sub rango ? Si es así, simplemente lo haces doble a++ z-- A++ z--

Osea, te puedo ayudar en lo teórico pero no en los práctico proque no se la sintaxis de Java :S


jeje no te preocupes gracias por eso voy a probar o tambien poner unas condiciones para que cuenten tambien las mayusculas xD

y en serio si es de gran ayuda ya que luego se pierde uno en la logica jejeje gracias voy a seguir intentando
 
Primero debes de convertirlo todo a mayusculas o minusculas. Despues copias la variable, la inviertes y las comparas.
 
Primero debes de convertirlo todo a mayusculas o minusculas. Despues copias la variable, la inviertes y las comparas.

Tal como dice diegomvsc2, esa es una bueno forma de hacerlo.
Para pasar toda la cadena a mayúsculas puedes usar la funcion toUpperCase(). Simplemente haces Palabras2 = Palabra.toUpperCase() y ya tienes la palabra en mayúsculas en la variable auxiliar Palabras2.

Para invertir el string y poder compararlo, puedes crear una función como "String invertirPalabra(Palabra)" con el siguiente código:

for (int x=Palabra.length()-1;x>=0;x--)
PalabraInvertida = PalabraInvertida + Palabra.charAt(x);
return PalabraInvertida;

Después comparas Palabra2 y el resultado de invertirla.

Esto debería andar.

Espero te ayude.

Saludos.
 
Atrás
Arriba