Frage Zwecks Potenzierungsprogramm....



  • Hallo Leute ich mach jetzt erste Fortschritte mit C!!!

    nun meine Frage warum funktioniert bei diesem Programm meine gewünschte Verzweigung nicht... Irgendwie ist mir klar dass ich das ganze auf die letzte Zahl beziehen muss wie das ganze aber aussehen soll weis ich leider nicht ... hier mein Programm!

    Sollten andere Fehler auch enthalten sein bitte ich darum dass ihr mich auf diese aufmerksam macht 🙂 euer Panthe

    Was ich damit bezwecken will... will dass wenn die letzte Potenz 256 ist er ausprintlt dass es das gewünschte ergebnis ist! sprich alle potenzen dessen letzte potenz 256 ist ... im Rahmen von 0/256 versteht sich ...

    int main(void)
    {
    
        int zahl = 1;
        int potenz;
        printf("Geben sie die gewünschte Potenz ein!\n");
        scanf("%i",&potenz);
    
        while(zahl<=256)
        {
            printf("Potenz : %d\n",zahl);
    
            zahl = zahl*potenz;
        }
    
        if(zahl >= 256)
        {
            printf("Anwendung Potenzrechnung abgeschlossen!\n");
        }
                if(zahl!=256)
                {
                    printf("Ungewünschtes Ergebnis!\n");
                }
                    else
                    {
                        printf("Gewünschtes Ergebnis!\n");
                    }
    
        return 0;
    }
    


  • Sollte wohl heissen:

    while(zahl<256)
    


  • Es gibt auch ein do-while Schleife. Da wird am Ende der Schleife geprüft.

    Das if(zahl >= 256) ist nicht nötig, das ergibt sich automatisch aus der while-Schleife.
    Und die Einrückungen musst du nochmal überprüfen.

    #include <stdio.h>
    
    int main(void)
    {
        int zahl = 1;
        int potenz;
    
        printf("Geben sie die gewünschte Potenz ein!\n");
        scanf("%i",&potenz);
    
        do
        {
            zahl *= potenz;
            printf("Potenz : %d\n",zahl);       
        }
        while(zahl<256);
    
        printf("Anwendung Potenzrechnung abgeschlossen!\n");
    
        if(zahl!=256)
        {
            printf("Ungewünschtes Ergebnis!\n");
        }
        else
        {
            printf("Gewünschtes Ergebnis!\n");
        }
    
        return 0;
    }
    


  • Unabhängig von der hier gestellten Frage musst du dich notwendig mit den wesentlichen Kontrollstrukturen von C: if, for, while, ... vertraut machen. Wenn du damit sicher umgehen kannst, findest du die Lösung selbst.



  • danke an die beteiligten problem gelöst 😃 ^^


Anmelden zum Antworten