Advertisement
Felanpro

ou1

Nov 11th, 2021 (edited)
1,265
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.46 KB | None | 0 0
  1. import java.util.*;
  2.  
  3. class Demo
  4. {
  5.     public static void main (String[] args)
  6.     {
  7.         System.out.println("TEMPERATURER\n");
  8.  
  9.         //Inmatningsverktyg
  10.         Scanner in = new Scanner(System.in);
  11.         in.useLocale(Locale.US);
  12.  
  13.         //mata in uppgifter om antalet veckor och antalet mätningar
  14.         System.out.print("antalet veckor: ");
  15.         int antalVeckor = in.nextInt();
  16.         System.out.print("antalet mätningar per vecka: ");
  17.         int antalMatningarPerVecka = in.nextInt();
  18.  
  19.         //plats att lagra temperaturer
  20.         double[][] t = new double[antalVeckor][antalMatningarPerVecka];
  21.  
  22.         //mata in temperaturerna
  23.         for(int vecka = 0; vecka < antalVeckor; vecka++)
  24.         {
  25.             System.out.println("temperaturer - vecka " + (vecka + 1) + ":");
  26.             for(int matning = 0; matning < antalMatningarPerVecka; matning++)
  27.             {
  28.                 t[vecka][matning] = in.nextDouble();
  29.             }
  30.         }
  31.         System.out.println();
  32.  
  33.         //visa temperaturerna
  34.         System.out.println("temperaturerna:");
  35.         for(int vecka = 0; vecka < antalVeckor; vecka++)
  36.         {
  37.             for(int matning = 0; matning < antalMatningarPerVecka; matning++)
  38.             {
  39.                 System.out.print(t[vecka][matning] + " ");
  40.                 System.out.println();
  41.             }
  42.             System.out.println();
  43.         }
  44.         System.out.println();
  45.  
  46.         //den minsta, den största och medeltemperaturen - veckovis
  47.         double[] minT = new double[antalVeckor];
  48.         double[] maxT = new double[antalVeckor];
  49.  
  50.         double[] sumT = new double[antalVeckor];
  51.         double[] medelT = new double[antalVeckor];
  52.  
  53.         //hitta den minsta, den största och medeltemperaturen för varje vecka
  54.         for(int vecka = 0; vecka < antalVeckor; vecka++)
  55.         {
  56.             minT[vecka] = t[vecka][0];
  57.             maxT[vecka] = t[vecka][0];
  58.             sumT[vecka] = 0;
  59.             for(int matning = 0; matning < antalVeckor - 1; matning++)
  60.             {
  61.                 if(t[vecka][matning] > t[vecka][matning + 1])
  62.                     minT[vecka] = t[vecka][matning + 1];
  63.  
  64.                 if(t[vecka][matning] < t[vecka][matning + 1])
  65.                     maxT[vecka] = t[vecka][matning + 1];
  66.             }
  67.  
  68.             for(int matning = 0; matning < antalMatningarPerVecka; matning++)
  69.             {
  70.                 sumT[vecka] += t[vecka][matning];
  71.             }
  72.  
  73.             medelT[vecka] = sumT[vecka]/antalMatningarPerVecka;
  74.         }
  75.  
  76.         //visa den minsta, den största och medeltemperaturen för varje vecka
  77.         for(int vecka = 0; vecka < antalVeckor; vecka++)
  78.         {
  79.             System.out.println("Vecka " + (vecka + 1) + ":" );
  80.             System.out.println("Minsta temperatur: " + minT[vecka]);
  81.             System.out.println("Största temperatur: " + maxT[vecka]);
  82.             System.out.println("Medeltemperatur: " + medelT[vecka]);
  83.  
  84.             System.out.println();
  85.         }
  86.  
  87.         //den minsta, den största och medeltemperaturen - hela mätperioden
  88.         double maxTemp = maxT[0];
  89.         double minTemp = minT[0];
  90.         double sumTemp = 0;
  91.         double medelTemp = 0;
  92.  
  93.         //hitta den minsta, den största och medeltemperaturen - hela mätperioden
  94.         for(int vecka = 0; vecka < antalVeckor - 1; vecka++)
  95.         {
  96.             if(minT[vecka] > minT[vecka + 1])
  97.                 minTemp = minT[vecka + 1];
  98.  
  99.             if(maxT[vecka] < maxT[vecka + 1])
  100.                 maxTemp = maxT[vecka + 1];
  101.         }
  102.  
  103.         for(int vecka = 0; vecka < antalVeckor; vecka++)
  104.         {
  105.             for(int matning = 0; matning < antalMatningarPerVecka; matning++)
  106.                 sumTemp += t[vecka][matning];
  107.         }
  108.  
  109.         medelTemp = sumTemp/(antalVeckor*antalMatningarPerVecka);
  110.  
  111.         //visa den minsta, den största och medeltemperaturen - hela mätperioden
  112.  
  113.         System.out.println("Hela mätperioden: ");
  114.         System.out.println("Minsta temperaturen: " + minTemp);
  115.         System.out.println("Största temperaturen: " + maxTemp);
  116.         System.out.println("Medeltemperatur: " + medelTemp);
  117.  
  118.     }
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement