Temperatur mit max. und min.-Wert bestimmung in einem Array



  • okay, cool.
    jetzt gibt er mir den max wert aus. nur wie kann ich jetzt noch die Station ermitteln wo der max wert her kommt ?



  • c++neuling92 schrieb:

    okay, cool.
    jetzt gibt er mir den max wert aus. nur wie kann ich jetzt noch die Station ermitteln wo der max wert her kommt ?

    Na komm...! Du merkst Dir in einer weiteren Variable den Index des Maximums?!



  • Was man sich auch sparen kann und anstatt dem Index via Arrayzugriff mit Index an den Wert kommt.



  • Danke für die hilfreichen antworten, jedoch muss das Programm doch anderes sein, und zwar sollen die Werte Fix sein und für den Anwender bereits vorgegeben sein.
    Nun bin ich zu diesem Quelltext gekommen:

    /*##########
    e04_1.2
    ###########*/
    
    # include <iostream>
    
    using namespace std;
    
    int main()
    {
    	double zahlenFeld[5] = {24.5,28.7,31.2,26.4,32.3};
    
    	for (int schleife = 0; schleife < 5; schleife ++) {
    		cout << "Der Wert der " << schleife+1 << ". Station ist: "
    			<< zahlenFeld[schleife] << " Grad" << endl;
    
    	}  
    	double max = zahlenFeld[0];
    
      { 
    int schleife;
      int (max > zahlenFeld[schleife]);
        {
          max = zahlenFeld[schleife];      
        }
    
      cout << endl << "Der Max-Wert betraegt: " << max << " Grad and Station " << endl;
      }
    
      double min = zahlenFeld[0];
      {  
    	int schleife;
        int (min > zahlenFeld[schleife]);
        {
          min = zahlenFeld[schleife];      
        }
      }
      cout << endl << "Der Min-Wert betraegt: " << min << " Grad and Station " << endl;
    
    	getchar();
    	return 0;
    }
    

    jetzt bekomme ich gesagt "warning C4700: Die nicht initialisierte lokale Variable "schleife" wurde verwendet."
    Ich finde den Fehler allerdings nicht, außerdem werden mir für Max und Min die selben werte ausgeben und auch immer nur von einer Station. Und die bestimmung von welcher Station der Max bzw. Min wert kommt bekomm ich auch net gebacken...

    Danke für eure Geduld und Nerven 🙂 🙂
    Hoffe ihr könnt mir schnell helfen damit ich das letzte Programm hier fertig bekomme.



  • Der Compiler hat immer recht:

    int schleife;
      int (max > zahlenFeld[schleife]);
    

    hier verwendest du "schleife", initialisiert es aber nicht.

    Vermutlich möchtest du dort eine zweite Schleife haben. Und nein, "if" ist keine Schleife.



  • c++neuling92 schrieb:

    Danke für die hilfreichen antworten, jedoch muss das Programm doch anderes sein, und zwar sollen die Werte Fix sein und für den Anwender bereits vorgegeben sein.
    Nun bin ich zu diesem Quelltext gekommen:[...]

    Tut mir leid, aber ich habe weder Zeit noch Lust immer das gleiche zu schreiben:
    Teile das Problem in kleinere Probleme auf und schreibe Funktionen für die Teilprobleme.
    (Das Problem Eingabe hat sich ja gerade erledigt.)

    Und dringendst solltest Du Dir nochmal das Thema Schleifen in Deinen Kursunterlagen anschauen.

    Viel Erfolg.


Anmelden zum Antworten