Const limite = 120 Declare Function esPrimo(n As Integer) As Boolean Declare Function ContandoFactoresPrimos(n As Integer) As Integer Function esPrimo(n As Integer) As Boolean If n < 2 Then Return false If n Mod 2 = 0 Then Return n = 2 If n Mod 3 = 0 Then Return n = 3 Dim As Integer d = 5 While d * d <= n If n Mod d = 0 Then Return false d += 2 If n Mod d = 0 Then Return false d += 4 Wend Return true End Function Function ContandoFactoresPrimos(n As Integer) As Integer If n = 1 Then Return false If esPrimo(n) Then Return true Dim As Integer f = 2, contar = 0 While true If n Mod f = 0 Then contar += 1 n = n / f If n = 1 Then Return contar If esPrimo(n) Then f = n Elseif f >= 3 Then f += 2 Else f = 3 End If Wend End Function ' Mostrar la sucencia de nĂºmeros atractivos hasta 120. Dim As Integer i = 1, longlinea = 0 Print "Los numeros atractivos hasta e incluyendo"; limite; " son: " While i <= limite Dim As Integer n = ContandoFactoresPrimos(i) If esPrimo(n) Then Print Using "####"; i; longlinea += 1: If longlinea Mod 20 = 0 Then Print "" End If i += 1 Wend End