Das deutsche QBasic- und FreeBASIC-Forum Foren-躡ersicht Das deutsche QBasic- und FreeBASIC-Forum
F黵 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:

And falsch benutzt?

 
Neues Thema er鰂fnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-躡ersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: N鋍hstes Thema anzeigen  
Autor Nachricht
WinterStorm



Anmeldungsdatum: 14.11.2005
Beitr鋑e: 198
Wohnort: Linz

BeitragVerfasst am: 26.05.2006, 19:23    Titel: And falsch benutzt? Antworten mit Zitat

moin,

Code:

CLS
COLOR 15, 1
PRINT " MusiX                                                                          "

COLOR 8, 0
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"
PRINT "北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北北"

be$ = "off "
se$ = "off "
ba$ = "off "

musik:
LOCATE 5, 5
COLOR 1, 7
PRINT " 1. Beat : "; be$
LOCATE 6, 6
COLOR 0, 0
PRINT "               "

LOCATE 8, 5
COLOR 1, 7
PRINT " 2. Synth : "; se$
LOCATE 9, 6
COLOR 0, 0
PRINT "                "

LOCATE 11, 5
COLOR 1, 7
PRINT " 3. Bass : "; ba$
LOCATE 12, 6
COLOR 0, 0
PRINT "               "

LOCATE 5, 25
COLOR 15, 1
PRINT " Control Window "
LOCATE 6, 25
COLOR 1, 7
PRINT "                "
LOCATE 7, 25
PRINT "                "
LOCATE 8, 26
COLOR 0, 0
PRINT "                "
LOCATE 6, 41
PRINT " "
LOCATE 7, 41
PRINT " "

COLOR 0, 7
LOCATE 6, 27
INPUT "> ", control$

   IF control$ = "1.on" THEN be$ = "on  ": be% = 1: GOTO musik
    IF control$ = "2.on" THEN se$ = "on  ": se% = 1: GOTO musik
     IF control$ = "3.on" THEN ba$ = "on  ": ba% = 1: GOTO musik

   IF control$ = "1.off" THEN be$ = "off ": be% = 0: GOTO musik
    IF control$ = "2.off" THEN se$ = "off ": se% = 0: GOTO musik
     IF control$ = "3.off" THEN ba$ = "off ": ba% = 0: GOTO musik

   IF control$ = "end" THEN END
    IF control$ = "play" THEN GOTO player

COLOR 4, 7
SOUND 650, 5
LOCATE 6, 29
PRINT "Error"
SLEEP 1: GOTO musik

player:
IF be% = 1 THEN

DO
SOUND 40, 1
SLEEP 1
SOUND 60, 1
SLEEP 1
LOOP UNTIL INKEY$ = CHR$(27)
GOTO musik
END IF

IF se% = 1 THEN

DO
SOUND 450, 1
SOUND 430, 1
SOUND 410, 1
SOUND 550, 1
SOUND 530, 1
SOUND 510, 1
SLEEP 1
LOOP UNTIL INKEY$ = CHR$(27)
GOTO musik
END IF

IF ba% = 1 THEN

DO
SOUND 150, 2
SOUND 125, 1
SOUND 150, 2
SOUND 125, 1
SOUND 150, 2
SOUND 125, 1
SLEEP 1
LOOP UNTIL INKEY$ = CHR$(27)
GOTO musik
END IF

IF be% = 0 AND se% = 0 AND ba% = 0 THEN GOTO musik

IF be% = 1 AND se% = 1 THEN
DO
SOUND 40, 1
SOUND 450, 1
SOUND 430, 1
SOUND 410, 1
SOUND 60, 1
SOUND 550, 1
SOUND 530, 1
SOUND 510, 1
SLEEP 1
LOOP UNTIL INKEY$ = CHR$(27)
GOTO musik
END IF


meine frage: wieso funktioniert der and befehl hier nicht? was habe ich falsch gemacht
danke schon mal f黵 alle antworten

ps: ich wei� ich hab nen schlechten programmierstil,
und sry wegen dem langen code...
mfg
_________________
Me
lastfm...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
raph ael



Anmeldungsdatum: 12.04.2006
Beitr鋑e: 472

BeitragVerfasst am: 26.05.2006, 19:28    Titel: Antworten mit Zitat

Andere Variablennamen?
bes$
bei%
_________________
Zitat:
1000 Yottabytes sind absurd. 640 Yottabytes sollten genug f黵 jeden sein.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
WinterStorm



Anmeldungsdatum: 14.11.2005
Beitr鋑e: 198
Wohnort: Linz

BeitragVerfasst am: 26.05.2006, 19:34    Titel: Antworten mit Zitat

hm sorry des versteh ich ned ganz, k鰊ntest du den code
vll so umprggen, dass er funzt?
ich werd noch wahnsinnig mit dem Kopf durch die Mauer wollen

mfg
_________________
Me
lastfm...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beitr鋑e: 2577
Wohnort: Schweiz

BeitragVerfasst am: 26.05.2006, 19:56    Titel: Antworten mit Zitat

Zitat:
meine frage: wieso funktioniert der and befehl hier nicht? was habe ich falsch gemacht

Was geht nicht?
Wie verh鋖t sich was und wie soll es sich verhalten?
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe f黵 dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
jb



Anmeldungsdatum: 14.01.2005
Beitr鋑e: 2010

BeitragVerfasst am: 26.05.2006, 20:39    Titel: Antworten mit Zitat

Vielleicht um die Gleichungen eine Klammer setzen, � la:
Code:

IF (a = 1) AND (b = 2) AND (c = 3) THEN


jb
_________________
Elektronik und Programmieren
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
raph ael



Anmeldungsdatum: 12.04.2006
Beitr鋑e: 472

BeitragVerfasst am: 27.05.2006, 16:48    Titel: Antworten mit Zitat

Den ganzen Code umprogrenn neutral Nie im Leben! Ich meine es so:
Es gibt eine Variable be$ und eine Variable be%. Die Variable be$ wird einfach *h黶tel* umbenannt. Verstanden? Ach ja, wegen den �: Ich wei�, was du damit bezwecken willst, aber das klappt (bei mir) nicht mal im DOS-Modus durchgeknallt
edit: Die boolschen Operatoren kommen vor den Mathematischen!
_________________
Zitat:
1000 Yottabytes sind absurd. 640 Yottabytes sollten genug f黵 jeden sein.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beitr鋑e: 2577
Wohnort: Schweiz

BeitragVerfasst am: 27.05.2006, 19:13    Titel: Antworten mit Zitat

raph ael hat Folgendes geschrieben:
edit: Die boolschen Operatoren kommen vor den Mathematischen!

verwundert
Code:
PRINT 1 AND 2 + 3

gibt 1.
2 + 3 = 5
5 AND 1 = 1

nach deiner Aussage g鋌e es ja
1 AND 2=1
1 + 3 = 4

QBasic 1.1 hat Folgendes geschrieben:
Boolesche Operationen werden nach arithmetischen und vergleichenden
(relationalen) Operationen nach ihrer Rangfolge abgearbeitet.

_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe f黵 dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
raph ael



Anmeldungsdatum: 12.04.2006
Beitr鋑e: 472

BeitragVerfasst am: 27.05.2006, 20:38    Titel: Antworten mit Zitat

Ups... Hab' was durcheinandergebracht peinlich ...
Zitat:

Operatorvorrang
1: Funktionsaufrufe/Klammern
2: Potenzierung
3: Vorzeichenoperator + und -
4: Multiplikation und Division
5: Integerdivision
6: Mod
7: Addition und Subtraktion
8: Vergleichsoperatoren
9: NOT
10 AND
11: OR
12: XOR
13: EQV
14: IMP

_________________
Zitat:
1000 Yottabytes sind absurd. 640 Yottabytes sollten genug f黵 jeden sein.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Type



Anmeldungsdatum: 24.02.2006
Beitr鋑e: 187
Wohnort: Dresden

BeitragVerfasst am: 30.05.2006, 18:22    Titel: Antworten mit Zitat

Probier mal immer alle drei Werte abzufragen:

Code:

IF be% = 1 AND se% = 0 AND ba% = 0 THEN ...


Sobald be% eins ist, wird bei dir die erste Schleife abgelaufen, was mit se% und ba% ist, ist egal, da die IF - Anweisung dies nicht abfragt. - Daher wird deine letzte Anweisung einfach "黚ergangen".

P.S.: Ich weis jetz nich, wie lang du schon programmierst, aber...
gew鰄n dir umgehend einen richtigen Programmierstil an und meide den GOTO-Befehl zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beitr鋑e der letzten Zeit anzeigen:   
Neues Thema er鰂fnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-躡ersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beitr鋑e in dieses Forum schreiben.
Du kannst auf Beitr鋑e in diesem Forum nicht antworten.
Du kannst deine Beitr鋑e in diesem Forum nicht bearbeiten.
Du kannst deine Beitr鋑e in diesem Forum nicht l鰏chen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz