diff --git a/src/readme.txt b/src/readme.txt deleted file mode 100644 index 1724e3d8249ad1c619d34f6e4c264d642a4e47d6..0000000000000000000000000000000000000000 --- a/src/readme.txt +++ /dev/null @@ -1 +0,0 @@ -Source Code für die Beispiele und Übungsaufgaben \ No newline at end of file diff --git a/src/wetterstation/AktuelleBedingungenAnzeige.java b/src/wetterstation/AktuelleBedingungenAnzeige.java new file mode 100644 index 0000000000000000000000000000000000000000..879d1486eb91db720be471e408799b5e12696ed3 --- /dev/null +++ b/src/wetterstation/AktuelleBedingungenAnzeige.java @@ -0,0 +1,17 @@ +package wetterstation; + +public class AktuelleBedingungenAnzeige { + private float temperatur; + private float feuchtigkeit; + + public void aktualisieren(float temp, float feucht, float druck) { + this.temperatur = temp; + this.feuchtigkeit = feucht; + anzeigen(); + } + + public void anzeigen() { + System.out.println("Aktuelle Bedingungen: " + temperatur + + " Grad C und " + feuchtigkeit + "% Luftfeuchtigkeit"); + } +} diff --git a/src/wetterstation/StatistikAnzeige.java b/src/wetterstation/StatistikAnzeige.java new file mode 100644 index 0000000000000000000000000000000000000000..5ca9941615c57eda2f5257871c2d38d9b6988432 --- /dev/null +++ b/src/wetterstation/StatistikAnzeige.java @@ -0,0 +1,28 @@ +package wetterstation; + +public class StatistikAnzeige { + private float maxTemp = 0.0f; + private float minTemp = 200; + private float tempSum= 0.0f; + private int anzMesswerte; + + public void neueWerte(float temp, float feucht, float druck) { + tempSum += temp; + anzMesswerte++; + + if (temp > maxTemp) { + maxTemp = temp; + } + + if (temp < minTemp) { + minTemp = temp; + } + + anzeigen(); + } + + public void anzeigen() { + System.out.println("Mit/Max/Min Temperatur = " + (tempSum / anzMesswerte) + + "/" + maxTemp + "/" + minTemp); + } +} diff --git a/src/wetterstation/VorhersageAnzeige.java b/src/wetterstation/VorhersageAnzeige.java new file mode 100644 index 0000000000000000000000000000000000000000..ae53498896271a080e7a86efcd8160997ba38a54 --- /dev/null +++ b/src/wetterstation/VorhersageAnzeige.java @@ -0,0 +1,26 @@ +package wetterstation; + + +public class VorhersageAnzeige { + private float aktuellerLuftdruck = 29.92f; + private float letzterLuftdruck; + + + public void aktuelleWerte(float temp, float feucht, float druck) { + letzterLuftdruck = aktuellerLuftdruck; + aktuellerLuftdruck = druck; + + anzeigen(); + } + + public void anzeigen() { + System.out.print("Vorhersage: "); + if (aktuellerLuftdruck > letzterLuftdruck) { + System.out.println("Wetter-Besserung in Sicht!"); + } else if (aktuellerLuftdruck == letzterLuftdruck) { + System.out.println("Wetter geht weiter so."); + } else if (aktuellerLuftdruck < letzterLuftdruck) { + System.out.println("Gehen Sie von kaelterem, regnerischem Wetter aus."); + } + } +} diff --git a/src/wetterstation/WetterDaten.java b/src/wetterstation/WetterDaten.java new file mode 100644 index 0000000000000000000000000000000000000000..8ced0be5137185ffb1f7990fd70e66c4a645d528 --- /dev/null +++ b/src/wetterstation/WetterDaten.java @@ -0,0 +1,46 @@ +package wetterstation; + +public class WetterDaten { + private float temperatur; + private float feuchtigkeit; + private float luftdruck; + AktuelleBedingungenAnzeige anzeige = new AktuelleBedingungenAnzeige(); + StatistikAnzeige statistik = new StatistikAnzeige(); + VorhersageAnzeige vorhersage = new VorhersageAnzeige(); + + public void messwerteGeaendert() { + System.out.println(this.toString()); + anzeige.aktualisieren(temperatur, feuchtigkeit, luftdruck); + statistik.neueWerte(temperatur, feuchtigkeit, luftdruck); + vorhersage.aktuelleWerte(temperatur, feuchtigkeit, luftdruck); + } + + public void setMesswerte(float temp, float feucht, float druck) { + this.temperatur = temp; + this.feuchtigkeit = feucht; + this.luftdruck = druck; + messwerteGeaendert(); + } + + public float getTemperatur() { + return temperatur; + } + + public float getFeuchtigkeit() { + return feuchtigkeit; + } + + public float getLuftdruck() { + return luftdruck; + } + + public String toString() { + StringBuffer result = new StringBuffer(); + result.append("\nMesswerte:\n"); + result.append("----------\n"); + result.append("Temperatur: " + getTemperatur() + "\n"); + result.append("Luftfeuchtigkeit: " + getFeuchtigkeit() + "\n"); + result.append("Luftdruck: " + getLuftdruck() + "\n"); + return result.toString(); + } +} diff --git a/src/wetterstation/WetterStation.java b/src/wetterstation/WetterStation.java new file mode 100644 index 0000000000000000000000000000000000000000..e0f38c9748e1e9211ffb0671a75c5c3425899f62 --- /dev/null +++ b/src/wetterstation/WetterStation.java @@ -0,0 +1,12 @@ +package wetterstation; + +public class WetterStation { + + public static void main(String[] args) { + WetterDaten wetterDaten = new WetterDaten(); + + wetterDaten.setMesswerte(30, 65, 30.4f); + wetterDaten.setMesswerte(32, 70, 29.2f); + wetterDaten.setMesswerte(28, 90, 29.2f); + } +}