C# ta Girilen Sayının Asal Olup Olmadığını Yazan Program ?

Konu: C# ta Girilen Sayının Asal Olup Olmadığını Yazan Program ?

  1. #1
    emretanriverdi

    Standart C# ta Girilen Sayının Asal Olup Olmadığını Yazan Program ?

    Arkadaşlar C# ta textbox a girilen bi sayının asal mı değilmi olduğunu bulan bi program nasıl yazabiliriz?Uğraştım fakat bulamadım. bana açıklayarak anlatabilir misiniz?
  2. #2
  3. #3
    emretanriverdi

    Standart

    Alıntı barankaynak Nickli Üyeden Alıntı Mesajı göster
    valla kardeş hiç bişey anlamadım kusura bakma ama . bide sanırsam bu c# console için. açıklamalı olarak anlatabilir misin?
  4. #4
    engerex

    Standart

    Çeşitli yol izleyebilirsin.
    Örneğin;
    Sayımız 47 olsun.
    -Bir döngü oluşturursun. Sayının yarısına kadar döngüyü çalıştırırsın. 47 mod SAYIMIZ ile kalanı bulursun.

    Bir diğer yöntem 47'nin kare kökü = 6.855... tam sayı kısmı = 6 >>> Döngüyü sadece 2'den 6'ya kadar çalıştıralım. Eğer 2, 3, 4, 5, 6'ya bölünmezse asaldır. (47 mod SAYIMIZ)
  5. #5
    annttiigs

    Standart

    Yani bunu modellemek bu kadar zor olmasa gerek. Açıyorsunuz; google.
    Sonrasında asal sayı olma kurallarından birini seçiyorsunuz. Yapacağınız şey iki tane for iki tane if.
    Eğer bunları yapamıyorsanız biraz ağır gibi gelecek ama doğru bir söz olacak. Bence olaya en baştan başlayın.
  6. #6
    BeyDadaş

    Standart

    for (long i = 1; i < 1000000; i++){

    bool asalMi = true ;

    //Sayının asal olup olmadığını kontrol ediyor

    for (int = j = 2; j <i;j++){

    if (i % j == 0){

    asalMi = false;
    break;
    }

    }

    //asal olan sayılar ekrana yazdırılıyor

    if (asalMi){

    listBox1.ıtems.Add(i + " ");

    }

    }
  7. #7
    emretanriverdi

    Standart

    Alıntı annttiigs Nickli Üyeden Alıntı Mesajı göster
    Yani bunu modellemek bu kadar zor olmasa gerek. Açıyorsunuz; google.
    Sonrasında asal sayı olma kurallarından birini seçiyorsunuz. Yapacağınız şey iki tane for iki tane if.
    Eğer bunları yapamıyorsanız biraz ağır gibi gelecek ama doğru bir söz olacak. Bence olaya en baştan başlayın.
    kardeş bizde öğrenmeye çalışmak için soruyoruz zaten. bilsek sormayız.belki çok kolaydır belki çok zordur ama ben yapamadım !

    - - - Mesaj Güncellendi - - -

    Alıntı BeyDadaş Nickli Üyeden Alıntı Mesajı göster
    for (long i = 1; i < 1000000; i++){

    bool asalMi = true ;

    //Sayının asal olup olmadığını kontrol ediyor

    for (int = j = 2; j <i;j++){

    if (i % j == 0){

    asalMi = false;
    break;
    }

    }

    //asal olan sayılar ekrana yazdırılıyor

    if (asalMi){

    listBox1.ıtems.Add(i + " ");

    }

    }
    Çok sağol kardeş eline sağlık işime yaradı
  8. #8
    BeyDadaş

    Standart

    Önemli değil yazarak anlatılamayacağı için kodu yazdım sadece kusura bakma.
  9. #9
    mutahhar

    Standart

    o sayıya kadar olan sayıları tek tek denemenize gerek yok. girilen sayının yarısına kadar olan sayıları denemeniz yeterli olacaktır. bu işlem süresini kısaltır.
  10. #10
    engerex

    Standart

    Alıntı ndrshn Nickli Üyeden Alıntı Mesajı göster
    o sayıya kadar olan sayıları tek tek denemenize gerek yok. girilen sayının yarısına kadar olan sayıları denemeniz yeterli olacaktır. bu işlem süresini kısaltır.
    2 hariç çift sayıları, 3 hariç katları, 5'in çift katlarını çıkar daha da kısalır.
    Kök yönteminde daha da kısa.
  11. #11
    emretanriverdi

    Standart

    Alıntı BeyDadaş Nickli Üyeden Alıntı Mesajı göster
    Önemli değil yazarak anlatılamayacağı için kodu yazdım sadece kusura bakma.
    Olsun kardeş yinede işime yaradı
  12. #12
    mutahhar

    Standart

    Alıntı engerex Nickli Üyeden Alıntı Mesajı göster
    2 hariç çift sayıları, 3 hariç katları, 5'in çift katlarını çıkar daha da kısalır.
    Kök yönteminde daha da kısa.
    abi o büyük sayılarda daha kullanışlı olur sanki. yani listeye atarken o kontrolleri yapsa sonra diğerlerini kontrol etse büyük sayılar için uygun sonuç verir gibi
  13. #13
    BeyDadaş

    Standart

    Alıntı ndrshn Nickli Üyeden Alıntı Mesajı göster
    o sayıya kadar olan sayıları tek tek denemenize gerek yok. girilen sayının yarısına kadar olan sayıları denemeniz yeterli olacaktır. bu işlem süresini kısaltır.
    Arkadaşın dediği gibi "1000000" değeri bir değişkene atanıp programın hızlı çalışmasını sağlaya bilir .

Konu Bilgileri

Bu konuyu görüntüleyenler

Şu an 1 kullanıcı var. (0 üye ve 1 konuk)

Benzer Konular

  1. Cevaplar: 4
    Son Mesaj: 12-03-2011, 19:59
  2. Bir gecede göğüslerim yok olup penisim çıktı...
    RuNaL - forum Gündem (Dünya/Türkiye)
    Cevaplar: 30
    Son Mesaj: 06-11-2010, 06:37
  3. Cevaplar: 4
    Son Mesaj: 29-08-2009, 21:53
  4. Cevaplar: 5
    Son Mesaj: 09-09-2007, 11:52
  5. 12 Kez Ölüp Dirildi
    alicia - forum Konu Dışı
    Cevaplar: 4
    Son Mesaj: 08-09-2007, 12:22