Variable wird nicht richtig ausgegeben



  • Moin,

    ich bin anfänger mache gerade ein Fernstudium C++ Programmierer.
    Habe folgendes Problem:

    Erst mal der Code

    #include "stdafx.h"
    
    using namespace System;
    static void WriteLine (wchar_t rechenzeichen);
    
    int main(array<System::String ^> ^args)
    {
    	double zahl1, zahl2, ergebnis;
    	char rechenzeichen;
    
    	Console::WriteLine("Geben Sie die erste Zahl ein:");
    	zahl1=Convert::ToDouble(Console::ReadLine());
    	Console::WriteLine("Geben Sie die zweite Zahl ein:");
    	zahl2=Convert::ToDouble(Console::ReadLine());
    	Console::WriteLine("Geben Sie die Rechenoperation ein: (+,-,*,/)");
    	rechenzeichen=Convert::ToChar(Console::ReadLine());
    	switch(rechenzeichen){
    		case '+': ergebnis = zahl1+zahl2; break;
    		case '-': ergebnis = zahl1-zahl2; break;
    		case '*': ergebnis = zahl1*zahl2; break;
    		case '/': ergebnis = zahl1/zahl2; break;
    		}
    
    	Console::WriteLine("Das Ergebnis der {1} lautet: {3}",zahl1,rechenzeichen,zahl2,ergebnis);
    
        return 0;
    }
    

    rechenzeichen wird am ende nicht als +, -, * oder / ausgegeben aber als Zahl,
    kann jemand mich da helfen, am liebste würde ich rechenzeichen als Text ausgeben, / als Division, + als Addition usw.
    Habe schon verschiedenes probiert komme aber nicht weiter.
    Wäre nett wann ich nicht nur eine Lösung aber auch eine Erklärung bekommen könnte.

    MfG

    Simon Bremer



  • Dazu müsste man iwssen was WriteLine ToChar usw. machen. Das sind keine C++ Funtkionen.



  • Das ist C++/CLI, kein ISO-C++.



  • Console::WriteLine("Das Ergebnis der {1} lautet: {3}",zahl1,std::string(rechenzeichen),zahl2,ergebnis);
    

    mfg, René~



  • Ad aCTa schrieb:

    Das ist C++/CLI, kein ISO-C++.

    Entschuldigung, ich bin erst seit Heute hier im Forum, vielleicht kann ein Admin mein Frage ins richtige Forum packen.

    MfG

    Simon Bremer



  • NewSoftzzz schrieb:

    Console::WriteLine("Das Ergebnis der {1} lautet: {3}",zahl1,std::string(rechenzeichen),zahl2,ergebnis);
    

    mfg, René~

    Hi René,

    Danke für dein Antwort, habe schon gemerkt bin im falsche Forum weil ich VC++ benutze.
    std::string ist nicht im namespace System, jedefalls funktioniert das bei mir so nicht, vielleicht haste noch ein ander Lösung

    MfG

    Simon



  • Probier mal

    Console::WriteLine("Das Ergebnis der {1} lautet: {3}",zahl1,rechenzeichen.ToString(),zahl2,ergebnis);
    

    Aber warum übergibst du noch zahl1 und zahl2, wenn du sie garnicht ausgibst?

    Console::WriteLine("Das Ergebnis der {0} lautet: {1}",rechenzeichen.ToString(),ergebnis);
    


  • sibre schrieb:

    Entschuldigung, ich bin erst seit Heute hier im Forum, vielleicht kann ein Admin mein Frage ins richtige Forum packen.

    Dass du erst seit heute im Forum bist entschuldigt aber nicht, dass du dich nicht erstmal umgeschaut hast und dir die wichtigen Threads durchgelesen hast 😉



  • Dieser Thread wurde von Moderator/in pumuckl aus dem Forum C++ 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.



  • Kannst Du mir mal den Anbieter des Fernstudiums sagen?
    So langsam nimmt das ja überhand... auch wird Dir vorgegaukelt, dass Du C++ lernen würdest, was definitiv nicht der Fall ist. Du lernst C++/CLI, was Dir in der Praxis bei keiner Firma was bringen wird! Das sollte man dem Anbieter endlich mal sagen!
    Auch finde ich das fast eine Frechheit von dem Anbieter den Kurs als "C++" anzubieten...


Anmelden zum Antworten