Frage zur "if" Anwendung



  • Moinmoin,
    ich soll für meine Hausaufgabe (Informatik Studium) etwas programmieren das mir "Bsp.:
    Stunden: 10
    Minuten: 30
    Der Winkel betraegt 135 Grad."
    in der Konsole ausführt. Also man soll den KLEINEREN Winkel zwischen dem großen und dem kleinen Zeiger der Uhr auswerfen, wenn der Benutzer eine Uhrzeit (24h) eingibt.
    Soweit so gut, funktioniert an sich auch, aber nur die ersten 12h. Wie setze ich die 12 Stunden gleich den weiteren 12 Stunden?
    Ich gebe mal meine Funktion :

    #include <iostream>

    using namespace std;

    int main() {
    int stunden;
    int minuten;

    cout<<"Geben Sie die Uhrzeit ein, fuer die der Winkel berechnet werden soll:\n";
    cout<<"Stunden:";cin>>stunden;
    cout<<"Minuten:";cin>>minuten;

    //stunden
    int y;

    int t;
    t = stunden+(minuten/60);

    y=360/12;
    int sw;
    sw = y*t;

    //minuten
    int x;
    int z = minuten;

    x=360/60;
    int mw;
    mw=x*z;

    int Winkel;

    Winkel=sw-mw;

    if (Winkel>0,Winkel<=180); {
    cout<<"Der Winkel betraegt: "<<Winkel<<" Grad"<<endl;
    }

    int h;

    if (Winkel>0,Winkel<=360); {
    h=360-Winkel;
    cout<<"Der Winkel betraegt: "<<h<<" Grad"<<endl;
    }

    int j;

    if (Winkel<0) {
    j=Winkel*-1;
    cout<<"Der Winkel betraegt: "<<j<<" Grad"<<endl;
    }
    }

    Nur so wirft mir die Konsole alle 3 couts aus. Ich hätte das gerne so, dass erst die Bedingung überprüft wird und anschließend dann das was zutrifft ausgegeben wird.
    Vermutlich sehr einfach für jeden von euch. Habe aber jetzt erst angefangen mit dem Studium 😃
    Hoffe auf Hilfe



  • - hättest auch im richtigen (sprich C++) Forum posten können
    - hättest auch Code Tags benutzen können
    - Tipp: wenn du eine Konjunktion herstellen möchtest, geht das mit dem && Operator (logisches und), der Kommaoperator macht was anderes
    - Spoiler: hier hat schonmal jemand sowas gepostet: https://www.c-plusplus.net/forum/335722



  • Außerdem ist das Semikolon bei if (/* ... */) ; { /* ... */ } hier auch falsch



  • ah okay, danke dir.
    Sorry für den falsch Post.


Anmelden zum Antworten