Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
exitus
Anmeldungsdatum: 22.01.2006 Beiträge: 2
|
Verfasst am: 22.01.2006, 13:50 Titel: Function blocken?!? |
|
|
Moin,
Ich mach gerade eine kleines Simulation, leider gibt es jetzt schon (!) Probleme....
Ich will die Geldausgabe blockieren, WENN man in den Minus bereich fällt...
Ich habe mir das so vorgestellt:
Zitat: | geld=geld+100
input "Einkaufen",einkauf
geld=Geld-(10*einkauf)
if geld=(-geld) then print "zu wenig geld"
if geld=(+geld) then print "verbleibendes Geld: ";geld
getkey |
...aber leider geht's so alles andere als gut...
Danke für eure Hilfe.
Gruß exitus |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 22.01.2006, 14:02 Titel: |
|
|
Hi evtl. gibt's noch andere Lösungen, aber hier erstmal meine:
Code: |
geld=geld+100
input "Einkaufen",einkauf
geldalt=geld
geld=geld-(10*einkauf)
if left$(str$(geld),1)="-" then print "zu wenig geld": geld=geldalt else
print "verbleibendes geld: ";geld
|
Der Code ist ungetestet und könnte Fehler enthalten. Der alte Geldstand wird vorm Einkaufen gesichert, sodass wenn der Geldwert nach dem Einkaufen im Minusbereich ist, wieder hergestellt werden kann.
Greets,
Mao _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
exitus
Anmeldungsdatum: 22.01.2006 Beiträge: 2
|
Verfasst am: 22.01.2006, 14:10 Titel: |
|
|
jop, klapt einwandfrei
Vielen Dank |
|
Nach oben |
|
 |
Lutz Ifer Grillmeister

Anmeldungsdatum: 23.09.2005 Beiträge: 555
|
Verfasst am: 22.01.2006, 14:17 Titel: |
|
|
Servus.
Also, entweder versteh ich da grad was falsch, oder einer von euch steht tierisch aufm Schlauch:
Code: |
input "wieviele hätt' mer denn gern?"; anzahl
if geld > (anzahl * preisprostueck) then
geld = geld - (anzahl * preisprostueck)
gekauftestueck = gekauftestueck + anzahl
print "ich gratuliere zum kauf von ";anzahl;" stück!"
else
print "tut mir leid, aber du hast zuwenig geld!"
end if |
Gruß
Lutz Ifer |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 22.01.2006, 15:32 Titel: |
|
|
Ähh...ja, so kann man's besser schreiben.
Da meine jedoch auch funktioniert und im sauberen Stil geschrieben genausoviele Zeilen wie deine beherbergt, ist's denke ich mal nicht so sehr schlimm. _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 22.01.2006, 17:13 Titel: |
|
|
doch weil der compiler zählt nicht die zeilen. Vieles kann der optimieren wenn er gut gemacht ist, aber zu erkennen, dass du per stringumwandlung die zahl auf "kleiner null" prüfst, das merkt der nicht. Folglich rechnet der erst die zahl in nen string um um den dann aufzuteilen und wieder zu ner zahl zu verrechnen und zu vergleichen. Das ist recht dämlich.. _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
 |
|