Español
Foro

Beim Taschenrechner programa! Kapier como qué no. Bzw. Kann Fehler no verstehen

 

Gary12345
¡Hola,
KompilierenMarcaSeparación
Window 0,0-400,400

Proc Hauptprogramm

    declare wert%, wert2%, wert3%, wert4%, wert5%, wert6%, wert7%, wert8%, wert9%, wert10%
    var Button1& = CREATE("Button",%HWND,"1", 50, 50, 50, 50)
    var Button2& = CREATE("Button",%HWND,"2",50, 100, 50, 50)
    var Button3& = CREATE("Button",%HWND,"3",50,150,50,50)
    var Button4& = CREATE("Button",%HWND,"4",50,200,50,50)
    var Button5& = CREATE("Button",%HWND,"5",50,250,50,50)
    var Button6& = CREATE("Button",%HWND,"6",100,50,50,50)
    var Button7& = CREATE("Button",%HWND,"7",100,100,50,50)
    var Button8& = CREATE("Button",%HWND,"8",100,150,50,50)
    var Button9& = CREATE("Button",%HWND,"9",100,200,50,50)
    var Button10& = CREATE("Button",%HWND,"0",100,250,50,50)
    var Button11& = CREATE("Button",%HWND,"+",200,50,50,50)
    var Button12& = CREATE("Button",%HWND,"-",200,100,50,50)
    var Button13& = CREATE("Button",%HWND,":",200,150,50,50)
    var Button14& = CREATE("Button",%HWND,"*",200,200,50,50)
    var Button15& = CREATE("Button",%HWND,"=>",200,250,50,50)
    var ButtonClear& = CREATE("Button", %HWND, "TEST100", 250,100,100,100)

    While 1

        WaitInput

        If clicked(Button1&)

            wert% = 1
            Print wert%

        EndIf

        If clicked(Button2&)

            wert2% = 2
            print wert2%

        EndIf

        If clicked(Button3&)

            wert3% = 3
            print wert3%

        EndIf

        If clicked(Button4&)

            wert4% = 4
            print wert4%

        EndIf

        If clicked(Button5&)

            wert5% = 5
            print wert5%

        EndIf

        If clicked(Button6&)

            wert6% = 6
            print wert6%

        EndIf

        If clicked(Button7&)

            wert7% = 7
            print wert7%

        EndIf

        If clicked(Button8&)

            wert8% = 8
            print wert8%

        EndIf

        If clicked(Button9&)

            wert9% = 9
            print wert9%

        EndIf

        If clicked(Button10&)

            wert10% = 0
            print wert10%

        EndIf

        If clicked(Button11&)

            var Ergebnis$[wert1%,wert2%,wert3%,wert4%,wert5%,wert6%,wert7%,wert8%,wert9%,wert10%] = wert%+wert2%+wert3%+wert4%+wert5%+wert6%+wert7%+wert8%+wert9%+wert10%
            print Ergebnis$

        EndIf

        If clicked(ButtonClear&)

            cls

        EndIf

    EndWhile

EndProc

While 1

    WaitInput
    Hauptprogramm

EndWhile


Como Yo vorgegangen bin:

1. Posesiones überlegt, si Yo Buttons uso se oder sólo una Editierfeld. Yo habe mich para el schwierigere Variante entschieden, nämlich el Buttons.
2. Das Hauptprogramm en un Procedimiento gestellt. Externe Características voluntad en un Extra-Proc behandelt.
3. Alle Buttons una Valor zuweisen (natürlich integer) => wert% - wert10%
4. Falls Button "+" gedrückt wurde, todos Werte addieren. Zu guter letzt ellos con imprimir darstellen dejar (Das Ergebnis natürlich)

Mein Problema:

1. Lo addiert alles correcto, sólo si yo el zweite veces addiert habe (also el zweite veces rechne sin ClearUp) kommt una Fehlermeldung, dass Yo el Variable Ergebnis doppelt deklariert habe. Kann esta Fehler no nachvollziehen.
2. Wenn Yo sólo una vez zwei Werte addiere y luego a guter Letzt en el Button100 klicke, kommt beim zweiten Rechnen auch una Fehlermeldung. Es wiederum el gleiche como en Problema1 beschrieben.
3. Puedo sólo Werte 0-9 darstellen. Keine Werte encima 9. ¿Por qué? ¿Por qué hängt lo siempre una Zahl drunter en lugar de neben el Zahl? Kann Yo auch no nachvollziehen.

Como ihr me helfen könntet

Yo voluntad no Lösungscode. Yo voluntad sólo Hinweise en el Ursache dieses Fehlers. Was Yo genau falso gemacht habe y todavía weitere otro Sachen. Dazu sería Yo el problema no alles en una vez hacer, pero alles Schritt para Schritt. Yo war lo früher gewohnt simplemente sólo Codes a bekommen, aber diesmal voluntad Yo wirklich aprender. Wenn Yo qué no verstehe, entonces frag Yo eben después de. Aber Hinweise en lugar de el ganzen Solución es oft sinnvoller como uno denkt.

Daher vielen Dank ya en vorraus!
 
XProfan X2
MfG
Gary12345
26.01.2013  
 




Dieter
Zornow
In uno Bucle debería uno no Variable declarieren, deshalb kommt el.

Aber lo son todavía mehr Fehler drin, Beim Start Yo una leeres Ventana, sólo si yo klicke erscheinen el Buttons aber una Reihe fehlt bastante. Yo habe me el código no más betrachtet sólo después de el Variables gesucht, como Yo, el Verdacht hatte, dass el en el Bucle declariert se.
 
XProfan X2
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
26.01.2013  
 




Gary12345
Super Problema1 y Problema2 son gelöst.

Also nuevo problema

Problema4:

Wenn al startet, is primero una leeres Ventana como.

Werde como veces rumschauen, qué como los es.
 
XProfan X2
MfG
Gary12345
26.01.2013  
 




Gary12345
Yo mach hier veces una Problemsammlung:

Problema1:
Wenn uno 1+1 rechnet kommt siempre sólo todavía 1 fuera, porque Yo sólo todos Werte addiert habe, pero no berücksichtigt habe, el uno auch mehrmals gleiche Werte eingeben kann.
z.B. 1+1+1=1
2+2+2=2
3+3+3=3
Problema2:
Wenn uno zwei verschiedene Pagar miteinander addiert y el Ergebnis con el gleichen Zahl addiert, restos Ergebnis igual.
z.B. 2+7=9+7=9
3+6=9+6=9
Mit el Button Test100 va el aber entonces otra vez.
Problema3:
Se puede no 11 eingeben. Denn lo schreibt los números siempre untereinander y no nebeneinander.

Yo vermute, dass Problema1 y Problema2 de mathematischen Gründen no stimmen. Daher versuch Yo el selber a lösen. Yo teile euch con, si yo no schaffe. Yo geb euch el aktuellen Code. Wenn doch qué al Code falso es, teilt ihr lo pero por favor me con
KompilierenMarcaSeparación
Window 0,0-400,400
declare wert%, wert2%, wert3%, wert4%, wert5%, wert6%, wert7%, wert8%, wert9%, wert10%
declare Ergebnis$
declare button1&, button2&, button3&, button4&, button5&, button6&, button7&, button8&, button9&, button10&, button11&, button12&, button13&, button14&
declare button15&, buttonclear&

Proc Hauptprogramm

    Button1& = CREATE("Button",%HWND,"1", 50, 50, 50, 50)
    Button2& = CREATE("Button",%HWND,"2",50, 100, 50, 50)
    Button3& = CREATE("Button",%HWND,"3",50,150,50,50)
    Button4& = CREATE("Button",%HWND,"4",50,200,50,50)
    Button5& = CREATE("Button",%HWND,"5",50,250,50,50)
    Button6& = CREATE("Button",%HWND,"6",100,50,50,50)
    Button7& = CREATE("Button",%HWND,"7",100,100,50,50)
    Button8& = CREATE("Button",%HWND,"8",100,150,50,50)
    Button9& = CREATE("Button",%HWND,"9",100,200,50,50)
    Button10& = CREATE("Button",%HWND,"0",100,250,50,50)
    Button11& = CREATE("Button",%HWND,"+",200,50,50,50)
    Button12& = CREATE("Button",%HWND,"-",200,100,50,50)
    Button13& = CREATE("Button",%HWND,":",200,150,50,50)
    Button14& = CREATE("Button",%HWND,"*",200,200,50,50)
    Button15& = CREATE("Button",%HWND,"=>",200,250,50,50)
    ButtonClear& = CREATE("Button", %HWND, "TEST100", 250,100,100,100)

EndProc

Hauptprogramm

While 1

    WaitInput

    If clicked(Button1&)

        wert% = 1
        Print wert%

    EndIf

    If clicked(Button2&)

        wert2% = 2
        print wert2%

    EndIf

    If clicked(Button3&)

        wert3% = 3
        print wert3%

    EndIf

    If clicked(Button4&)

        wert4% = 4
        print wert4%

    EndIf

    If clicked(Button5&)

        wert5% = 5
        print wert5%

    EndIf

    If clicked(Button6&)

        wert6% = 6
        print wert6%

    EndIf

    If clicked(Button7&)

        wert7% = 7
        print wert7%

    EndIf

    If clicked(Button8&)

        wert8% = 8
        print wert8%

    EndIf

    If clicked(Button9&)

        wert9% = 9
        print wert9%

    EndIf

    If clicked(Button10&)

        wert10% = 0
        print wert10%

    EndIf

    If clicked(Button11&)

        Ergebnis$ = str$(wert%+wert2%+wert3%+wert4%+wert5%+wert6%+wert7%+wert8%+wert9%+wert10%)
        print Ergebnis$

    EndIf

    If clicked(ButtonClear&)

        cls

    EndIf

EndWhile

 
MfG
Gary12345
26.01.2013  
 




Gary12345
Komme simplemente no en él.

Yo debería el Variable wert% vervielfachen, el auch otro Pagar salvo sólo 1,2,3,4,5,6,7,8,9 rauskommen.

Man debería abfragen, si el Buttons mehrfach gedrückt worden son, oder no?

Kann me alguien sólo TIPPS geben, Por favor, no Lösungen. (Also a Problema1)

Gracias
 
MfG
Gary12345
26.01.2013  
 



Lo son viele Ansätze una einfachen Taschenrechner umzusetzen.
Como Usted Usted en Bezug en el Ressourcen Deines Computers quasi en el
Schlaraffenland befindest, kannst Usted lo Usted muy ligeramente hacer.

Mach doch primero, dass si uno una Button klickt, dass el entsprechende
Signo a una String hinzugefügt se.

Quasi druck en 5: formel$=formel$+"5"
Quasi druck en +: formel$=formel$+"+"
Quasi druck en 9: formel$=formel$+"9"

Beim Istgleichzeichen muss entonces sólo todavía formel$ ausgerechnet voluntad,
dafür hay el Función eval( ... ( [...]  ).

Ach sí, eval gibts sí todavía no -

entonces simplemente: [...] 
 
26.01.2013  
 




Gary12345
Yo bin ehrlich:

Von el Code como kapier Yo reingarnichts y voluntad Yo auch no anwenden. Gibt lo una otro Möglichkeit el a lösen. Über input wärs sí viel leichter. Como debería al input sólo en una cadena packen y el entonces adieren. Das schaut pero no así schön de.
 
XProfan X2
MfG
Gary12345
26.01.2013  
 



Como geschrieben hay sí viele Lösungswege. ¿Tiene un otro Concepto?
 
26.01.2013  
 




Gary12345
Yo kenn zwei Lösungswege:

1. Per Editierfeld a hacer (Entrada,editfeld,etc.)
2. Oder por Buttons...

Welche hay todavía?
 
XProfan X2
MfG
Gary12345
26.01.2013  
 



Su Lösungswegen kann Yo no así correcto entnehmen ¿qué es exactamente ellos
alles lösen debería.

Das una Es el Anzeige/ Oberfläche quasi UI -
el otro es el Ausrechnen.

Mein Tip war sí:

Mach doch primero, dass si uno una Button klickt, dass el entsprechende
Signo a una String hinzugefügt se.

Quasi druck en 5: formel$=formel$+"5"
Quasi druck en +: formel$=formel$+"+"
Quasi druck en 9: formel$=formel$+"9"


Zudem dejar se:

1. Per Editierfeld a hacer (Entrada,editfeld,etc.)
2. Oder por Buttons...

auch kombinieren sodass uno con el Buttons "nur" una Editar befüllt uno aber el
Editar auch direkt Editar kann.
 
26.01.2013  
 




Gary12345
Vll kann Yo Usted lo ahora algo erläutern:

Si usted mi Code en XPROFAN eingibst y ausführst, merkst Usted , dass él todos Pagar untereinander schreibt y no nebeneinander. Das otro Problema war, dass si yo 1+1=1 ergibt, como el Code no zwei gleiche Werte addieren kann. Das letzte Problema es, dass wen Yo 6+2=8+2=8 ergibt, y como Yo no Plan por qué.

Zuerst sería Yo el erste Problema lösen.



Mach doch primero, dass si uno una Button klickt, dass el entsprechende
Signo a una String hinzugefügt se.

Quasi druck en 5: formel$=formel$+"5"
Quasi druck en +: formel$=formel$+"+"
Quasi druck en 9: formel$=formel$+"9"


Yo weiß no, Yo bajo formel$ verstehen se.
 
XProfan X2
MfG
Gary12345
26.01.2013  
 




Gary12345


Zudem dejar se:

1. Per Editierfeld a hacer (Entrada,editfeld,etc.)
2. Oder por Buttons...

auch kombinieren sodass uno con el Buttons "nur" una Editar befüllt uno aber el
Editar auch direkt Editar kann.


Das wäre auch una muy optionale Solución. Aber antworte pero por favor en el oberen Post
 
XProfan X2
MfG
Gary12345
26.01.2013  
 




Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

25.037 Views

Untitledvor 0 min.
ecki29.12.2023
MrZebulon05.08.2018
rawerra30.12.2016
Peter Max Müller30.10.2014
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie