Dim As String charS(4) charS(1) = "0123456789" charS(2) = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" charS(3) = "abcdefghijklmnopqrstuvwxyz" charS(4) = "!""#$%&'()*+,-./:;<=>?@[]^_{|}~" charS(0) = charS(1) + charS(2) + charS(3) + charS(4) Dim As Integer howBig, howMany Do Print !"------ Password Generator ------\n" Input "Longitud de la contrase¤a (n>=4): ", howBig If howBig < 1 Then Sleep: End Input "Cantidad de contrase¤as (n>=1): ", howMany Loop While howMany < 1 Print !"\nGeneradas"; howMany; " contrase¤as de"; howBig; " caracteres" Dim As Integer i = 0 Dim As String password, Ok, w While i < howMany password = "" Ok = "...." For j As Integer = 1 To howBig w = Mid(charS(0), Int(Rnd * Len(charS(0))) + 1, 1) For k As Byte = 1 To 4 If Instr(charS(k), w) Then Ok = Left(Ok, k-1) + "*" + Mid(Ok, k+1) Next k password += w Next j If Ok = "****" Then i += 1 Print Using "##. &"; i; password End If Wend Sleep