Datenschutzerklärung

10 fingersystem schreibprogramm in JavaScript -- brauche Hilfe!!!!

Validome - Forum

Startseite Validome
RSS 2.0  
Sie sind nicht angemeldet. Atom 1.0  
Forum Home / Javascript-Forum /

10 fingersystem schreibprogramm in JavaScript -- brauche Hilfe!!!!

  Beitrag schreiben
Autor
Beitrag Seiten: 1
lecce5
Mitglied

Registriert: 03.06.2007
Beiträge: 3
hallo zusammen

Ich bin ziemlich neu in der JavaScript Welt und ich muss bald eine Semesterarbeit abgeben und komme überhaupt nicht weiter!!!

Hier mein Code:

<script type="text/javascript">
    function myProgramm()
    {
        var chars = "gh";
        var string_length = 15;
        var randomstring = '';
        for (var i=0; i<string_length; i++)
            {
                var rnum = Math.floor(Math.random() * chars.length);
                randomstring += chars.substring(rnum,rnum+1);
            }
                document.eingabe.feld1.value = randomstring;
    }
</script>
</head>

<body bgcolor="#a7a7a7"
    <center>
        <form name="eingabe">
            <input type="button" name="start" value="Start" onclick="myProgramm()" />
            <input type="reset"><br /><br />
            <input type="text" name="feld1" size="16" disabled="true" value=""/><br /><br />
            <input type="text" name="feld2" size="16" onfocus/>
        </form>
       
                <img src="img/image001.jpg" align="middle">
    </center>

</body>
</html>


es wird ein Text generiert der 15 Zeichen lang ist und nur aus "g" und "h" besteht.

Der Benutzer soll den Text nun abtippten und es soll automatisch eine Fehler-korrektur statt finden.
Jedoch habe ich keine Ahnung wie ich dies anstellen soll!!!

Eine idee mit "Arrays" hätte ich schon aber mir fällt es schwer diese umzusetzten.
Kann mir jemand weiterhelfen????

gruss lecce5


03.06.2007 13:36:29
  Zitieren
HTMELL
Administrator

Registriert: 11.05.2006
Beiträge: 544
Hi,
wie soll die Fehlerkorrektur denn aussehen ? Soll bereits bei der Eingabe automatisch korrigiert werden, oder soll ne Meldung erscheinen ?
Etwas genauere Angaben zur funktionsweise wäre nicht schlecht...


_______________________________________
mfg
Thomas Mell

www.validome.org

03.06.2007 14:16:29
  Zitieren
lecce5
Mitglied

Registriert: 03.06.2007
Beiträge: 3
hi htmell!!

bin mir nicht sicher ob das überhaupt Funktioniert.

der Benutzer soll die 15 generierten buchstaben abtippen.
die Übung sollte automatisch beenden und ein Pop-UP fenster soll erscheinen.
Im Pop-Up sollte dan die Meldung kommen ob der Benutzer bestanden hat oder nicht.

Fals nicht sollte der Übungstext und auch der abgetippte Text erscheinen und diejenigen Buchstaben die Fehlerhaft sind in Rot markiert werden.

Ich habe versucht die 15 Buchstaben die ich generiere die in einen Array zu verschachteln, dammit ich für jeden Buchstabe eine Position erhalte.

Das gleiche wiederholen mit dem Eingabefeld wo der Benutzer reinschreib und danach die beide Arrays zusammen vergleichen und diese Pop-Up erstellen.

bin ziemlich schnell am anschlag gekommen und weiss echt nicht weiter!!!

oder hast du einen anderen vorschlag? einfacher vieleicht??

gruss lecce5

Beitrag geändert von lecce5 (04.06.2007 14:27:32)


04.06.2007 13:48:12
  Zitieren
lecce5
Mitglied

Registriert: 03.06.2007
Beiträge: 3
hier mein Code

<script type="text/javascript">
function rndVorlage()
{
chars = "dk";
string_length = 15;
document.eingabe.feld1.value = randomStr(chars, string_length);
document.eingabe.feld2.focus();
}

function randomStr(chars, strLength)
{
rndStr = "";
for (var i=0; i<strLength; i++)
{
rnum = Math.floor(Math.random() * chars.length);
rndStr += chars.substring(rnum,rnum+1);
}
return rndStr;
}

ergebnis = "";
function vergleichen()
{
var eingabeZahl = 0;
var vorlageZahl = 0;
var eingabe = "";
var vorlage = "";
eingabe = document.eingabe.feld2.value;
vorlage = document.eingabe.feld1.value;
eingabeLetzterCharPos = eingabe.length;
eingabeZahl = parseInt(extractTeil(eingabe, eingabeLetzterCharPos, 'charCode'));
vorlageZahl = parseInt(extractTeil(vorlage, eingabeLetzterCharPos, 'charCode'));
if (eingabeZahl == vorlageZahl)
{
ergebnis += extractTeil(eingabe, eingabeLetzterCharPos, "teilStr");
} else {
ergebnis += "<font color='red'>"+extractTeil(eingabe, eingabeLetzterCharPos, 'teilStr')+"</font>";
}
//hier müsste meiner Meinung nach der Code für die Darstellung erstellt werden
}

function extractTeil(quelle, lastpos, action)
{
if (action == "teilStr")
{
return quelle.substr(lastpos - 1,lastpos);
} else if (action == "charCode") {
return quelle.charCodeAt(lastpos - 1);
}
}
</script>


nun brauche ich nur noch eine Funktion das mir laufen der Eingegebene Text in der Tabelle reinschreibt...kann mir da jemand weiter helfen??


15.06.2007 19:42:45
  Zitieren
dkdenz
Administrator

Ort: Lübeck
Registriert: 25.04.2005
Beiträge: 605
Mir fällt da spontan dieses Zitat aus einem anderen Forum ein:

Du hast also das ganze Semester über gepennt und nun sollen wir Deine Hausaufgaben machen. Wundern tue ich mich allerdings darüber, dass man für so eine simple Aufgabe überhaupt einen Schein kriegt, ich hoffe das ist nicht für eine Uni oder FH...


_______________________________________
Mozilla/5.0 (X11; U; Linux i686; de; rv:1.8.0.14eol) Gecko/20080418 Ubuntu/dapper-security Firefox/1.5.0.12eol

15.06.2007 22:44:58
http://dkmd.de | http://dkdenz.de Zitieren
HTMELL
Administrator

Registriert: 11.05.2006
Beiträge: 544
Na dann habe ich für heute die Hausaufgaben erledigt ;-))
@dkdenz: So oft, wie ich hier schon Hausaufgaben erledigt habe, müsste ich so viele Scheine haben das ich nie wieder Papier kaufen müsste ;-) Vieleicht studiere ich doch noch eines Tages - nur was hab ich davon? In der Zeit kann man besser Geld verdienen ;-) Den Spaß mach ich mir wenn ich in Rente bin...

Code:

<html><head>
<script type="text/javascript">

function rndVorlage() {
  chars = "dk";
  string_length = 15;
  document.eingabe.feld1.value = randomStr(chars, string_length);
  document.eingabe.feld2.focus();
}

function randomStr(chars, strLength) {
  rndStr = "";
  for (var i=0; i<strLength; i++) {
    rnum = Math.floor(Math.random() * chars.length);
    rndStr += chars.substring(rnum,rnum+1);
  }
  return rndStr;
}

ergebnis = "";
function vergleichen() {
  vorlage = document.eingabe.feld1.value;
  eingabe = document.eingabe.feld2.value;
  ergebnis = "";
  
  for(i=0; i<vorlage.length; i++) {
    if(vorlage.charAt(i) == eingabe.charAt(i))  {
      ergebnis+= vorlage.charAt(i)
    }
    else {
      ergebnis+= "<font color='red'>" + vorlage.charAt(i) + "</font>";
    }
    document.getElementById("out").innerHTML = ergebnis;
  }
}
</script> 
<div id="out">&nbsp;</div>



_______________________________________
mfg
Thomas Mell

www.validome.org

16.06.2007 01:22:18
  Zitieren
Seiten: 1   Beitrag schreiben
Wechsel zu

Die letzten Beiträge aus diesen Forum

Valid HTML 4.01