Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Latein GFS - Vokabletrainer

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Killos



Anmeldungsdatum: 12.09.2004
Beiträge: 31

BeitragVerfasst am: 05.06.2005, 12:36    Titel: Latein GFS - Vokabletrainer Antworten mit Zitat

Tagschen erstmal, also ich bruach für ein Referat einen Vokabeltrainer und hab en Problemchen:
also ich hab hier diesen Code:

Code:
richtig = 0
falsch = 0
COLOR 9, 1
CLS
DIM endung(5) AS STRING
DIM Kasus(5) AS STRING
 LOCATE 13, 16
  PRINT "Richtig:", richtig
 LOCATE 14, 16
 PRINT "Falsch:", falsch
OPEN "t3i2.bas" FOR INPUT AS #1
i% = 0
DO
LINE INPUT #1, temp$
 Kasus(i%) = LEFT$(temp$, INSTR(temp$, "*") - 1)
 endung(i%) = RIGHT$(temp$, LEN(temp$) - INSTR(temp$, "*"))
i% = i% + 1
LOOP UNTIL EOF(1)
CLOSE #1
i% = 0
DO
LOCATE 2, 13
PRINT "Deklinationstrainer programmiert von Tobias D."
LOCATE , 11
PRINT "fuer die Schueler des Schillergymnasium Offenburg."
LOCATE 10, 15
PRINT "Welche Endung hat der "; Kasus(i%); "?";
INPUT "", Eingabe$
IF UCASE$(Eingabe$) = UCASE$(endung(i%)) THEN
richtig = richtig + 1
 CLS
 LOCATE 13, 16
  PRINT "Richtig:", richtig
 LOCATE 14, 16
 PRINT "Falsch:", falsch
 LOCATE 16, 16
 PRINT "Richtige Antwort!"
ELSE
falsch = falsch + 1
 LOCATE 13, 16
  PRINT "Richtig:", richtig
 LOCATE 14, 16
 PRINT "Falsch:", falsch
 LOCATE 16, 12
 PRINT "Die Endung >"; endung(i%); "< waere richtig gewesen."
END IF
i% = i% + 1
LOOP UNTIL i% = 35
END



So jetzt möcht ich dass es eine beliebige Vokabel aussucht und abfragen lässt bis alle 1 mal dran waren und dass es die falschen auch nochmal abfragen lässt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Jan



Anmeldungsdatum: 04.01.2005
Beiträge: 74

BeitragVerfasst am: 06.06.2005, 18:15    Titel: Antworten mit Zitat

Speicher erstmal alle Vokabeln in nem neuen Array ab. Dann befässt du dich mit dem Befehl

Code:
RND

und
Code:
RANDOMIZE


mit diesen Befehlen kannst du Zufallszahlen erstellen. Nun guckst du einfach ob die Zufallszahl schon einmal dran war (du hast natürlich auch die Zahlen in nem Array gespeichert) und dann kannst du vergleichen.
Wenn du sich nicht wiederholende Zufallszahlen hast, dann kannst du diese als Index des Vokabelfeldes nutzen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Killos



Anmeldungsdatum: 12.09.2004
Beiträge: 31

BeitragVerfasst am: 06.06.2005, 19:12    Titel: Antworten mit Zitat

Könnt dass mal jemand als Code schreiben?
Weil ich keine Ahnung hab wie ich des in nen Arry speicher u.s.w...
Danke
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 06.06.2005, 21:10    Titel: Antworten mit Zitat

Auf www.qbasic.de gibt's ein Programm, dass Zufallszahlen ohne
Doubletten erzeugt, einfach mal schauen lächeln

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Killos



Anmeldungsdatum: 12.09.2004
Beiträge: 31

BeitragVerfasst am: 07.06.2005, 15:28    Titel: Antworten mit Zitat

Das mit der Zufallszahl würd ich wahrscheinlich ja noch selbst hinkriegen, aber ich hab keine Ahnung wie des aus andren Dateien lesen geht u.s.w....
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Stormy



Anmeldungsdatum: 10.09.2004
Beiträge: 567
Wohnort: Sachsen - wo die schönen Frauen wachsen ;)

BeitragVerfasst am: 07.06.2005, 16:15    Titel: Antworten mit Zitat

Du brauchst zuerstmal eine Datei wo die ganzen Daten drinne stehen. Hier eine Beispiel-Datei:

namen.txt

Zitat:
"Knut",151,15
"Björn",170,18
"Heinrich",190,8
"Ulf",170,16


Du siehst, dass Namen in Apostrophen gespeichert werden und die Zahlen normal drin stehen. Das Trennungszeichen ist das Komma.

Wenn du die Daten lesen willst, würde ich im vornherein ein Array mit einem bestimmten Datentyp herstellen:

Code:
TYPE MyPersons
 Name AS STRING * 30 ' ist ein Text mit max. 30 Zeichen
 Groesse AS INTEGER   ' eine Zahl (hier: Körpergröße in cm)
 ALTER AS INTEGER      ' das Alter
END TYPE

DIM Person(15) AS MyPersons ' Du willst maximal 15 Personen speichern..



' Um einen Namen in diesem Array zu speichern, schreibst du folgendes:

Code:
Person(1).Name = "Björn"
Person(1).Groesse = 151
Person(1).Alter = 15


das ganze kannst du auch mit PRINT wieder ausgeben:

Code:
PRINT Person(1).Name      ' Ausgabe: Björn
PRINT Person(1).Groesse   ' 151
PRINT Person(1).Alter        ' 15


Nun möchtest du ja nicht jedes Index von Person selbst stetzen und liest den gesamten Inhalt der Datei, wo Name, Größe und Alter gespeichert hast, in dein Array:

Code:
z = 1 ' Unser Zähler
OPEN "namen.txt" FOR INPUT AS #1

DO ' zählt alle Datensätze durch
 INPUT #1, Person(z).Name, Person(z).Groesse, Person(z). Alter
 z = z + 1
LOOP UNTIL EOF(1)
CLOSE #1


Die Variable z gibt also die Anzahl der Personen an, die im Feld vorhanden waren. Die Ausgabe erfolgt also folgendermaßen:

Code:
FOR e = 1 TO z STEP 1
PRINT "Datensatz:"; STR$(e)
PRINT "Name: "; Person(z).Name
PRINT "Größe:"; Person(z).Groesse;" cm"
PRINT "Alter:"; Person(z).Alter;" Jahre"
NEXT e


Für dein Lateinprogramm kannst du dann den Datentyp einfach nach deinen Wünschen passen.
_________________
+++ QB-City +++ Die virtuelle Stadt für jeden Freelancer - Join the community!
Projekte: QB-City,MysticWorld (RPG), 2D-OpenGL-Tutorial
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz