Rechnen mit Variablen

Startseite Foren Deutsches LiveCode-Forum Rechnen mit Variablen

Ansicht von 11 Antwort-Themen
  • Autor
    Beiträge
    • #3953
      YoloBolo
      Teilnehmer

        Hallo,

        geht es, dass wenn ich in Variable 1 eine Zahl und ein Rechenoperator und in Variable 2 nur ein Zahl rein tut ([Variable]1[Variable 2]), dass man dann so rechnen kann ohne nochmal extra einen Rechenoperator hinzufügen ([Variable]1 + [Variable 2] ….das will ich nicht!!!!!!!)muss…

      • #3955
        Torsten
        Teilnehmer

          Ich weiss nicht genau, was Du damit willst, aber im Prinzip geht sowas:

          put "1 + 2" into einsUndZwei
          answer value(einsUndZwei)

          oder gar:

          put "1 +" into einsPlus
          put 2 after einsPLus
          answer value(einsPlus)
        • #3957
          YoloBolo
          Teilnehmer

            Mein Projekt ist ein erweiterter Taschrechner, meinst du das wäre anders bzw. besser zu lösen?

            LG Max

          • #3961
            Torsten
            Teilnehmer

              Hi Max,

              hast Du das Video von Hauke schon mal angesehen? https://www.youtube.com/watch?v=N93qGiCmdtQ

              Hier hat er einen sehr genialen Ansatz per Karten-Skript gewählt.

              Hier http://www.loper-os.org/?p=568 ist nochmal ein anderer Ansatz demonstriert, per Skript in den einzelnen Buttons. Einfach die Bilder anschauen, dort ist der komplette Weg beschrieben. Zwar geht es in dem Aufsatz um den “Großvater” von Livecode, aber die Skripte funktionieren immer noch.

              Beschreib’ doch mal, was der Taschenrechner genau für Funktionen haben soll und wie Du dir die Interaktion vorstellst, d.h. was soll der Benutzer machen, damit was passiert.

              Beste Grüße
              Torsten

            • #3971
              YoloBolo
              Teilnehmer

                Hallo Torsten,

                wenn man auf einen Button klickt (0-9) werden die Zahlen in ein Feld getan, wenn dann ein Button mit einem Rechenoperator klickt wird die Zahl in eine Variable geklickt und das Feld wird geleert, wenn man dann eine weitere Zahl und einen Button mit dem “=” drückt wird das Ergebnis angezeigt…..weißt du ob es einen Befehl gibt, der überprüft ob ein Rechenoperator in der Variable ist, weil wenn ich mit dem Befehl if zahl1 is a number then.... und in der Variable “3*” steht dann wird dieser Befehl nicht ausgeführt….

                LG Max

              • #3973
                YoloBolo
                Teilnehmer
                  on mouseup
                     if field "Eingabe" is a number then
                        if "*" is in field "Anzeige" then 
                           put field "Eingabe" after zahl1  
                           clear the last word in field "Eingabe"
                           clear the last word in field "Anzeige"
                           clear the first word in field "Anzeige"
                           put zahl1 into field "Eingabe"
                        else 
                           put field "Eingabe" into zahl1  
                           clear the last word in field "Eingabe"
                           put " * " after zahl1
                           put zahl1 into field "Anzeige"
                        end if
                     end if
                  end mouseup

                  Habe jetzt das Script so, es funktioniert alles, bis auf das dann mir nicht das Ergebnis Angezeigt wird, sondern als Bsp. ich drücke Button 3 und dann *, 3 * wird dann in eine Variable getan und aus dem Feld gelöscht. wenn ich dann den Button 2 und dann *, dann wird 3 * 2 in das Textfeld gepackt und nicht das Ergebnis….
                  Wenn du für das obere Script Verbesserungsvorschläge hast, gerne…

                  LG Max

                • #3980
                  gfz
                  Teilnehmer

                    Hallo Max,
                    ich habe mich etwas mit deiner Anfrage beschäftigt und mir ist der Einsatz deiner Felder nicht ganz klar. “Eingabe” erhält immer die Eingaben des Benutzers bzw. soll nach Ausgabe eines Zwischenergebnisses gelöscht werden(?). Wo erfolgt die Ausgabe der (Zwischen-)Ergebnisse? Sind die Felder “Eingabe” und “Anzeige” beide sichtbar?
                    liebe Grüße,
                    Georg

                  • #3982
                    Klaus Major
                    Administrator

                      Und das kompiliert ohne Error? Ich bin völlig irritiert!

                      Wie kommst Du auf diese Syntax?
                      “clear” ist definitiv kein Befehl in Livecode, sondern eine der vielen INK Einstellungen!?

                    • #3984
                      Klaus Major
                      Administrator

                        Gerade getestet, das funktioniert wirklich, ich lach mich tot! 😀
                        Max, woher wusstest Du das?

                      • #3988
                        Klaus Major
                        Administrator

                          OK, hab es im Dictionary gefunden, steht aber nicht unter “clear”, sondern unter “clear chunk” und ist wohl ein Aequivalent zu “delete”.

                          Kannte ich vorher gar nicht, danke Max, wieder was gelernt!

                        • #3990
                          YoloBolo
                          Teilnehmer

                            Habe mir das mit dem clear aus dem Englischen hergeleitet und ausprobiert

                          • #3992
                            YoloBolo
                            Teilnehmer

                              @Klaus Major
                              ich habe zudanken

                          Ansicht von 11 Antwort-Themen
                          • Du musst angemeldet sein, um auf dieses Thema antworten zu können.