Найти все делители числа 1234 - VB
Формулировка задачи:
Найти все делители числа 1234
Не могу понять как решить
Решение задачи: «Найти все делители числа 1234»
textual
Листинг программы
Option Explicit
Function Primes(ByVal max&) As Long()
'Возвращает список простых чисел до крайнего элемента max
Dim i&, ii&, n&
If max < 2 Then Exit Function
ReDim b(max) As Byte, ll&(Fix(max / Log(max) * 2)): ll(0) = 2
For i = 3 To Fix(Sqr(max)) Step 2
If Not b(i) Then
n = n + 1: ll(n) = i
For ii = i * i To max Step i + i: b(ii) = True: Next
End If
Next
For i = i To max Step 2: If Not b(i) Then n = n + 1: ll(n) = i
Next: ReDim Preserve ll&(n): Primes = ll
End Function
Private Sub Form_Load()
Dim l&, ll&, s$, v
While l < 2: l = Val(InputBox("Введите число >1", , 1234)): Wend: ll = l
For Each v In Primes(ll)
While ll Mod v = 0: s = s & ", " & v: ll = ll / v: Wend
Next
MsgBox "Число: " & l & vbLf & "Делители: " & Mid(s, 3)
End
End Sub