IF Anweisungen



  • #include <stdio.h> main() { char zeichen; for(zeichen = 'A'; zeichen <= 'Z'; zeichen++) { if ((zeichen%3)>1) { printf("%c", zeichen); } } while(1); }

    Hey wie ändere ich das Programm so dass nur jeder zweite Buchstabe ausgegeben wird?



  • Du weisst doch die Buchstaben vorher.

    #include <stdio.h>
    
    int main() {
      puts("ACEGIKMOQSUWY");
    }
    

    Wenns die Schleife sein soll, dann zeichen in jeder Iteration um 2 erhöhen.



  • Nicht ändern.

    Neu schreiben.



  • du musst die bedingung so ändern, dass sie nur dann erfüllt ist, wenn zeichen einen geraden wert hat.


  • Mod

    Wade1234 schrieb:

    du musst die bedingung so ändern, dass sie nur dann erfüllt ist, wenn zeichen einen geraden wert hat.

    Dann hängt das Ergebnis davon ab, ob 'A' gerade oder ungerade ist.

    Überhaupt ist gar nicht garantiert, dass 'B' == 'A' + 1 , usw. ist.



  • also bei ascii- und bei unicode-codierung kommt 'B' nach 'A'.
    ob 'A' jetzt gerade oder ungerade ist, muss man dann natürlich erst einmal in der tabelle nachsehen oder mittels printf ermitteln. 🙄


Log in to reply