VB.NET
Passwortgenerator
Ein einfacher Passwortgenerator bei dem optional die Anzahl der Zeichen angegeben werden kann.
Möchte man noch Sonderzeichen integrieren so ändert man einfach den String "base" in der Zeile 3 entsprechend ab.
Die Position der Zeichen in dem base - String werden in der Zeile 9 durch einen Zufallszahlengenerator gezogen der wiederum in Zeile 2 initialisiert wird. Über die Funktion Mid() wird das Zeichen an der entsprechenden Stelle ausgewählt. Da die Mid Funktion 1 basiert ist müssen wir sicherstellen, dass die kleinste Zufallszahl die 1 ist. Dies muss dann bei dem maximalen Wert berücksichtigt werden und zieht deshalb von base.length wieder 1 ab. Damit erhält man für den index immer eine Zufallszahl innerhalb der gültigen Grenzen.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
Function getPWD(Optional ByVal nSpaces = 6) As String
Randomize()
Dim base As String = "ABCDEFGHIJKLMNOPQRSTUVWXYZ _
abcdefghijklmnopqrstuvwxyz _
0123456789"
Dim PWD As String = ""
Dim index As Integer
For i = 0 To nSpaces - 1
index = CInt(1 + Rnd() * base.Length-1)
PWD += Mid(base, index, 1)
Next
Return PWD
End Function
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
Function getPWD(Optional ByVal nSpaces = 6) As String
Randomize()
Dim base As String = "ABCDEFGHIJKLMNOPQRSTUVWXYZ _
abcdefghijklmnopqrstuvwxyz _
0123456789"
Dim PWD As String = ""
Dim index As Integer
For i = 0 To nSpaces - 1
index = CInt(1 + Rnd() * base.Length-1)
PWD += Mid(base, index, 1)
Next
Return PWD
End Function
Lorentz-Attraktor
Der Lorentz-Attraktor ist immer wieder ein schönes Beispiel für die Darstellung von 3-dim. Linien.
Die Konstanten a und b können übrigens als Prandtl Zahl bzw. als Rayleigh Zahl interpretiert werden. Diese
für die Verfahrenstechnik wichtigen Kennzahlen stehen für die Temperaturleitfähigkeit und Wärmeübertragung in Fluiden.
Für den folgenden Algorithmus ist ein Feld von 3D Vektoren zu übergeben, wie
sie zum Beispiel als Direct3D.Vector3 in Directx definiert sind.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
Sub CreateLorentzData(ByRef L() As Vector3)
Const a = 10
Const b = 28
Const c As Single = 8 / 3
Const dt As Single = 0.01
L(0).X = 1
L(0).Y = 1
L(0).Z = 1
Dim x, y, z As Single
x = L(0).X : y = L(0).Y : z = L(0).Z
For i As Integer = 1 To L.Length - 1
x = x + (a * (y - x)) * dt
y = y + (x * (b - z) - (y)) * dt
z = z + ((x) * y - c * z) * dt
L(i).X = x : L(i).Y = y : L(i).Z = z
Next
End Sub
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
Sub CreateLorentzData(ByRef L() As Vector3)
Const a = 10
Const b = 28
Const c As Single = 8 / 3
Const dt As Single = 0.01
L(0).X = 1
L(0).Y = 1
L(0).Z = 1
Dim x, y, z As Single
x = L(0).X : y = L(0).Y : z = L(0).Z
For i As Integer = 1 To L.Length - 1
x = x + (a * (y - x)) * dt
y = y + (x * (b - z) - (y)) * dt
z = z + ((x) * y - c * z) * dt
L(i).X = x : L(i).Y = y : L(i).Z = z
Next
End Sub
Mailadresse in Ascii Code Konverter
Die Mailadresse in einer Website in Klartext auszuschreiben macht es Spamern nur allzu leicht auf der Suche nach neuen Opfern. Dabei kann man die Emailadresse recht einfach in Ascii Code konvertieren und im Quelltext anstelle des Textes einfügen. Von den Browsern werden die Asciizeichen dann wieder als Textzeichen interpretiert.
1:
2:
3:
4:
5:
6:
7:
Function mailToAscii(ByVal mail As String) As String
Dim asciiStr As String = ""
For i As Integer = 1 To mail.Length
asciiStr = asciiStr & "" & Asc(Mid(mail, i, 1)) & ";"
Next
Return asciiStr
End Function
2:
3:
4:
5:
6:
7:
Function mailToAscii(ByVal mail As String) As String
Dim asciiStr As String = ""
For i As Integer = 1 To mail.Length
asciiStr = asciiStr & "" & Asc(Mid(mail, i, 1)) & ";"
Next
Return asciiStr
End Function