05-08-2025, 01:52 PM
Code: (Select All)
Dim number As _Integer64
Dim trial As _Integer64
Dim div_total As _Integer64
number = 6 'start even and add 2 per pass
top:
Do
div_total = 3 + number \ 2
start = 3
finish = number \ 2 - 1
Do Until start >= finish
If number Mod start = 0 Then
start_partner = number \ start
div_total = div_total + start + start_partner
finish = start_partner - 1
End If
If div_total > number Then Exit Do
start = start + 1
Loop
If div_total = number Then Print number
number = number + 2
Loop
That's about the best I can see off the top of my head for speeding things up, and that's still not fast, but it's doing a lot of math each pass like this.