Wie kann ich eine Schleife nach 3 mal unterbrechen?

Wolfenstein77

Ensign
Registriert
März 2006
Beiträge
156
auf www.highscore.de erstes Thema ...Kapitel 1.10 Giebt es aufgaben...

ich soll im javascript ein programm programmieren, das die eingabe eines passworts erfordert...und man es nur 3 mal flasch eingeben kann, dan soll sich das fenster schließen.

var passwort = "abc";
var eingabe = prompt ("Geben sie ein Password ein");

if (eingabe == passwort)
{
alert ("Paswort ok!);
}
else
{
alert (passwort falsch, bitte erneut versuchen!");
}

mehr hab ich im moment auch nicht hinbekommen..aber wie kann ich es jetzt ermöglichen das man es nur 3 mal flasch eingeben kann?

Und wie soll ich das eigendlich ausführen ? auf der oben genannten seite meinen die, der Browser unterstützt automatisch javascript..ja das ist auch schön und gut, aber was soll ich mit meinem geschreibenen code machen? ich hab ihn nun in Notepad++ geschreiben...und bei sprache oben javascripts eingestellt. aber wie komm ich nun dazu das der code ausgeführt wird?

gruß Wolfenstein77
 
Indem du eine Schleife benutzt. Etwa so:

Code:
var passwort = "abc";

for(var i = 0; i < 3; ++i)
{
var eingabe = prompt ("Geben sie ein Password ein");

if (eingabe == passwort)
{ 
	alert ("Paswort ok!);
        break; // verlasse die schleife
}
else
{
	alert (passwort falsch, bitte erneut versuchen!");
}
}
 
Zuletzt bearbeitet:
Dein code korrigiert:
Code:
var passwort = "abc";
for(i = 0; i < 3; i++)
{
	var eingabe = prompt("Geben sie das Passwort ein:", "");
	if (eingabe == passwort)
		break;
	else
		alert("Passwort falsch. Sie haben noch " + (2-i) + " Versuche"); // und evtl Abbruch des ganzen Programms
}
alert ("Passwort ok!");
//dein restliches programm...

wie du den code ausführst findest du im inet und geht auf verschiedene Weisen. Einerseits kann man den Code in eine .js Datei speichern andererseits direkt in eine HTML Datei. Google hilft!

PS: Ich kann auch kein JS ;) Aber es funktioniert
 
Zuletzt bearbeitet: (ein "var" hinzugefügt, ps)
Hab mir schon gedacht, dass da was nicht stimmt :D. Hab JavaScript nie gelernt und hab's einfach von C++ abgeleitet. Vielleicht sollt ich mir JavaScript mal aneignen scheint ganz interresant zu sein.
 
Mein Problem ist aber noch das ich nochmal lesen muss und alles verstehen... :(

versteh noch nicht alle befehle und so weiter... das was ich oben stehen hab steht so in dem buch was ich ausgedruckt habe...

mal schauen ob ich irg reinkomme..

aber nun muss ich noch wissen wie ich den script nun wiedergeben kann??

Einmal wie mit C++ und Virsual Studio

und dan einmal wie man einen javascript wiedergeben kann...wenn ich sie als html oder js speicher und sie mit dem Browser öffne...sehe ich nur meinen Code. (habe firefox und IE)

Wie kann ich das ändern das der Javascript ausgefürt wird?
 
Du packst einfach den Code von Backslash in eine Funktion:
Code:
function checkPassword()
{
  // hier den Code von Backslash!
}
und speicherst das Ganze als JS-Datei ab (z.B. password.js).

Nun erstellst Du eine HTML-Datei mit folgendem Inhalt:
HTML:
<html>
  <head>
    <script type="text/javascript" src="password.js"></script>
    <title>Passwort-Abfrage</title>
  </head>
  <body onload="checkPassword()">
  </body>
</html>
Wenn Du nun die HTML-Datei öffnest, wird das Skript sofort ausgeführt.
 
Würde für Passwortabfragen solcher Art nicht mit Java Script arbeiten.
Das einzugebende Passwort steht ja in deinem Quelltext:
var passwort = "abc";
Da JavaScript auf dem Client, also dem Rechner der die Seite aufruft, ausgeführt wird, ist der Qelltext und somit das Passwort auf dem Client einsehbar. Also wird jeder, der nur ein wenig Ahnung vom Programmieren hat, problemlos an dein Passwort kommen.

Würde da eher mit PHP arbeiten. PHP wird Serverseitig ausgeführt. Der Client sieht nichts vom Quelltext und kann somit auch das Passwort nicht sehen.
 
Da hat Haike vollkommen Recht. Wenn es so als kleines Schulbeispiel gedacht ist, kein Problem - aber auf gar keinen Fall produktiv so umsetzen! Das Passwort selbst darf vom Server niemals an den Client gesendet werden! Der Client sollte lediglich seinen Passwortvorschlag an den Server senden und dieser gibt zurück, ob die Authentisierung erfolgreich war oder nicht.
 
das ganze ist nur ein schulungsbeispiel....wie oben beschrieben..ich verscuhen wie gesag die aufgaben von highscore.de... in kapitel 1.10 vom ersten zu lösen.. und da ist so eine aufgabe gestellt.

ach übrigens.... das mit dem Ausführen bekome ich immer noch nciht hinn, dabei habe ich es genauso gemacht wie oben beschrieben.
 
Hast du eigentlich schon mal vorher Programmiert? Wenn nicht wie wäre es wenn du mit etwas einfacherem anfängst!

Außerdem solltest du wissen wozu die PRogrammiersprache die du benutzt überhaupt dient! Wenn du das gewusst hättest, dann hättest du gewusst, dass du das in eine HTML Seite einbinden musst! Und da biste dann schon wieder bei HTML! Kannste das denn überhaupt? Deswegen wie oben gesagt vielleicht mit was einfacherem anfange, wenn es nur darum geht Programmieren zu lernen! Entweder lernste C oder du versuchst dich mal an VB
 
JavaScripts kann man nicht "ausführen" wie normale Programme. JS ist eine Skriptsprache für die Einbettung in Webseiten (und einigen anderen Bereichen wie PDF und Flash). Auf jeden Fall benötigt ein JavaScript immer einen Träger. In der Regel wird JS eben in Webseiten und damit mit HTML verwendet.
Wenn Du ein "ausführbares" Programm erstellen willst (EXE-Datei), dann musst Du eine andere Sprache wählen, beispielsweise C#, VB oder C++.
 
So nicht ganz richtig, Prypjat! Per Windows Script Host kann man auch .js Dateien ausführen (genauso wie .vbs)

Aber um Programmieren zu lernen halte ich JS nicht für geeignet => C# !
 
Backslash schrieb:
So nicht ganz richtig, Prypjat! Per Windows Script Host kann man auch .js Dateien ausführen (genauso wie .vbs)
Cool. Das wusste ich noch gar nicht. Allerdings würde man dann wohl eher VBS verwenden, oder. Das ist doch sicher mächtiger als JavaScript.
Aber um Programmieren zu lernen halte ich JS nicht für geeignet => C# !
Wir und unser C# - da geht nichts drüber! :D
 
Backslash schrieb:
Dein code korrigiert:
Code:
var passwort = "abc";
for(i = 0; i < 3; i++)
{
	var eingabe = prompt("Geben sie das Passwort ein:", "");
	if (eingabe == passwort)
		break;
	else
		alert("Passwort falsch. Sie haben noch " + (2-i) + " Versuche"); // und evtl Abbruch des ganzen Programms
}
alert ("Passwort ok!");
//dein restliches programm...

wie du den code ausführst findest du im inet und geht auf verschiedene Weisen. Einerseits kann man den Code in eine .js Datei speichern andererseits direkt in eine HTML Datei. Google hilft!

PS: Ich kann auch kein JS ;) Aber es funktioniert

Denk einfach einmal nach, was dann passiert, wenn ich dreimal das falsche Passwort eingebe:D
Richtig ich bekomme vollen Zugriff;)

Ich würde es so schreiben:

Code:
for(int i=0;i<3;i++)
{
   String ein=einlesen("Bitte geben Sie das Passwort ein:");

   if(ein==password)
   {
        //Dein Programm

        break;
   }

   ausgeben("Passwort war falsch. Das war Versuch " + i + " von 3");
}

Wie die Funktionen zum Einlesen bzw. Ausgeben aussehen, kann ich auf die Schnelle nicht sagen, da meine Java-Programme bisher Netbeans nie verlassen haben:D

P.S.: Bevor jetzt wieder Leute kommen und meinen, dass man Referenzen mit .equals vergleichen muss, das stimmt, aber bei Strings geht es auch so, weil die sowieso read only sind und nur einmal abgespeichert werden d.h. auch gleiche Referenz.
 
War doch ne übungsaufgabe?! Mir ist schon klar was passiert, deshalb mein kommentar "// und evtl Abbruch des ganzen Programms"

Das ganze ist sowieso unnötig, da das PW im lesbaren Source steht wie schonmal von Haike beschrieben. (JavaScript!)
 
Zuletzt bearbeitet: (added "von Haike ")
Die seite die ich oben gepostet habe, schaut mal drauf..und dan beim ersten auf "Buch lesen" .

Mit dieser seite versuche ich nun mit der zeit ins Programmieren einsteigen zu können...ich möchte eig C++ lernen, aber im anfang, wo es um Programmiersprachen aleine geht, wird eist javascript verwendet.

Ich hab so das gefühl das ihr mir mein Nichtwissen vorwerft....ich versuche doch zu lernen :(

aber es ist schwer.

Ich hatte noch nie etwas mit Programmieren zu tun, finde es aber faszinierend...und möchte es gerne erlernen. habe mich für C++ entschieden (habe meine gründe).

So nun wieder zum Buch.. also ich versuche um momnet wo gerade beschreiben in Kapitel 1.10 die aufgaben zu lösen :rolleyes:

Wenn ihr vieleicht etwas zeit habt überfliegt mal die überschriften...ich verstehe nicht wie man aus dem wissen des ersten Kapitels diese Aufgaben lösen soll :o

Und es wird auch nicht beschrieben wie man den javascript ausführt, also müsstet ihr nach diesem Post wissen wiso ich nicht begreife.
 
Zuletzt bearbeitet:

Ähnliche Themen

Antworten
2
Aufrufe
5.548
adAstra
A
Zurück
Oben