Seite 1 von 2
(Mathe-)Aufgaben vollständig ausgeben
Verfasst: 09.03.2008 21:33
von Tombi
Ist es möglich z.b. folgendes zu speichern (wohl dann in einen String):
1+1
Wenn ich dann dies z.b. in einem StringGadget() ausgeben möchte soll da nicht 2 stehen sondern "1+1" ...
Ist das möglich?
- Danke im Vorraus -
- Tombi -
Verfasst: 09.03.2008 21:37
von RSBasic
Tipp: Str()
EDIT: @STARGÅTE : Oh, falsch gelesen, war zu voreilig
Verfasst: 09.03.2008 21:37
von STARGÅTE
wenn du
1+1
irgendwo hinschreibst, ist es doch bereit sowieso ein String : "1+1"
und wenn du als Button erst eine 1 dann ein + und dann eine 1 drückst, dann kannst du doch auch einen String zusammen schreiben:
Aufgabe$ + Str(1) + "+" + Str(1)
denn wenn du irgendwo einen String hinschreibt rechnet das Programm sowieso nix aus, erst wenn du es dazu bringst (Anderes Thema)
EDIT: @RSBasic : da steht : "soll da nicht 2 stehen"
Verfasst: 09.03.2008 21:38
von ZeHa
Naja z.B. so:
text.s = "1 + 1"
oder auch so:
a.l = 1
b.l = 1
text.s = Str(a) + "+" + Str(b)
auch das hier ist möglich:
a.f = 7.3
b.f = 9.2
text.s = StrF(a) + "+" + "StrF(b)
Verfasst: 09.03.2008 21:40
von Tombi
Str() ist die Lösung, danke euch
Da sieht man mal wie flink unsere Helfer sind, fast alle zur gleichen Zeit

Verfasst: 09.03.2008 21:44
von STARGÅTE
also wenn Str() deine Lösung war, dann ließ doch bitte vorher die Hilfe etwas genauer, ober probier halt aus.
Aber für Frage ist hier der falsche Ort.
Syntax
Ergebnis$ = Str(Wert)
Beschreibung
Konvertiert eine (vorzeichenbehaftete) Ganzzahl in einen String.
Hinweis: Fließkommazahlen werden mit dem Befehl StrF(), Doubles mit StrD() und vorzeichenlose Zahlen mit dem Befehl StrU() konvertiert.
Beispiel:
value.l = 10
result$ = "Ergebnis: " + Str(value)
Debug result$
Unterstützte OS
Alle
Verfasst: 09.03.2008 22:18
von ZeHa
Naja, also wer noch nie was programmiert hat, der kommt auch nicht drauf, wo er das in der Hilfe finden soll. Ich bin damals unter QBASIC auch nur zufällig über STR$ gestoßen... finde die Frage hier nicht unangebracht.
Verfasst: 09.03.2008 22:50
von STARGÅTE
oh ja QBasic war schon cool
vorallem mit SCREEN 12 konnte man richtig geile Spiele schreiben (die DrawingBefehle von heute)
Meine erste Schritte in QBasic:
Code: Alles auswählen
SCREEN 12
pi = 3.141592653589#
rSonneErde = 200
rErdeMond = 30
1
CIRCLE (300, 240), 20, 0
CIRCLE (300 + xSonneErde, 240 + ySonneErde), 10, 0
CIRCLE (300 + xSonneErde + xErdeMond, 240 + ySonneErde + yErdeMond), 7, 0
a = a - 1 / 13
b = b - 1
xSonneErde = COS(a * (pi / 180)) * rSonneErde
ySonneErde = SIN(a * (pi / 180)) * rSonneErde
xErdeMond = COS(b * (pi / 180)) * rErdeMond
yErdeMond = SIN(b * (pi / 180)) * rErdeMond
CIRCLE (300, 240), 20, 14
CIRCLE (300 + xSonneErde, 240 + ySonneErde), 10, 9
CIRCLE (300 + xSonneErde + xErdeMond, 240 + ySonneErde + yErdeMond), 7, 6
FOR zeit = 1 TO 2000: NEXT zeit
GOTO 1
Verfasst: 10.03.2008 18:27
von Tombi
Mh, nun doch wieder ein Problem
Wenn ich das ganze in z.b. Rechnung$ speichere, aber dann das Ergebnis rausbekommen möchte, wird das so leider nichts.
Habe auch schon versucht das irgendwie in eine Variable o.ä. umzuwandeln ... ohne weitere Ergebnisse.
- Tombi -
Verfasst: 10.03.2008 18:36
von ZeHa
Naja dazu brauchst Du einen Parser, der diesen String wieder auflöst und ausrechnet. Das heißt, Du müßtest Dir nun ein Programm schreiben, das den String in seine Einzelteile zerlegt (er muß also Zahlen, Klammern und Rechenzeichen erkennen) und dann nach und nach ausrechnet...
Vielleicht wäre es aber besser, wenn Du mal generell sagst, was Du vorhast, denn möglicherweise machst Du Dein Programm nur unnötig umständlich, und es gibt 'ne bessere Lösung. Oder probierst Du einfach nur ein bißchen rum, um die Sprache zu lernen?