minimum/maximumsuche mit IF (hilfe)



  • hallo...

    ich weiss nicht ob ich hier richtig bin...wenn nicht dann berichtigt mich bitte...
    also ich hab seit einer woche C++,von daher ist das wahrscheinlich auch ne ziemlich billige frage oda so,weiss nicht....aber ich komme bei der aufgabe nicht weiter...
    wir sollen die aufgabe mit If-Anweisungen lösen...

    vllt kann mir ja jemand helfen...wäre nett...danke
    also hier die aufgabe:

    Entwerfen sie ein Programm,womit der Computer von 3 belibig eingebaren Zahlen die kleinste und die grösste bestimmt.

    den anfang hab ich(zumindest so wie ichs gelernt hab):

    #include <stdio.h>

    void main ()

    {

    int a,b,c;
    scanf("%d",&a);
    scanf("%d",&b);
    scanf("%d",&c);

    -----------
    aber nun weiss ich nich wie ich die If anweisung beginnen soll...
    wäre für jeden noch so kleine tip dankbar...

    wie gesgat wenn sowas hier nicht reingehört dann berichtigt mich bitte



  • also aufgrund vieler Hinweise sieht mir dein Code nach C und nicht nach c++ aus.
    wie dem auch sei, die logik wäre doch folgende,oder ?
    wenn a>b und a>c ist a die grösste , das gleich kann man ja dann ggf noch bei und b testen
    wenn a< b und a<c ist a die kleinste.

    wichtig wäre es zu wissen ob man auch gleiche werte eingeben kann. Dies muss aber aus der aufgabenstellung hervorgehen.
    Naja dann müsstest du ein
    if(a==b)
    if c==a
    else if a<c
    else

    bauen. so kannst du dies schon einmal ausschliessen bzw dann das maximum bestimmen.
    alles in allem solltest du immer 2 zahlen testen und (fürs maximum) die grössere mit der übrigen vergleichen. fürs minimum dann analog.
    also ich denke vll konnte ich dir hiermit ne anregung geben



  • ja stimmt ist C -sry-

    ja das stimmt das müsste gehen...aber gibts da nicht nochn eleganteren weg?weil das mit so vielen IF anweisungen zu machen ist voll komisch...

    aber danke



  • inline int max(int a, int b)
    {
    return a > b ? a : b;
    }
    
    int main()
    {
      cout << max(max(1, 2), 3) << endl;
    }
    

    musst nur noch die inlines auflösen


Anmelden zum Antworten