Nur die valide
n.
Hier sind mehr Methodengerüste.
import java.util.*; class Monat { // Konstante final int ERRORFLAG = 999; // Instanzvariablen private int monat; // 1 == Januar private int jahr; // Jahr als int, z.B. 2017 private int tageImMonat; // Anzahl der Tage in diesem Monat // Temperatur Daten private int[] temp; //Temperatur Tag 1 in temp[1] private boolean[] valide; . . . // die Anzahl der Tage mit gueltigen Daten zaehlen public int anzahlValideTage() { int anzahl = 0; for ( int tage = 1; tage <= tageImMonat; tage++ ) if ( valide[tage] ) ; return anzahl; } // Durchschnittstemperatur fuer alle gueltigen Tage berechnen public double berechneDurchschnitt() { int summe = 0; int anzahl = 0; for ( int tage=1; tage <= tageImMonat; tage++ ) { if ( valide[tage] ) { } } if ( anzahl > 0 ) return (double)summe/anzahl; else return ERRORFLAG; } . . . . . . } public class MonatsTester { public static void main( String[] args) { . . . System.out.println( jan ); int valideTage = jan.anzahlValideTage(); if ( valideTage > 0 ) System.out.println( "Durchschnittstemperatur: " + jan.berechneDurchschnitt() ); } }
Wir füllen die Lücken aus.