Kendisi hariç bütün pozitif bölenlerinin toplamı kendisine eşit olan sayılara mükemmel sayı denir. C# Windows Form ile kullanıcının girdiği sayının mükemmel sayı olup olmadığını kontrol eden ve kullanıcının textbox’a girdiği sayıya kadar olan mükemmel sayıların listelenmesini sağlayan bir örnek oluşturacağız. Örneğimizde Mükemmel sayıların listelenmesini iç içe For Döngüsü kullanarak gerçekleştireceğiz. Bulunan mükemmel sayıları listBox içinde listeleyeceğiz.
Örneğimizde kullanıcının textBox içine girmiş olduğu sayının Mükemmel Sayı olup olmadığını kontrol etmek için Kontrol Et butonunu kullanacağız. Listele butonu ile ise textbox’ a girilen sayıya kadar olan Mükemmel sayıları bularak listBox içine ekleyeceğiz.
Kontrol Et Butonu için kodlarımız;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
private void button1_Click(object sender, EventArgs e) { int sayi; sayi = Convert.ToInt32(textBox1.Text); int toplam = 0; for (int i = 1; i <= sayi / 2; i++) { if (sayi % i == 0) { toplam = toplam + i; } } if (sayi == toplam) { MessageBox.Show("Girdiğiniz Sayı Bir Mükemmel Sayıdır"); } else { MessageBox.Show("Girdiğiniz Sayı Bir Mükemmel Sayı Değildir"); } } |
Listele Butonu için kodlarımız;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
private void button2_Click(object sender, EventArgs e) { listBox1.Items.Clear(); int sayi; int toplam; sayi = Convert.ToInt32(textBox1.Text); for(int i=2;i<=sayi;i++) { toplam = 0; for(int j=1;j<=(i/2);j++) { if (i % j == 0) { toplam = toplam + j; } } if (i == toplam) { listBox1.Items.Add(i); } } } } |
1-1000000 arası mükemmel sayıları listeleyen ekran çıktısı: