Ajuda com Questão

3 respostas
antonio_nobrega

Gente, sou novo aqui no forum e sou novo em programação também, estou dando meus primeiros passos com java.
Estava tentando fazer aquele famoso problema de reconhecer se uma palavra é um palíndromo ou não mas não consigo fazer do jeito que quero.

public static void main(String[] args) {
		String palavra;
		int charInicial, charFinal;

		Scanner input = new Scanner(System.in);

		System.out.println("Digite a palavra que você deseja consultar: ");
		palavra = input.next(); 

		charInicial = 0;
		charFinal = palavra.length() - 1;

		while (charInicial < charFinal) {
			if (palavra.charAt(charInicial) != palavra.charAt(charFinal)){	
				System.out.println("Não é palíndromo. =/");
			}
			charInicial++;
			charFinal--;
			
		}
		System.out.println("É palíndromo!!");
	
	}

Eu consigo fazer esse programa com a classe StringBuffer, mas gostaria de conseguir com charAt também pra aprender. Depois de passar tempinho olhando pra esse programa decidi pedir ajuda já que não tenho todo o tempo do mundo pra me concentrar somente nele. Eu sei qual é o meu erro ai mas não sei como ajeita-lo, quando não é palíndromo ele imprime varias vezes ( a quantidade de vezes que ele chegou os chars ) a frase Não é palindromoe depois imprime É palíndromo, não sei se é ou estresse mas não estou achando solução.

3 Respostas

E

Dica 1: uma palavra pode ter um número par ou um número ímpar de letras.
Dica 2: se uma palavra tem um número ímpar de letras, a letra do meio é igual a si mesma.
Dica 3: crie um método com tipo de retorno boolean. Faça-o retornar false quando encontrar a primeira letra diferente. Se não achar nenhuma letra diferente, retorne true. Então chame esse método, em vez de usar a tal “programação orientada a linguiça”, que é tentar escrever tudo no mesmo método.

ViniGodoy

Uma boa opção é usar a busca do fórum (ou do google). Você teria caído nessa página aqui:
http://www.guj.com.br/posts/list/96672.java#519330

antonio_nobrega

Muito obrigado pelas respostas e me desculpem por não ter procurado mais. Botei palindromos no google sim mas não achei o seu post Vini. Minhas sinceras desculpas.

Criado 14 de setembro de 2010
Ultima resposta 14 de set. de 2010
Respostas 3
Participantes 3