1 dahil, kendisi hariç olmak üzere bölenlerinin toplamına eşit olan sayılara mükemmel sayı adı verilir. Örneğin 6=1+2+3 olduğundan bir mükemmel sayıdır. Bir sonraki mükemmel sayı 28’dir. Çünkü 28=1+2+4+7+14 olur. Geliştirdiğimiz uygulama, kullanıcı tarafından girilecek bir sayının mükemmel olup olmadığını test etmekte, değil ise bir sonraki mükemmel sayıyı hesaplamaktadır.
Kod:
Public Class Form1
Dim sayi, sayi1, toplam, k As Long
Private Sub BtnKontrol_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles BtnKontrol.Click
sayi = TxtSayi.Text
toplam = 0
For k = 2 To sayi / 2
If sayi Mod k = 0 Then toplam = toplam + k
Next
If toplam + 1 = sayi Then
MsgBox("MÜKEMMEL!")
Else ‘Sayı mükemmel değil ise bir sonrakini ara:
sayi1 = sayi
Do
toplam = 0
sayi1 = sayi1 + 1
For k = 2 To sayi1 / 2
If sayi1 Mod k = 0 Then toplam = toplam + k
Next
Loop Until toplam + 1 = sayi1
MsgBox(sayi1)
End If
End Sub
End Class