Themenkreis PRIMZAHLEN Von der Definition über die Algorithmen zur Erzeugung von Primzahlen bis zur Kryptographie! Algorithmen und ihre Realisation in Visual Basic (VBA, Delphi) - Javascript - Java(Applets) Visual Basic Dim von, bis As Long Function primzahl(zahl As Long) As Boolean Dim i As Long pz = True For i = 2 To Int(Sqr(zahl)) + 1 If zahl Mod i = 0 Then pz = False Next If pz Then primzahl = True Else primzahl = False End Function Private Dim von bis For Sub Command1_Click() z As Long = Val(Text1.Text) = Val(Text2.Text) z = von To bis If primzahl(z) Then List1.AddItem Str(z) End If Next End Sub Javscript Dieses Script (Programm) entscheidet, ob eine eingegebene Zahl eine Primzahl ist oder nicht. html> <head> <title>Zahl auf Primzahl checken</title> <script language="JavaScript"> function PrimzahlCheck(Zahl) { var Grenzzahl = Zahl / 2; var Check = 1; for(i = 2; i <= Grenzzahl; i++) if(Zahl % i == 0) Check = 0; if(Check == 1) alert(Zahl + " ist eine Primzahl!") else alert(Zahl + " ist keine Primzahl!"); } </script> </head> <body> <form name="PrimzahlFormular"> Geben Sie eine Zahl ein, die Zahl wird auf Primzahl gecheckt: <br> <input type=text name="Eingabezahl"> <input type=button value="auf Primzahl checken" onClick="PrimzahlCheck(document.PrimzahlFormular.Eingabezahl.value)"> </form> </body> </html> Und schließlich JAVA (als APPLET) realisiert Datei: „PRIMZAHLENAPPLET.JAVA“ import java.applet.Applet; import java.awt.Graphics; public class PrimzahlenApplet extends Applet { public static prim p = new prim(); public void init() { resize(310,280); } } public void paint(Graphics g) { p.felderzeugen(); p.primerrechnen(); int slash=0; int x=10; int y=10; for (prim.i=2; prim.i<=1000; prim.i++) { if (prim.feld[prim.i] != 0) { prim.st= Integer.toString(prim.feld[prim.i]); g.drawString(prim.st,x,y); slash++; x += 30; if ((slash%10)==0) {x = 10; y += 15;} } } } class prim{ public static int[] feld = new int[1100]; public static int i; public static String st = new String(); public static void felderzeugen() { for (i=0; i<=1000; i++) feld[i]=i; } } public static void primerrechnen() { int zaehler = 2; do { for (i=zaehler; i<=1000; i = i + zaehler) { feld[i]=0; feld[zaehler]=zaehler; } do { zaehler++; } while ((feld[zaehler] == 0) & (zaehler <= 1000)); } while (zaehler <= 1000); } Compilation des Textfiles mittels des JAVA-Compilers JAVAC.EXE Liefert den sogenannten BYTECODE oder das interpretierbare JAVA-APPLET „PRIMZAHLENAPPLET.CLASS“ Diese CLASS-Datei wird nun in das HTML-File eingebettet. <HTML> <HEAD> <TITLE>Primzahlen</TITLE> </HEAD> <BODY> <FONT COLOR="#000000"> <FONT SIZE=+2>Primzahlen</FONT></FONT> <BR> <FONT COLOR="#000000"><FONT SIZE=-1> Dieses APPLET berechnet die Primzahlen zwischen 2 und 1000</FONT></FONT> <CENTER>&nbsp;</CENTER> <CENTER> <APPLET CODE="PrimzahlenApplet.class" WIDTH="372" HEIGHT="295"></APPLET> </CENTER> </BODY> </HTML> Bedeutung der Primzahlen in der Verschlüsselung (Public Key Verfahren)