Capicua

Pessoal, preciso de ajuda na criação de um programa Capicua, o qual testa se uma palavra, introduzida pelo utilizador é ou não uma capicua.
Exemplos: “ana”, “ele”, “matam”, “ovo”, “radar”, “e”, “rapar”, “osso”, “reviver”, “socos”.

Muitas formas de resolver, eis um exemplo:

public boolean isPalindromo(String palavra) {
    char[] letras = palavra.toCharArray();
    int quantidade = letras.length;
    int meio = quantidade / 2;
    for (int inicio = 0, fim = quantidade - 1; inicio < meio; inicio++, fim--) {
        if (letras[inicio] != letras[fim]) {
            return false;
        }
    }
    return true;
}
2 curtidas

O autor desse topico teve a mesma duvida que voce:

Capicua…kkkk nunca ouvi falar

Fiz da seguinte forma e resultou:

import java.util.*;

public class Capicua {

public static void main(String[] args) {
    Scanner teclado = new Scanner(System.in);
    System.out.println("Insira a palavra: ");
    System.out.print("=> ");
    String palavra = teclado.nextLine();
    if (new StringBuilder(palavra).reverse().toString().equals(palavra)) {
        System.out.println("É capicua!");
    } else {
        System.err.println("Não é capicua!");
    }

}

}

Obrigado a todos.

Assim é mais lento, mas também funciona
:slight_smile:

1 curtida