Skip to main content

Java Programlama : Asal Sayılar

Kodlarını paylaşacağım uygulama kullanıcı klavyeden sayısal değer olarak -1 girmediği sürece kullanıcıdan sayı alır ve o girilen sayinin asal olup olmadığını ekrana mesaj eder.  Bir sayının asal olup olmadığını farklı algoritmalar kullanarak öğrenebiliriz. Ben  aşağıdaki algoritmayı kullanmayı uygun gördüm.

Program main kısmı ve Asalmi() fonksiyonundan olusuyor. Kullanıcı ana programda bir sayi giriyor  ( -1 girmediği sürece ) ve o girilen sayı direk Asalmi() isimli fonksiyona gönderilerek sayının asal olup olmadığı kullanıcıya mesaj ediliyor.

 

 

 

 
package asal;
 
import javax.swing.JOptionPane;
 
/**
 *
 * @author Aytac Cici 
 * Bu program kullanıcı klavyeden -1 girene kadar sayı alır ve alınan her sayının asal olup 
 * olmadıgını kullanıcıya mesaj eder.
 */
public class Asal {
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
    int girilen=0;
    do
    {
     // Kullanıcıdan bir sayi JOptionPanel kullanarak bir sayi aliyoruz. 
     //  JOption a girdiğimiz herşey aslında bir Strigtir bizim bunu sayısal  bir değere
     // çevirmemiz lazım o yüzden Integer.parseInt metodu ile Stringi Integer'a cevirdik
     // ve elde ettigimi integer sayiyi Asalmi(int) isimli fonkisyona gonderdik.
    Asalmi(girilen=Integer.parseInt(JOptionPane.showInputDialog("Asalligini Kontrol Etmek İstedigini Sayiyi Girin : ")));  
 
    }while(girilen!=-1); // Kullanıcı -1 girmediği sürece. 
 
    }
 
 
    // Asalmi() isimli fonksiyon parametre olarak bir integer alir. 
    public static void Asalmi(int sayi)
    {
        int i ;
        int sayac=0;
        if(sayi==2)  // Eger gelen sayi 2 ise zaten asaldır.  
             System.out.println(sayi + " Sayisi Asaldir");   
       else
        {  // 2 den farklı değerler içinse su algoritmayı kullanacagız.
 
        /** Eğer bir sayi asalsa bir kendisine birde 1 e bolunebilir demektir 
          yani toplm bolen sayısı 2 den fazla olamaz. Yani biz diyebiliriz ki bir sayinin
          iki  boleni varsa bu sayı asaldır  daha fazla ise bu sayı asal değildir **/
        for(i=1; i<=sayi; i++) 
        // i  değerini 1 baslattık cunku 0 dan baslatırsak sıfıra bolme hatası alırız.
        {
            if(sayi%i==0)   
                // gelen sayi su anki i değerine  tam bolunebiliyorsa   Sayacı bir arttır.
                // burada i gelen sayiya gore değer alir , kullanıcı 5 gonderdi diyelim
                // i değerleri sırasıyla 1,2,3,4,5 olacaktır.
                // 5 sayisinin bunlardan kacının tam boldugu kontrol edilcektir. Görüldüğü üzere 
                // 5 sayisini tam bolen 1 ve 5 vardır. Bu durumlarda sayac artacaktır.  baska durumda sayac artmadı
                // için sayac=2 olacak ve sayımızın asal oldugu ortaya cıkacaktır.
                 sayac++;
        }
        if (sayac==2)
             System.out.println(sayi + " Sayisi Asaldir");
            else
            System.out.println(sayi + " Sayisi Asal Degildir");
    }
    }
}

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.

Java Programlama : Asal Sayılar” hakkında 1 yorum

Bir Cevap Yazın

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

Email
Print