Werte in einem String einfügen!



  • [Gelöst]

    Hallo Leute!

    Wie man in meinen Letzten Beiträgen gemerkt hat bin ich noch blutiger anfänger 😃 und habe noch eine frage:

    und zwar habe ich mehrere Funktionen erstellt die + - * / rechnen und in einer weiterern Funktion alle ergebnisse ausgeben (Es ist wichtig das es in einer Funktion passiert das ich sie alle einzeln ausgeben kann weiss ich)

    im moment sieht es bei mir so aus:

    #include "stdafx.h"
    
    using namespace System;
    
    Single Summe(Single x, Single y)				//Funktion Nummer 1
    {
    	return(x+y);
    }
    
    Single Differenz(Single x, Single y)			//Funktion Nummer 2
    {
    	return(x-y);
    }
    
    Single Produkt(Single x, Single y)				//Funktion Nummer 3
    {
    	return(x*y);
    }
    
    Single Quotient(Single x, Single y)				//Funktion Nummer 4
    {
    	return(x/y);
    }
    
    String^ Alle( Single x, Single y)				//Funktion Nummer 5 ( Für alle anderen)
    {
    	String^ alle;
    	alle = "Alle Berechnungen:\nDas Ergebnis der Addition lautet:\t {0} \nDas Ergebnis der Subtraktion lautet:\t {1} \nDas Ergebnis der Multiplikation lautet:\t {2} \nDas Ergebnis der Division lautet:\t {3} ", Summe(x,y), Differenz(x,y), Produkt(x,y), Quotient(x,y);
    	return alle;								//Mein Problem liegrt hier  weil in dem String dan nicht die ergebnisse eingefügt werden sondern weil er genau so ausgegeben wird also mit den {0}
    }												// Aber sonst funktioniert es ja auch auf diese Schreibweise :/
    
    int main(array<System::String ^> ^args)
    {
    
    	Single zahl1, zahl2;
    	char eingabe;
    	String^ x;
    
    	Console::Write("Bitte geben Sie die erste Zahl ein:");
    	zahl1 = Convert::ToSingle(Console::ReadLine());
    
    	Console::Write("Bitte geben Sie die zweite Zahl ein:");
    	zahl2 = Convert::ToSingle(Console::ReadLine());
    
    		if (zahl2 == 0){
    
    		Console::WriteLine("Ungültige Zahl!");
    		Console::Read();
    		return 0;
    	}
    
    	Console::Write("Bitte wählen Sie die Rechenoperation:\t( + , - , * , /)");
    	eingabe = Convert::ToChar(Console::ReadLine());
    
    	if (eingabe == '+')
    
    		Console::WriteLine("Das Ergebnis der Addition lautet: {0}\n", Summe(zahl1, zahl2));
    
    	if (eingabe == '-')
    
    		Console::WriteLine("Das Ergebnis der Subtraktion lautet: {0}\n", Differenz(zahl1, zahl2));
    
    	if (eingabe == '*' )
    
    		Console::WriteLine("Das Ergebnis der Multiplikation lautet: {0}\n", Produkt(zahl1, zahl2));
    
    	if (eingabe == '/' )
    
    		Console::WriteLine("Das Ergebnis der Division lautet: {0}\n", Quotient(zahl1, zahl2));				//Bis hier wird nur eine Zahl ausgegeben aber ich möchte daan das alle ergebnisse nochmal untereinander ausgegeben werden
    
    	Console::WriteLine("{0}",Alle(zahl1, zahl2));		// Damit versuche ich es bis jetzt
    
    	Console::Read();
    
        return 0;
    }
    

    vielen dank schonmal im vor raus 🙂



  • Ich denke was du suchst ist String.Format (siehe http://msdn.microsoft.com/de-de/library/system.string.format.aspx)



  • Nein Habe was anderes gemeint aber jetzt herausgefunden 🙂 trotzdem vielen Dank,

    Die Lösung war übrigens:

    #include "stdafx.h"
    
    using namespace System;
    
    Single Summe(Single x, Single y)
    {
    	return(x+y);
    }
    
    Single Differenz(Single x, Single y)
    {
    	return(x-y);
    }
    
    Single Produkt(Single x, Single y)
    {
    	return(x*y);
    }
    
    Single Quotient(Single x, Single y)
    {
    	return(x/y);
    }
    
    String^ Alle( Single x, Single y)
    {
    
    	String^ alle;
    	Console::WriteLine("Alle Berechnungen:\nDas Ergebnis der Addition lautet:\t {0} \nDas Ergebnis der Subtraktion lautet:\t {1} \nDas Ergebnis der Multiplikation lautet:\t {2} \nDas Ergebnis der Division lautet:\t {3}",Summe(x, y),Differenz(x, y),Produkt(x, y), Quotient(x, y));
    	return alle;
    }
    
    int main(array<System::String ^> ^args)
    {
    
    	Single zahl1, zahl2;
    	char eingabe;
    	String^ x;
    
    	Console::Write("Bitte geben Sie die erste Zahl ein:");
    	zahl1 = Convert::ToSingle(Console::ReadLine());
    
    	Console::Write("Bitte geben Sie die zweite Zahl ein:");
    	zahl2 = Convert::ToSingle(Console::ReadLine());
    
    		if (zahl2 == 0){
    
    		Console::WriteLine("Ungültige Zahl!");
    		Console::Read();
    		return 0;
    	}
    
    	Console::Write("Bitte wählen Sie die Rechenoperation:\t( + , - , * , /)");
    	eingabe = Convert::ToChar(Console::ReadLine());
    
    	if (eingabe == '+')
    
    		Console::WriteLine("Das Ergebnis der Addition lautet: {0}\n", Summe(zahl1, zahl2));
    
    	if (eingabe == '-')
    
    		Console::WriteLine("Das Ergebnis der Subtraktion lautet: {0}\n", Differenz(zahl1, zahl2));
    
    	if (eingabe == '*' )
    
    		Console::WriteLine("Das Ergebnis der Multiplikation lautet: {0}\n", Produkt(zahl1, zahl2));
    
    	if (eingabe == '/' )
    
    		Console::WriteLine("Das Ergebnis der Division lautet: {0}\n", Quotient(zahl1, zahl2));
    
    	Console::WriteLine("{0}",Alle(zahl1, zahl2));
    
    	Console::Read();
    
        return 0;
    }
    

    Viele Grüße Und trotzdem großes dankeschön

    Dennis Hawran



  • DennisHawran schrieb:

    Nein Habe was anderes gemeint aber jetzt herausgefunden 🙂 trotzdem vielen Dank,

    Nein Du hast String.Format gesucht. Momentan gibst Du Deinen String in der Alle-Methode aus und einen Leerstring an die Main-Funktion zurück.


Anmelden zum Antworten