Procedure isPrime(v.i) If v <= 1 : ProcedureReturn #False ElseIf v < 4 : ProcedureReturn #True ElseIf v % 2 = 0 : ProcedureReturn #False ElseIf v < 9 : ProcedureReturn #True ElseIf v % 3 = 0 : ProcedureReturn #False Else Protected r = Round(Sqr(v), #PB_Round_Down) Protected f = 5 While f <= r If v % f = 0 Or v % (f + 2) = 0 ProcedureReturn #False EndIf f + 6 Wend EndIf ProcedureReturn #True EndProcedure OpenConsole() Euler.d = 0.5772156649 ;0153286 For x.i = 2 To 1e8 If isPrime(x) m.d = m + Log(1-(1/x)) + (1/x) EndIf Next x PrintN("MM = " + StrD(Euler + m)) PrintN(#CRLF$ + "--- terminado, pulsa RETURN---"): Input() CloseConsole()