Hallo, ich mache gerade ein Fernstudium wo auch JavaScript enthalten ist. Da gibt es eine Frage bei der ich absolut nicht durchblicke und hoffe das hier jemand mir helfen könnte:
Thema der Aufgabe: Ermittlung von Primzahlen.
So etwa sieht das Script aus:
Es geht um das korrekte Ergänzen der Fragezeichen.
Hier mal mein Script und welche Probleme da noch auftauchen:
Nun tauchen bei mir folgende Probleme auf:
Es wird nicht wirklich erkannt ob es eine Primzahl ist oder nicht, bei jeder Ausgabe dieses Scriptes wird ausgegeben: [Zahl] ist eine Primzahl (auch wenn es keine ist z.B. die zahl[1]).
Ich bin tatsächlich mit dem Befehl flag (im Lehrbuch überhaupt nicht erwähnt) nicht klar gekommen, liegt hier das Problem? Wo sind noch Fehler?
Wer kann mir dieses Script richten und vielleicht auch dokumentieren (denn ich will auch aus diesen Fehlern lernen)?
Noch eine anschliesende Frage: Muss nun für jede zu prüfende Zahl das Script unten wiederholt werden (mit der richtigen Zahleneingabe) oder gibt es eine Möglichkeit dieses eine Script für alle zu prüfenden Zahlen einmalig zu verwenden?
Vielen Dank schon mal im vorraus!
Thema der Aufgabe: Ermittlung von Primzahlen.
So etwa sieht das Script aus:
Code:
<script language="JavaScript">
<!--
var zahl = new Array (10);
zahl[0] = 7;
zahl[1] = 15;
zahl[2] = 23;
zahl[3] = 77;
zahl[4] = 83;
zahl[5] = 51;
zahl[6] = 46;
zahl[7] = 17;
zahl[8] = 3;
zahl[9] = 12;
var n=[COLOR=#ff0000][B]?[/B][/COLOR];
var flag=0;
while (n < [COLOR=#ff0000][B]??[/B][/COLOR])
{
for(i=2; i <= zahl[[COLOR=#ff0000][B]?[/B][/COLOR]]/2; i++)
{
if(zahl[[COLOR=#ff0000][B]?[/B][/COLOR]]%i == 0)
flag [COLOR=#ff0000][B]???[/B][/COLOR]
}
if (flag==0)
document.write(zahl[[COLOR=#ff0000][B]?[/B][/COLOR]]+ "ist eine Primzahl [COLOR=#ff0000][B]???[/B][/COLOR]");
else
document.write(zahl[[COLOR=#ff0000][B]?[/B][/COLOR]]+ "ist keine Primzahl [COLOR=#ff0000][B]???[/B][/COLOR]");
flag=[COLOR=#ff0000][B]?[/B][/COLOR];
n++;
}
//-->
</script>
Es geht um das korrekte Ergänzen der Fragezeichen.
Hier mal mein Script und welche Probleme da noch auftauchen:
Code:
<script language="JavaScript">
<!--
var zahl = new Array (10);
zahl[0] = 7;
zahl[1] = 15;
zahl[2] = 23;
zahl[3] = 77;
zahl[4] = 83;
zahl[5] = 51;
zahl[6] = 46;
zahl[7] = 17;
zahl[8] = 3;
zahl[9] = 12;;
var n=[COLOR=#ff0000][B]0[/B][/COLOR];
var flag=0;
while (n < [COLOR=#ff0000][B]1[/B][/COLOR])
{
for(i=2; i <= zahl[[B][COLOR=#ff0000]0[/COLOR][/B]]/2; i++)
{
if(zahl[[B][COLOR=#ff0000]0[/COLOR][/B]]%i == 0)
flag[B][COLOR=#ff0000]==0[/COLOR][/B];
}
if (flag==0)
document.write(zahl[[COLOR=#ff0000][B]0[/B][/COLOR]]+ "ist eine Primzahl" + "<br />");
else
document.write(zahl[[COLOR=#ff0000][B]0[/B][/COLOR]]+ "ist keine Primzahl" + "<br />");
flag=[COLOR=#ff0000][B]1[/B][/COLOR];
n++;
}
//-->
</script>
Nun tauchen bei mir folgende Probleme auf:
Es wird nicht wirklich erkannt ob es eine Primzahl ist oder nicht, bei jeder Ausgabe dieses Scriptes wird ausgegeben: [Zahl] ist eine Primzahl (auch wenn es keine ist z.B. die zahl[1]).
Ich bin tatsächlich mit dem Befehl flag (im Lehrbuch überhaupt nicht erwähnt) nicht klar gekommen, liegt hier das Problem? Wo sind noch Fehler?
Wer kann mir dieses Script richten und vielleicht auch dokumentieren (denn ich will auch aus diesen Fehlern lernen)?
Noch eine anschliesende Frage: Muss nun für jede zu prüfende Zahl das Script unten wiederholt werden (mit der richtigen Zahleneingabe) oder gibt es eine Möglichkeit dieses eine Script für alle zu prüfenden Zahlen einmalig zu verwenden?
Vielen Dank schon mal im vorraus!