14 Mayıs 2013 Salı

C# ile Asal Sayı Bulma ve Bulunan Sayıyı Listbox'a Ekleme

Merhaba arkadaşlar,

Bu örneğimizde C# ile klavyeden girilen bir sayıdan sıfıra kadar olan asal sayıları hesaplama programı yapacağız. Bu işlem için öncelikle formumuzu oluşturalım.

Form için gerekenler:

1 Adet Button
1 Adet Textbox
1 Adet Listbox
asal, sayi, listbox, hesaplama, c#, c, gorsel, klavyeden, girilen, sayi, for, sharp, ekleme

Formumuzu oluşturduktan sonra button1'e tıklayıp button1_click bölümüne aşağıdaki kodları yazıyoruz.


 int sayi, sayac, i, j;
            sayi = int.Parse(textBox1.Text);
            sayac = 0;
            listBox1.Items.Clear();
            for (i = 2; i <= sayi; i++)
            {
                for (j = 1; j <= i; j++)
                {
                    if (i % j == 0)
                    {
                        sayac = sayac + 1;
                    }
                }
                if (sayac == 2)
                {
                    listBox1.Items.Add(i);
                }
                sayac = 0;
            }

1. Satırda int tipinde sayi, sayac, i ve j değişkenlerimizi oluşturuyoruz.
2. Satırda sayi değişkenimiz int(sayısal) tipte bir değişken olduğu için bunu Parse komutu ile string bir değişken haline çeviriyoruz.
3. Satırda sayaç değişkenimizi sıfıra eşitliyoruz.
4. Satırda hesapla butonuna her bastığımızda listbox içindeki verileri temizlememizi sağlayacaktır.
5. Satırda bir for döngüsü oluşturup bu döngüyü girilen sayıdan sıfıra kadar sağlamasını istiyoruz.
6-8-10. Satırda bir for döngüsü daha oluşturup j değişkenin i değişkeninden küçük olduğu durumlarda yani sayımız ilk for döngüsünde her arttığında, artan sayının modunu j değişkenimize göre alıyoruz eğer bu sayının modu sıfıra eşit ise sayac değişkenimizi 1 arttırıyoruz.
13-15-17. Satırda ise bir if döngüsü kurup sayac değişkenin 2ye eşit olduğu durumlarda listbox'a i değişkeninin değerini ekletiyoruz, sayac değişkenimizin 2 ye eşit olmadığı durumlarda ise döngüden çıkıp sayac degikenini tekrar sıfıra eşitliyoruz.

Hepsi bu kadar :)


Hiç yorum yok:

Yorum Gönder

Görüşlerinizi bildirdiğiniz için teşekkür ederim.