Vokabelprogramm!!



  • Hi erstmal..
    also ich würde gerne ein Programm erstellen,
    mit dem ich meine Latein-Vokabeln lernen kann.
    Das programm soll folgende sachen können:

    -neue Vokabeln einspeichern ( Deutsch - Latein )
    -Vokabeln herauslöschen/umbenennen
    Vokabeln per zufallsgenerator oder reihenfolge abfragen

    ich bin noch nicht so begabt, weder mit C++ noch im alten C, ich würdem ich über ratschläge freuen... aber bitte nur wenn sie ihr auch die zeit habt, mir noch ein wenig quellcode dazuzu geben und ihn zu erläutern..sonst hat das alles keinen lernfaktor für mich..

    danke im vorraus!

    steffen



  • Ich habe irgendwo feinen Code. Das Prog fragt nicht ganz wahllos, sondern bevorzugt die letzten 6 nicht gewußten Vokabeln in der Annahme, daß man die am besten lernt, die man gerade schon beinahe wieder vergessen hat.
    Aber Vorsicht, jetzt folgt Basic

    dim shared deutsch as string
    dim shared englisch as string
    
    sub umkopieren
        open "lektion.tmp" for input as #1
        open "lektion.txt" for output as #2
        dim nummer as integer
        do
            line input #1 , deutsch
            line input #1 , englisch
            print #2 ,deutsch
            print #2 ,englisch
        loop while not eof(1)
        close #1
        close #2
    end sub
    
    sub speichernWennFalsch
        open "lektion.tmp" for output as #2
        print #2, deutsch
        print #2, englisch
        open "lektion.txt" for input as #1
        dim nummer as integer
        nummer=0
        do
            line input #1 , deutsch
            line input #1 , englisch
            nummer=nummer+1
            if nummer <> 6 then 
                print #2 ,deutsch
                print #2 ,englisch
            endif
        loop while not eof(1)
        close #1
        close #2
        umkopieren
    end sub
    
    sub speichernWennRichtig
        open "lektion.tmp" for output as #2
        open "lektion.txt" for input as #1
        dim nummer as integer
        nummer=0
        do
            line input #1 , deutsch
            line input #1 , englisch
            nummer=nummer+1
            if nummer <> 6 then 
                print #2 ,deutsch
                print #2 ,englisch
            endif
        loop while not eof(1)
        close #1
        print #2, deutsch
        print #2, englisch
        close #2
        umkopieren
    end sub
    
    sub vokabelAnzeigen
        open "lektion.txt" for input as #1
        dim nummer as integer
        nummer=0
        do
            line input #1 , deutsch
            line input #1 , englisch
            nummer=nummer+1
            if nummer = 6 then 
                print deutsch
                exit do
            endif
        loop while not eof(1)
        close #1
    end sub
    
    function zeichenEinlesen as string
        dim ESC as string = chr(27)
        dim zeichen as string
        do 
            zeichen=inkey
            if zeichen=ESC then
                end
            endif
        loop while zeichen=""
        return zeichen
    end function
    
    sub main
        dim LINKS as string = chr(255) + "K"
        dim RECHTS as string = chr(255) + "M"
        dim HOCH as string = chr(255) + "H"
        dim RUNTER as string = chr(255) + "P"
        do
            print "Frage:"
            vokabelAnzeigen
            print "RUNTER zum Weitermachen"
            dim taste as string
            do
                taste=zeicheneinlesen
            loop while taste <> RUNTER
            print englisch
            print "<-Falsch     Richtig->"
            do
                taste=zeicheneinlesen
                if taste=LINKS then
                    print "falsch"
                    speichernWennFalsch
                    exit do
                endif
                if taste=RECHTS then
                    print "richtig"
                    speichernWennRichtig
                    exit do
                endif
            loop
        loop
        sleep
    end sub
    
    main
    

    -neue Vokabeln einspeichern ( Deutsch - Latein )
    -Vokabeln herauslöschen/umbenennen
    -Vokabeln per zufallsgenerator oder reihenfolge abfragen

    Speichern und löschen ist gar nicht wichtig, das geht mindestens so fein mit einem externen Editor wie notepad.
    Das Abfragen...
    Wohl am besten, Du liest bei Programmstart alle Vokabeln (struct Vokabel{string deutsch;string englisch;};) in einen Vector und würfelst immer mit pos=rand()%vokvec.count();.



  • also das funktioniert zwar vllt alles wunderbar..aber verstehen tu ich nur die hälfte von dem was da steht...also wenn du zeit findest kansnt du mir ja genau erklären für was welche sachen gut sind..ich bin noch neu im C.. 😞



  • mach doch erstmal ein programm, das eine textdatei öffnet die vokabeln einliest und abfragt.
    wenn das läuft, kannst du immer noch erweiterungen einbauen.


Anmelden zum Antworten