[Gelöst] Pythagoras Programm zur Berechnung der Längen



  • AnonKira schrieb:

    Also habe ich das in den falschen Topic gepostet? oO

    Das ist das kleinere Problem für dich. Dein viel größeres ist, dass das kein C++ ist, sondern eine Microsoft-Sprache.



  • o.o Jetzt bin ich komplett verwirrt. Bitte nochmal langsam und auf Deutsch...



  • Das was du da betreibst, ist die Sprache C++/CLI, die von Microsoft für .NET Interop erfunden wurde. Mit ISO-Standard C++ hat das nichts am Hut.



  • Bitte verschieben in C++/CLI.



  • Du verstehst mich nicht. Du willst vermutlich nicht C++/CLI lernen, sondern Standard C++.



  • 314159265358979 schrieb:

    Du verstehst mich nicht. Du willst vermutlich nicht C++/CLI lernen, sondern Standard C++.

    Warum sollte er das, wenn er eine Windows Forms Anwendung schreiben will?



  • Das will er doch vermutlich nicht. Er weiß es nur nicht.



  • AnonKira schrieb:

    Nun wollte ich einen Schritt weiter gehen und es in einer Windows Forms Anwedung schreiben.



  • Er weiß doch nicht mal, was Winforms überhaupt ist. Wie soll er da wissen, ob er das will?



  • 9796543 schrieb:

    314159265358979 schrieb:

    Du verstehst mich nicht. Du willst vermutlich nicht C++/CLI lernen, sondern Standard C++.

    Warum sollte er das, wenn er eine Windows Forms Anwendung schreiben will?

    Wenn er eine Windows Forms Anwendung schreiben will, dann soll er C# verwenden, C++/CLI ist dafür absolut ungeeignet...



  • Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C++ (auch C++0x und C++11) in das Forum C++/CLI mit .NET verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Ich muss genau das lernen was ich geschrieben habe. Ich schreibe demnächst eine Klausur darüber und wollte mich an dem Programm versuchen. Ich muss leider genau diese Sprache können. Ich hoffe ihr könnt mir helfen.



  • wo genau liegt gerade dein problem du hast doch eigentlich schon alles verwendet was du brauchst.

    die checkbox abfrage hast du schon verwendet und das convert auch ?

    if (chkBox1->Checked) 
                { 
                    double d;  
                    d=sqrt((txt1*txt1)+(txt2*txt2)); 
                    txt3->Text= Convert::ToString(d) 
                }
    

    das einzige kleine problem was ich bei dir grade sehe ist das deine variablen txt1,txt2,txt3 einmal als int und einmal als textbox verben sind... das funktioniert zwar aber solte man trotzdem vermeiden.



  • und wenn du die textbox als double einlesen wilst geht das genauso wie du sie als int eingelesen hast.

    double doubleInputValue= Convert::ToDouble(txt1->Text)



  • AnonKira schrieb:

    Ich muss genau das lernen was ich geschrieben habe. Ich schreibe demnächst eine Klausur darüber und wollte mich an dem Programm versuchen.

    Du schreibst eine Klausur über WinForms mit C++/CLI? wtf? Bist du dir da sicher?
    Was für eine Schule/Uni ist das?



  • Berufsschule für Wirtschaft und Verwaltung. Ich mache eine Ausbildung zum Systemintegrator und wir haben ein halbes Jahr lang C++ gemacht und haben nach den Winterferien mit C++/CLI mit .NET angefangen und ich blicke da im Moment einfach nicht durch...



  • Sion schrieb:

    wo genau liegt gerade dein problem du hast doch eigentlich schon alles verwendet was du brauchst.

    die checkbox abfrage hast du schon verwendet und das convert auch ?

    if (chkBox1->Checked) 
                { 
                    double d;  
                    d=sqrt((txt1*txt1)+(txt2*txt2)); 
                    txt3->Text= Convert::ToString(d) 
                }
    

    das einzige kleine problem was ich bei dir grade sehe ist das deine variablen txt1,txt2,txt3 einmal als int und einmal als textbox verben sind... das funktioniert zwar aber solte man trotzdem vermeiden.

    Wenn ich das mache, wirft er mir folgenenden Fehler aus:

    1>c:\users\amarseuti.houndjasper\documents\visual studio 2010\projects\pytagoras\pytagoras\Form1.h(195): error C3861: "sqrt": Bezeichner wurde nicht gefunden.
    1>c:\users\amarseuti.houndjasper\documents\visual studio 2010\projects\pytagoras\pytagoras\Form1.h(196): error C2227: Links von "->Text" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.
    

    Edit:
    Im Moment sieht der Code wie folgt aus:

    double doubleInputValue= Convert::ToDouble(txt1->Text);
    			int txt1=0;
    			int txt2=0;
    			int txt3=0;
    			bool blAuswahl = true;
    
    			if (chkBox1->Checked)
    			{
    				double d;  
                    d=sqrt((txt1*txt1)+(txt2*txt2));
                    txt3->Text= Convert::ToString(d);
    			}
    

    Der Fehler ist dennoch der selbe...



  • double doubleInputValue= Convert::ToDouble(txt1->Text);
                int a=0;
                int b=0;
                int c=0;
                bool blAuswahl = true;
    
                if (chkBox1->Checked)
                {
                    double d;  
                    d=System::Math::Sqrt((a*a)+(b*b));
                    txt3->Text= Convert::ToString(d);
                }
    

    aber sinn macht das noch nicht da das immer 0 ist 😉



  • shion schrieb:

    double doubleInputValue= Convert::ToDouble(txt1->Text);
                int a=0;
                int b=0;
                int c=0;
                bool blAuswahl = true;
    
                if (chkBox1->Checked)
                {
                    double d;  
                    d=System::Math::Sqrt((a*a)+(b*b));
                    txt3->Text= Convert::ToString(d);
                }
    

    aber sinn macht das noch nicht da das immer 0 ist 😉

    wie lässt sich denn nun ein ordentliches Ergebnis ausgeben?



  • ist das nicht langweilig wenn man alles vorgesagt bekommt ?

    double val1=Convert::ToDouble(txt1->Text);
    double val2=Convert::ToDouble(txt2->Text); //val2 kann hypotenuse oder kathete sein
    double val3=0;
    if (chkBox1->Checked)  
    {
      val3=System::Math::Sqrt((val1*val1)+(val2*val2));
    }
    else if (chkBox2->Checked)
    {
      val3=System::Math::Sqrt((val2*val2)-(val1*val1))  
    }
    txt3->Text= Convert::ToString(val3);
    

    so solte es funktionieren aber du soltest beachten das wenn keine chekbox gechecked ist dann passiert garnichts wenn du den button drückst und wenn beide gechecked sind dann wird der txt2 als kathete behandelt ... hier soltest du vieleicht einen radioButton verwenden 🙂

    oder du fügst bei beiden noch ein onclick ein der von der jeweils anderen chkBox das checked raus nimmt dann kan dir das nciht passieren.


Anmelden zum Antworten