Palindrom

Palindrom to łańcuch tekstowy, który czytany normalnie jak i wspak daj taki sam ciąg. Chcemy napisać metodę, która zwróci nam prawdę jeśli przekazany jako argument łańcuch znaków jest palindromem, a fałsz jeśli nie jest.
// wykorzystujemy klasę Scanner z pakietu java.util
import java.util.*;

/**
 * Palindrom
 * @author kodatnik.blogspot.com 
 */ 
public class Palindrom {
 
 // metoda palindrom zwraca prawdę bądź fałsz 
 // dla przekazanego jako parametr łańcucha tekstowego
 public static boolean palindrom(String lancuch) {
  
  // tworzymy nowy obiekt klasy StringBuilder
  StringBuilder tekst = new StringBuilder(lancuch);
  
  // wykorzystujemu metodę reverse() do odwrócenia łańcucha
  // oraz equals() do sprawdzenia czy oba łańcuchy są takie same
  return lancuch.equals(tekst.reverse().toString());
 }

 public static void main(String[] args){
  
  Scanner sc = new Scanner(System.in);
  System.out.print ("Podaj łańcuch tekstowy: " );
  
  // pobieramy od użytkownika łańcuch tekstowy
  String lancuch = sc.nextLine();
  
  // wyświetlamy na ekranie informacje czy podany wyraz jest palindromem
  System.out.println("Łańcuch tekstowy: " + lancuch + (palindrom(lancuch) ? " jest" : " nie jest") + " palindromem"); 
 }
}
Pokazana metoda uwzględnia wielkość liter, wyraz Kajak nie będzie palindromem.
W programie zastosowano trójargumentowy operator ?:. Sprawdza on wyrażenie logiczne i zwraca dla prawdy wyrażenie występującą po ?, a dla fałszu po :. Jest to skrócona wersja if else.
Przykładowe uruchomienia programu:
Podaj łańcuch tekstowy: kajak
Łańcuch tekstowy: kajak jest palindromem
Podaj łańcuch tekstowy: marcin
Łańcuch tekstowy: marcin nie jest palindromem


0 Komentarzy - Palindrom

Prześlij komentarz

Możesz użyć niektórych tagów HTML, takich jak <b>, <i>, <u>, <a> Nie spamuj :)

Popularne posty