Themenkreis PRIMZAHLEN

Werbung
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> </CENTER>
<CENTER>
<APPLET CODE="PrimzahlenApplet.class" WIDTH="372" HEIGHT="295"></APPLET>
</CENTER>
</BODY>
</HTML>
Bedeutung der Primzahlen in der Verschlüsselung (Public Key Verfahren)
Herunterladen