for-anweisungen



  • Hallo 🙂
    Ich möchte folgendes Programm in eine For anweisung schreiben:

    #include "std_lib_facilities.h"
    
    int main()
    {
    	char a = 'a';
    	int i =97;
    	while (a<123) {
    		cout<< a <<"\t"<< i << "\n";
    		++a;
    		++i;
    	}
    }
    

    Doch irgendwie klappt das nicht 😞
    Ich habe es so versucht:

    #include "std_lib_facilities.h"
    
    int main()
    {
    	for(int i = 97;char a = 'a';a<123;++i;++a)
    		cout<< i << "\t" << a << "\n";
    
    }
    

    Irgendetwas mache ich falsch 🙂

    Liebe Grüße Niklas


  • Mod

    Du kannst nicht mehrere Variablen unterschiedlichen Typs in der for-Anweisung selbst deklarieren. Mach entweder beide Variablen vom Typ int (außerdem trennt man so etwas durch Komma!) oder zieh eine der Variablen (das i bietet sich an) aus der Schleife raus. Kurz so:

    for(int i = 97, a = 'a';a<123;++i,++a)
            cout<< i << "\t" << a << "\n";
    

    Oder so:

    int i = 97;
        for(char a = 'a';a<123;++i,++a)
            cout<< i << "\t" << a << "\n";
    

    edit: Und noch ein heißer Tipp: Zahlen und Buchstaben sind in C++ das gleiche (außer bei der Ausgabe). Du kannst (wie in meinem ersten Code gezeigt) durchaus einem int ein Zeichen zuweisen oder einem char einen Integer. Da sie sich nur bei der Ausgabe unterscheiden, brauchst du gar keine 2 Variablen, du musst der Ausgabe bloß sagen, was du wann möchtest:

    for(char a = 'a'; a <= 'z'; ++a)
            cout<< static_cast<int>(a) << "\t" << a << "\n";
    


  • ahh ok
    das wusste ich noch nicht

    Danke für die schnelle Hilfe

    Gruß Niklas 😉


Anmelden zum Antworten