tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
10
ZUGRIFFE
676
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Ripper11 Ripper11 ist offline Mitglied Bronze
    Registriert seit
    Aug 2006
    Beiträge
    43
    Hallo zusammen,
    ich möchte ein Programm schreiben, mit dem man das 10 Fingersystem lernen kann. Dazu hab ich ein paar Fragen:
    1.Wie errechnet man die Anschläge/Minute?
    2.Ich will, das die Fehlerzahl angezeigt wird. Nur ich weis nicht wie ich darauf kommen soll? Wenn ich das so mache wie unten, dann sagt mir das Programm ja nur das ein Fehler beim abschreiben passiert ist. Gibt es eine Methode die mir das sagt?
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
                            String str1 = new String("Test");
            InputStreamReader in = new InputStreamReader (System.in);
            BufferedReader tast = new BufferedReader (in);
            
            String str2 = new String (tast.readLine());
            
            if (str2.equals(str1))
            {
                System.out.println("Kein Fehler");
            }
            else 
            {
                System.out.println("Fehler");
            }

    Danke schonmal
    Gruß Fabi
     

  2. #2
    Avatar von Dr Dau
    Dr Dau Dr Dau ist offline ich wisch hier durch
    Registriert seit
    Feb 2005
    Ort
    hinterm Mond gleich Links
    Beiträge
    6.160
    Blog-Einträge
    4
    Hallo!

    Ich habe davon zwar keine Ahnung, aber ich würde eine Start-, Stop- und Pausen-Taste mit einbauen.
    Schliesslich weiss das Programm ja nicht warum z.b. Unterbrechungen stattfinden (z.b. durch eine Telefonat oder weil man mal aufs Klo muss).

    Drückt man auf start, dann wird ein Zeitmesser gestartet.
    Drückt man auf Pause, dann wird der Zeitmesser angehalten und nach nochmaligen drücken wieder fortgesetzt.
    Drückt man auf Stop, dann wird alles angehalten.
    Anschliessend werden die Zeichen gezählt und durch die gemessene Zeit geteilt.
    Das Ergebnis wird mal 60 (Sekunden) multipliziert, und schon hat man die durchnittliche Anzahl an Anschlägen pro Minute.

    Gruss Dr Dau
     
    Schri-Schra-Schrödi *g*
    mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
    Dinge, die mit Tabellen besser klappen als mit CSS
    Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
    Meine Links zum Thema Linux (Last update: 29.10.2011)
    Kein Busen ist so flach wie das Niveau dieser Party!
    ----
    Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
    ----
    Ich habe 3 Kinder und kein Geld!
    Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)

  3. #3
    Ripper11 Ripper11 ist offline Mitglied Bronze
    Registriert seit
    Aug 2006
    Beiträge
    43
    Hi,
    danke für deine schnelle Antwort.
    Weis du vielleicht auch mit welcher Methode man die Zeit stoppen kann?
     

  4. #4
    Flo[H] Flo[H] ist offline Mitglied Brokat
    Registriert seit
    Aug 2002
    Beiträge
    399
    Hallo!
    Hol dir mit
    Code :
    1
    
    System.currentTimeMillis();
    beim Start der Stopuhr den Anfangswert und speicher diesen. Wenn du stoppst holst du dir den Endwert und ziehst davon den Anfangswert ab. Dann erhältst du die vergangene Zeit in milliseconds.

    mfg flo
     
    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
    -Rich Cook

  5. #5
    Ripper11 Ripper11 ist offline Mitglied Bronze
    Registriert seit
    Aug 2006
    Beiträge
    43
    Danke für Eure Antworten!
    Das mit den Anschlägen funktioniert jetzt.
    Weis vielleicht jemand wie das mit den Fehlern funktioniert?
     

  6. #6
    Flo[H] Flo[H] ist offline Mitglied Brokat
    Registriert seit
    Aug 2002
    Beiträge
    399
    Hallo!
    Spontan fallen mir da zwei Möglichkeiten ein:
    1. Du liest jedes Zeichen einzeln ein und vergleichst dieses Zeichen sofort mit dem Vorgegebenen, oder
    2. Du speicherst die Zeichenkette die du vorgegeben hast in einem String und die getippte Zeichenkette in einem extra String. Anschließend läufst du mit einer for-Schleife und charAt() durch beide Strings und vergleichst die jeweiligen Zeichen:
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    String target = "abcdefji";
    String input = "abcdefghi";
     
    for(int i = 0; i < target.length(); i++)
    {
      if(target.charAt(i) != input.charAt(i))
        System.out.println("Error at position " + i);
    }
    }
    Code ist nicht getestet.
     
    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
    -Rich Cook

  7. #7
    Wyatt Wyatt ist offline Mitglied Gold
    Registriert seit
    Apr 2007
    Beiträge
    128
    Heyho...

    Mir ist gerad aufgefallen, dass wenn Start - Pause - Stopp Buttons benutzt werden, müsste man ja sofort nach dem drücken des Start Buttons anfangen zu schreiben...
    Sinnvoller wäre es, wenn erst nach dem Drücken einer Taste die "Stoppuhr" anfängt zu laufen, finde ich

    Soll nur ein Denkanstoß meinerseits sein... Vielleicht versteh ich aber auch den Sinn des Programms falsch, dann sorry

    Grüße
    Felix
     

  8. #8
    Avatar von Dr Dau
    Dr Dau Dr Dau ist offline ich wisch hier durch
    Registriert seit
    Feb 2005
    Ort
    hinterm Mond gleich Links
    Beiträge
    6.160
    Blog-Einträge
    4
    Zitat Zitat von Wyatt Beitrag anzeigen
    Mir ist gerad aufgefallen, dass wenn Start - Pause - Stopp Buttons benutzt werden, müsste man ja sofort nach dem drücken des Start Buttons anfangen zu schreiben...
    Prinzipiell richtig.
    Nur wie ich schon gesagt habe, kann das System den Grund der Unterbrechung ja nicht wissen/erkennen.
    Um ein realistisches Ergebnis zu bekommen, müssen aber auch solche Pausen mit in die Berechnung einfliessen, die z.b. dadurch resultieren weil man eine bestimmte Tastenkombination (z.b. für Sonderzeichen) nicht auf anhieb findet.
     
    Schri-Schra-Schrödi *g*
    mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
    Dinge, die mit Tabellen besser klappen als mit CSS
    Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
    Meine Links zum Thema Linux (Last update: 29.10.2011)
    Kein Busen ist so flach wie das Niveau dieser Party!
    ----
    Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
    ----
    Ich habe 3 Kinder und kein Geld!
    Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)

  9. #9
    Flo[H] Flo[H] ist offline Mitglied Brokat
    Registriert seit
    Aug 2002
    Beiträge
    399
    Naja man könnte es so ja so implementieren, dass ein Start-Button gedrückt wird und anschließend beim ersten Tastenanschlag erst das Zeitstoppen beginnt. Um eine Pause einzulegen gibts dann einen Pause-Button. Weitermachen geht wie beim Start.
    Eine weitere Möglichkeit wäre, dass nach dem Drücken des Start-Buttons erst ein kleiner Countdown runterläuft.
    Oder dass der Start durch eine bestimmte Taste ausgelöst wird ("Drücken Sie die Leertaste um zu beginnen") und anschließend der erste zu tippende Buchstabe kommt.
    mfg flo
     
    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
    -Rich Cook

  10. #10
    Wyatt Wyatt ist offline Mitglied Gold
    Registriert seit
    Apr 2007
    Beiträge
    128
    Klingt bisher am besten, wie ich finde...
    Als Pause-Taste würde sich die "Pause" Taste natürlich anbieten, vielleicht in Kombination mit STRG oder ALT...
    Mir fällt auch keine Tasten-Kombi ein, in der man diese Taste braucht

    Grüße
    Felix
    Geändert von Wyatt (24.07.07 um 15:22 Uhr)
     

  11. #11
    Ripper11 Ripper11 ist offline Mitglied Bronze
    Registriert seit
    Aug 2006
    Beiträge
    43
    Hallo Leute,
    vielen Dank für eure tollen Antworten!
    @Flo[H]
    Dein Code hat funktioniert

    Gruß Fabi
     

Ähnliche Themen

  1. Münz und Finger Akrobatik...
    Von Crazy_down im Forum Smalltalk
    Antworten: 0
    Letzter Beitrag: 15.01.06, 22:09
  2. Zieh mal am Finger
    Von Andreas Dunstheimer im Forum Fun-Forum
    Antworten: 3
    Letzter Beitrag: 13.03.04, 11:40
  3. finger Linux --> Win
    Von Microhome im Forum Linux & Unix
    Antworten: 1
    Letzter Beitrag: 26.02.04, 20:07
  4. 10-Finger-Schreiben ...?
    Von Carndret im Forum Smalltalk
    Antworten: 28
    Letzter Beitrag: 16.12.02, 22:20
  5. Antworten: 4
    Letzter Beitrag: 05.05.02, 18:38