Array Aufgabe

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Array Aufgabe

    Hallo,
    Ich komme bei meiner Informatik Hausaufgabe nicht mehr weiter. Ich hänge daran, dass die Differenzen falsch ausgegeben werden(sind verrutscht) und ich nicht weiß wie ich einen Array mit den Monatsnamen machen kann.
    Ich hoffe ihr könnt mir etwas helfen.
    Hier erstmal die Aufgabe:
    3) Auswerten von Klimadaten
    a) Die folgende Tabelle zeigt die Monatsdurchschnittstemperaturen der Stadt Jakutsk (Sibirien).
    Monat 1 2 3 4 5 6 7 8 9 10 11 12
    Temp.-42 -35 -20 -9 4 13 18 15 6 -8 -30 -40
    Mit einem Java-Programm soll nun die Jahresdurchschnittstemperatur (Summe der
    Monatsdurchschnittstemperaturen dividiert durch 12) sowie für jeden Monat die Abweichung von der
    Jahresdurchschnittstemperatur angegeben werden.
    Die Eingabe soll wie folgt durchgeführt werden:
    Geben Sie die Temperatur für den 1. Monat ein: -42
    Geben Sie die Temperatur für den 2. Monat ein: -35
    ...
    Geben Sie die Temperatur für den 12. Monat ein: -40
    Die Ausgabe ist z. B.
    Die Jahresdurchschnittstemperatur ist -10.67 Grad.
    Der 1. Monat ist um 31.33 Grad kälter als der Durchschnitt.
    Der 2. Monat ist um 24.33 Grad kälter als der Durchschnitt.
    ...
    Ergänzung: Die Monatsnamen sollen angezeigt werden
    b) Ergänze das Programm so, dass die Monatsnamen bei der Eingabe und Ausgabe als Text
    ausgeschrieben werden. Weiterhin soll beim dem Text in der Ausgabe immer eine positive Zahl und
    entweder kälter oder wärmer angezeigt werden.
    Die Temperatur im Februar ist um 24.333333333333336 kälter als der Durchschnitt.
    Die Temperatur im März ist um 9.333333333333334 kälter als der Durchschnitt.
    Die Temperatur im April ist um 1.666666666666666 wärmer als der Durchschnitt.



    So und hier ist das was ich bis jetzt geschrieben habe:

    Source Code

    1. import java.util.Scanner;
    2. public class Main {
    3. /**
    4. * @param args the command line arguments
    5. */
    6. public static void main(String[] args) {
    7. // TODO code application logic here
    8. Scanner eingabe = new Scanner (System.in);
    9. int [] werte = new int [12];
    10. for(int i = 0; i < werte.length; i++){
    11. System.out.println("Wert "+(i+1)+" eingeben:");
    12. werte[i] = eingabe.nextInt();
    13. }
    14. int sum =0,durch;
    15. for(int i = 0; i<werte.length;i++){
    16. sum +=werte[i];
    17. }
    18. durch= sum/12;
    19. System.out.println("Temperaturdurchschnitt in Jakutsk: "+durch);
    20. for(int i = 0; i < werte.length; i++){
    21. System.out.print(werte[i]+", ");
    22. }
    23. String [] mon = new String [12];
    24. for(int i=0; i<werte.length; i ++){
    25. System.out.println(werte[i]-durch+" beträgt die Abweichung im Monat");
    26. }
    27. }
    28. }
    Display All
  • Temperaturdurchschnitt...

    //Hier haste es.

    import java.util.Scanner;

    public class Temperatur
    {

    private static int i;

    public static void main(String[] args)
    {
    Scanner eingabe = new Scanner(System.in);

    String[] Monat = { "Januar", "Februar", "März", "April", "Mai", "Juni",
    "Juli", "August", "September", "Oktober", "November",
    "Dezember" };

    int[] werte = new int[12];
    for (int i = 0; i < werte.length; i++)
    {
    System.out.println("Geben Sie die Temp. für den Monat "+ Monat +" ein");
    werte[i] = eingabe.nextInt();
    }

    int sum = 0;
    double durch;

    for (int i = 0; i < werte.length; i++)
    {
    sum += werte[i];

    }

    durch = (double)sum / werte.length;
    System.out.println("Temperaturdurchnitt in Jakutsk: " + durch);

    for (int i = 0; i < werte.length; i++)
    {
    System.out.println(werte[i] + ",");
    }

    }
    }
    [/i][/i][/i]
  • import java.text.DecimalFormat;
    import java.util.Scanner;

    public class Wetter
    {

    // Wetterdaten
    // (c) micha
    public static void main(String[] args)
    {
    DecimalFormat df = new DecimalFormat("#0.00");
    double summe = 0;
    String[] mon = { "Jan", "Feb", "März", "April", "Mai", "Juni", "Juli",
    "Aug", "Sep", "Okt", "Nov", "Dez" }; // Monate in Feld
    Scanner sc = new Scanner(System.in);
    System.out.println("Bitte geben Sie zwölf Temperaturen ein:\t");
    double[] w = new double[12];
    for (int i = 0; i < w.length; i++) // Eingabe zwölf Temperaturen
    {
    System.out.print("Temperatur " + mon + " :\t");
    w[i] = sc.nextInt();
    }
    System.out.println();
    // Berechnungen
    for (int i = 0; i < w.length; i++)
    {
    summe = summe + w[i]; // Summe berechnen
    }

    // Ausgabe
    double durch = (summe / w.length); // Durchschnitt berechnen
    System.out.println("Jahresdurchschnitt ist " + df.format(durch)
    + "° Celsius.");

    for (int i = 0; i < w.length; i++) // Abweichung ausgeben
    {
    if (w[i] < durch)
    {
    System.out.println("Der Monat " + mon[i] + "\t war um "
    + df.format(Math.abs(w[i] - durch)) // absolute
    // Abweichung
    + "° kälter als der Durchschnitt."); // nach unten
    }
    else
    {
    System.out.println("Der Monat " + mon[i] + "\t war um "
    + df.format(Math.abs(w[i] - durch)) // absolute
    // Abweichung
    + "° wärmer als der Durchschnitt.");// nach oben
    }
    }
    }
    }
    [/i][/i][/i][/i][/i][/i][/i]