Startfehler



  • das ist doch imprinzip völlig egal ob <= oder >=



  • Windassel schrieb:

    das ist doch imprinzip völlig egal ob <= oder >=

    Naja... Kommt drauf an wie du diesen Satz meinst.



  • Jonas OSDever schrieb:

    Windassel schrieb:

    das ist doch imprinzip völlig egal ob <= oder >=

    Naja... Kommt drauf an wie du diesen Satz meinst.

    ROFL
    im prinzip ja.



  • Windassel schrieb:

    das ist doch imprinzip völlig egal ob <= oder >=

    wenn die aufgabe z.b. falsch gelöst werden darf, dann ist das egal, ja, völlig egal.
    🙂



  • einen hab ich noch, bevor ich joggen tu:

    Windassel schrieb:

    das ist doch imprinzip völlig egal ob <= oder >=

    gib doch mal alle zahlen aus der menge von 1 bis 5 an, für die gilt:
    zahl <= 2
    und gib alle zahlen aus der gleichen menge an, für die gilt
    zahl >= 2
    ist egal, ne? magst recht haben aber es sind nicht die selben. :p



  • Joa, aufgabe mit Hilfe der Musterlösung gelö0t 😞

    #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
    
        int anfangszahl, endzahl, laufvariable;
    
        printf("Eingabe der Anfangszahl: ");
        scanf("%i", &anfangszahl);
        printf("Eingabe der Endzahl: ");
        scanf("%i", &endzahl);
    
        if (anfangszahl >= endzahl) {
                        printf("Die Anfangszahl muss kleiner als die Endzahl sein. Bitte versuche es erneut\n\n");
                        }
    
        while (anfangszahl >= endzahl) { /*Bis hier hin bin ich alleine gekommen! :D*/
              printf("Zahlen zwischen den beiden Zahlen: ");
              }
    
         laufvariable = anfangszahl + 1;
    
         while(laufvariable < endzahl) {
                            printf("%i ", laufvariable);
                            laufvariable +=3;
                            }     
    
        system("PAUSE");
        return 0;
    }
    


  • Und dein Programm dürfte in einer Endlos-Schleife verharren wenn anfangszahl >= endzahl



  • Die Schleife ab Zeile 19 ist kompletter Unsinn - je nach Eingaben hast du dort eine Endlosschleife (wenn ein ungültiges Intervall eingegeben wurde) oder sie wird sofort übersprungen.



  • #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
    
        int anfangszahl, endzahl, laufvariable;
    
        printf("Eingabe der Anfangszahl: ");
        scanf("%i", &anfangszahl);
        printf("Eingabe der Endzahl: ");
        scanf("%i", &endzahl);
    
        if (anfangszahl >= endzahl) {
                        printf("Die Anfangszahl muss kleiner als die Endzahl sein. Bitte versuche es erneut\n\n");
                        }
    
        while (anfangszahl <= endzahl) {
              printf("Zahlen zwischen den beiden Zahlen: ");
              }
    
         laufvariable = anfangszahl + 1;
    
         while(laufvariable < endzahl) {
                            printf("%i ", laufvariable);
                            laufvariable +=3;
                            }     
    
        system("PAUSE");
        return 0;
    }
    

    😃 ok, so aber jetzt 😛 kennt Ihr noch so änliche Aufgaben?



  • Immernoch Endlosschleife.
    Nix jetzt aber... 😃



  • Die Endlosschleife hast du immer noch (nur jetzt unter anderen Bedingungen), außerdem sollten die übrigen Werte nur ausgegeben werden, wenn die Eingaben gültig waren.

    PS: Nur damit du etwas zu tun hast: Gib nach Vorgabe zweier Zahlen alle Primzahlen dazwischen aus.



  • Ihr macht es einem aber auch echt nicht leicht 😃



  • #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
    
        int anfangszahl, endzahl, laufvariable;
    
        printf("Eingabe der Anfangszahl: ");
        scanf("%i", &anfangszahl);
        printf("Eingabe der Endzahl: ");
    
        scanf("%i", &endzahl);
    
        if (anfangszahl >= endzahl)
        {
             printf("Die Anfangszahl muss kleiner als die Endzahl sein. Bitte versuche es erneut\n\n");
        }
        else
        {
             laufvariable = anfangszahl + 1;
    
             while(laufvariable < endzahl)
             {
                  printf("%i ", laufvariable);
                  laufvariable +=3;
             }    
        }
        system("PAUSE");
        return 0;
    }
    


  • ouh man, hab ich wohl nur das else { } vergessen...-.-



  • #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
    
        int anfangszahl, endzahl, laufvariable;
    
        printf("Eingabe der Anfangszahl: ");
        scanf("%i", &anfangszahl);
        printf("Eingabe der Endzahl: ");
    
        scanf("%i", &endzahl);
    
        while (anfangszahl <= endzahl)/*while wird solange ausgeführt solange anfangszahl niedriger oder gleich endzahl ist*/ {
              printf("\n%i", anfangszahl);
              anfangszahl+=2;
              anfangszahl*anfangszahl;
              anfangszahl+1;
    
              }
    
        system("PAUSE");
        return 0;
    }
    

    mir fällt ja gerade auf, dass da ne 15 drinne steht, aber auch nur wegen der anfangszahl+=2; ... mom



  • Und while statt if geschrieben...

    Juhu mein 100. Beitrag!!!

    EDIT: Ging an vorletzten Beitrag.



  • Woyu geh;rt denn das letzte Programm?

    Btw, die Zeilen 20 und 21 machen gar nichts - du berechnest zwar etwas, aber das Ergebnis wird nicht gespeichert.



  • das sollte das mit der primzahl werden...



  • Trotzdem bringt x*x; garnix. Wird nirgenswo gespeichert und von jedem halbwegs intiligenten Compiler wegoptimiert.



  • Dann fangen wir mal etwas einfacher an: Lies eine Zahl ein und ermittle dann, ob diese Zahl eine Primzahl ist.
    (um das Ganze weiterverwendbar zu machen, baust du dir am besten eine Funktion int ist_prim(int wert);//1 für Primzahl und 0 für zusammengesetzte Zahl , die vom Hauptprogramm aufgerufen werden kann)


Anmelden zum Antworten