IMG-LOGO

JAVA Palindrom


Kullanıcı tarafından programa girilmiş bir dizenin palindrom olup olmadığını kontrol eden java programı. Palindrom, tersten okunuşu da aynı olan cümle, sözcük ve sayılara denilmektedir.
Örnek:
Kaçak, mum, sos, tat, küllük, 212, 54245...
Programda; kullanıcı bir dize girer. Program onu tersine çevirerek yeni bir dize oluşturur. Son olarak onu girdi dizesiyle karşılaştırırız.

JAVA Palindrom kontrolü yapan program

import java.util.*;
 
class Palindrome
{
  public static void main(String args[])
  {
    String original, reverse = ""; // String sınıfının nesneleri
    Scanner in = new Scanner(System.in);

    System.out.println("Palindrom olup olmadığı kontrol edilecek olan stringi girin");
    original = in.nextLine();

    int length = original.length();

    for (int i = length - 1; i >= 0; i--)
      reverse = reverse + original.charAt(i);

    if (original.equals(reverse))
      System.out.println("Palindrom.");
    else
      System.out.println("Palindrom değil.");
  }
}

JAVA String'i ters çevirmeden palindrom kontrolü yapan program

Bir dizenin başında ve sonunda karakterleri karşılaştırırız ve ortasına doğru hareket ederiz.

import java.util.*;
 
class Palindrome
{
  public static void main(String args[])
  {
    String inputString;
    Scanner in = new Scanner(System.in);
 
    System.out.println("Stringi girin");
    inputString = in.nextLine();
 
    int length  = inputString.length();
    int i, begin, end, middle;
 
    begin  = 0;
    end    = length - 1;
    middle = (begin + end)/2;
 
    for (i = begin; i <= middle; i++) {
      if (inputString.charAt(begin) == inputString.charAt(end)) {
        begin++;
        end--;
      }
      else
        break;
    }
    if (i == middle + 1)
      System.out.println("Palindrom");
    else
      System.out.println("Palindrom değil");
  }
}

Her iki programda da dizelerin büyük / küçük harfe duyarlı olduğunu düşünür, bunları büyük / küçük harf kullanımını göz ardı edecek şekilde değiştirebilirsiniz. Bunun için her iki dizeyi de küçük veya büyük harfe dönüştürebilirsiniz.