Ascii zeichen darstellen mit cout <<



  • Hiho,

    ich hab nen kleines unsinniges Programm geschrieben, welches einzelne Zahlen quadriert und dann mit einander addiert...
    Nun wollt ich halt in der Ausgabe haben:
    1²+2²+3²... = ...
    Nun wollt ich das Zeichen ² mit dem Asciicode einfügen, aber das funzt nicht so wie ich das möchte.. Ich hab das mit \253 probiert, es kommt aber immer ein anderes Zeichen.

    ´Wie müsst ich das machen, das meine ² auch erscheint?

    #include <iostream>
    
    using namespace std;
    
    class sqrt
    {
    private:
    	double x;
    public:
    	double sqr(double x);
    };
    
    double sqrt::sqr(double x)
    {
    	double y;
    	y= x*x;
    	return y;
    }
    
    int main()
    {
    	sqrt s;
    	double x[4];
    	x[0]=0;
    	x[1]=0;
    	x[2]=0;
    	x[3]=0;
    	cout << "Geben Sie höchste Zahl ein: ";
    	cin >>x[0];
    	for(x[2]=0; x[2]<=x[0]; x[2]++)
    	{
    	x[1]=s.sqr(x[2]);
    	x[3]+=x[1];
    	cout << x[2]<<"\253 + ";
    	}
    	cout<<" = "<<x[3];
    	return 0;
    }
    


  • cout << char(253);
    


  • hi,
    bei mir ist es die 178, aber teste mal bei dir

    #include <iostream>
    using namespace std;
    
    int main(){
    	for (int i=128; i<255; i++)
    		cout<<i<<" -> "<<(char)i<<"  ";
    	cout<<endl;
    }
    


  • ASCII definiert nur 178 Zeichen und das ² gehört nicht dazu.

    Die weiteren Zeichen sind leider unterschiedlich auf den Systemen. Da musst du die Kodierung deines Terminals anpassen



  • Danke,

    mit

    cout << char(253);
    

    hats geklappt 🙂



  • Hasta schrieb:

    #include <iostream>
    
    using namespace std;
    
    class sqrt //warum eine klasse?
    {
    private:
    	double x; //was macht das?
    public:
    	double sqr(double x);
    };
    
    double sqrt::sqr(double x) //warum nicht const?
    {
    	double y;
    	y= x*x; //lokales x verdeckt klassenmember x
    	return y;
    }
    

    ich finde
    sqr(5);
    besser als
    sqr sqr;
    sqr.sqr(5);

    denn das Objekt sqr ist irgendwie sinnlos.



  • kingruedi schrieb:

    ASCII definiert nur 178 Zeichen [...]

    Nicht 128?



  • wenn man oktal oder hexadezimal kann (wird ja leider auch immer seltener) kann man auch cout << '\375' bzw. '\xFD' schreiben ...



  • cd9000 schrieb:

    kingruedi schrieb:

    ASCII definiert nur 178 Zeichen [...]

    Nicht 128?

    öh, du hast natürlich recht. Ich meinte natürlich 0178-Zeichen 😉


Anmelden zum Antworten