Skip to main content

Java Programlama : String Palindrom Kontrolü

Aşağıdaki kaynak kodlarını paylasağım program kullanıcıdan aldığı stringin palindrom olup olmadığını kontrol edecektir. Ve yaptığı kontrole göre  “Girilen String Palindromdur” yada  “Girilen String Palindrom Değildir” mesajını ekrana yazdıracağız.

Palindrom String Nedir ?  Tersten okunuşu ile normal okunuşu arasında fark olmayan kelimelere palindrom kelimeler denir. Örneğin “aba” palindrom bir kelimedir. Çünkü gerek soldan okumaya başladığınızda gerekse sağdan okumaya başladığınızda aynı şekilde okunur. Bu tip kelimelere palindrom kelimeler denir.

Nasıl bir algoritma kullanacağımıza karar verelim.  Öncelikle kullanıcının girdiği bir string olacağı için bir tane string tipinden değişken tanımlamamız gerekiyor.  Sonra gerekli analizleri yaptığımızda  girilen kelimenin tersten okunusu bulmamız gerektğini  anlıyoruz. Onun içinde içi boş olan ikinci String türünden değişken oluşturuyoruz.  Ve İlk Stringin  en son karakterinden başlayarak  ikinci olarak tanımladığımız Stringe atıyoruz. Yani  ilk Stringin son karakteri diğerinin ilk karakteri olacak sekilde. Bir nevi diziyi kopyaliyoruz diyelim. Ama bu kopyala işlemi tersten oluyor. Daha sonra elimizde iki tane String değiskeni oluşuyor şimdi bu iki değişkenin birbirine eşit olup olmadığını kontrol edersek  sonuca varabiliriz.

Gerekli bilgileri verdiğimize göre kodu paylasabiliriz.

/*
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package palindromstring;
 
import javax.swing.JOptionPane;
 
/**
 *
 * @author Aytac Cici 
 * 14.04.2012 
 */
public class PalindromString {
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
    String GirilenString;
    GirilenString=JOptionPane.showInputDialog("String Giriniz");
     int i;
     int StringUzunlugu=GirilenString.length(); 
     // Girilen Stringin uzunlugunu tutar
     String ikinciString="";
     /**İlk Stringin tersini tutacağımız ikinci  bir String olusturuyoruz
      * bu stringe  GirilenString son karakterinden başlamak üzere tek tek bütün
      * kakakterleri kopyalacağız. misan İstanbul  kelimesi girildiğini varsayalim 
      * bu ikinciString isimli değişkenin ilk elemanı "l" olacaktır. Daha sonra
      * bu diziye karakter eklemeyed devam edilecek l karakterinin pesinde bir u 
      * karakteri geleckektir. Bildiğimiz string toplama  (birleştirme) işlemi
      *yapacağız.**/
   for(i=StringUzunlugu-1;i>=0;i--) 
       // İlk Stringin Son karakterinden başla ve ilk karakterine  kadar devam et
     ikinciString=ikinciString+GirilenString.charAt(i);
   /** İkinci String'e Girilen ilk Stringin i. karakterini ekle
   //charAt() isimli fonksiyon  i. sıradaki harfi döndürür. örneğin
     "Aytaç" kelimesisini girdigimizi varsayalim ve charAt(3) girdiğimizi varsayalim
     * bize "t" karakterini döndüreceketir.
   **/
 
     if(ikinciString.equals(GirilenString))
           // Girilen ilk String ile ikinci oluşturdugumuz stringin birbirine eşit
           // olup olmadığını kontrol eder.
        System.out.println(GirilenString+ " palindromdur");
        else
       System.out.println(GirilenString+ "palindrom değildir.");
 
    }
}

Başka bir örnek kodda görüşmek dileğiyle.

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

Aytaç Cici

İstanbul Üniversitesi Bilgisayar Mühendisliği mezunu bir Yazılım Geliştirici. Çeşitli zamanlarda Java, PHP, C# ve Delphi gibi diller kullanarak yazılım geliştirmiştir. Bir dönem SEO alanında da çalışmalar yapmıştır.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Email
Print