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:

anfänger problem mit SUB`s

 
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
kennyrcc



Anmeldungsdatum: 18.01.2005
Beiträge: 47
Wohnort: Nürnberg

BeitragVerfasst am: 27.01.2005, 15:02    Titel: anfänger problem mit SUB`s Antworten mit Zitat

ich bins mal wieder!

da ich anfänger bin propiere ich zz gerne n bisserl rum und bin mal wieder auf ein problem gestossen für das ich einfach keine lösung habe:

Code:
PRINT "wenn sie MB in GB umrechnen wollen geben sie `mb` ein"
PRINT "wenn sie GB in MB umrechnen wollen geben sie `gb´ ein"
INPUT "", main$
IF main$ = "mb" then GOSUB megabyte
IF main$ = "gb" then  GOSUB gigabyte
.
.
.


wenn ich nun das prog ausführen will bekomme ich von qb immer den fehler "Marke ist nicht definiert" und das GOSUB wird markiert.

ich habe auch schon:

IF main$ = "mb" THEN CALL SUB megabyte

auspropiert aber da markiert er mir dass call und sagt "ERWARTET: BEZEICHNER" .
kann mir da jemand helfen?
_________________
10
Machen Sie es möglich, Programme in Deutsch zu schreiben, und Sie werden entdecken, daß die Programmierer kein Deutsch können.
____________________________
ach ja
20 GOTO 10
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Paul
aka ICC, HV-Freak


Anmeldungsdatum: 11.09.2004
Beiträge: 588
Wohnort: Uelzen

BeitragVerfasst am: 27.01.2005, 16:31    Titel: Antworten mit Zitat

Ist doch klar, dass es einen Fehler gibt.
GOSUB springt immer zur angegebenen Marke (in diesem Fall megabyte bzw. gigabyte).

Aber diese Marken gibt es überhaupt nicht in deinem Programm durchgeknallt
Ist doch klar dass QB da meckert. mit den Augen rollen

So sieht die Syntax für GOSUB und co. aus:
Code:

PRINT "Bla 1"
GOSUB Unterprogramm
PRINT "Bla 3"
END

Unterprogramm:
PRINT "Bla 2"
RETURN


Das geht auch nicht.
Code:

IF main$ = "mb" THEN CALL SUB megabyte


Das hier wäre Korrekt, wenn es denn überhaupt eine megabyte-SUB gibt durchgeknallt
Code:

IF main$ = "mb" THEN CALL megabyte

Das CALL kannste auch weglassen
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 27.01.2005, 18:13    Titel: SUBs Antworten mit Zitat

Hallo!

Ich würde aber nicht mit GOSUBs arbeiten, da dann der Quellcode etwas unübersichtlich werden kann.

Verwende anstatt z.B

Code:

Unterprogramm:
 PRINT "Das ist ein Unterprogramm!!"
 SLEEP
RETURN


lieber eine richtige SUB:

Code:

SUB Unterprogramm
 
 PRINT "Das ist ein Unterprogramm!!"
 SLEEP

END SUB


Auf die SUBs kann man dann mit F2 zugreifen. Gerade bei Spielen ist das viel übersichtlicher..

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


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 27.01.2005, 23:29    Titel: Antworten mit Zitat

Zum Thema SUB und FUNCTION noch ein ausführlicher Artikel:

http://www.dreael.ch/Deutsch/BASIC-Knowhow-Ecke/SUB-Unterprogramme.html
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail 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