Advertisement
Anonymus_Soul

Untitled

Apr 30th, 2020
377
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.13 KB | None | 0 0
  1. package homero;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.InputStreamReader;
  5. import java.util.ArrayList;
  6. import java.util.Random;
  7.  
  8. import homero.Homrseklet.mertekegyseg;
  9.  
  10. public class HoProba {
  11.  
  12.     public static void main(String[] args) throws Exception {
  13.         BufferedReader be = new BufferedReader(new InputStreamReader(System.in));
  14.         double n, n2, r, r2;
  15.         String b, b2;
  16.  
  17.         System.out.println("Kérem adja meg a hőmérsékletet:");
  18.         n = Double.parseDouble(be.readLine());
  19.         b = be.readLine().toUpperCase();
  20.  
  21.         System.out.println("Kérem adja meg a 2.hőmérsékletet:");
  22.         n2 = Double.parseDouble(be.readLine());
  23.         b2 = be.readLine().toUpperCase();
  24.  
  25.         r = Math.random() * 101 + 0;
  26.         r2 = Math.random() * 101 + 0;
  27.         Homrseklet one = new Homrseklet(n, mertekegyseg.valueOf(b));
  28.         Homrseklet two = new Homrseklet(n2, mertekegyseg.valueOf(b2));
  29.         Homrseklet three = new Homrseklet(r);
  30.         Homrseklet four = new Homrseklet(r2);
  31.  
  32.         ArrayList<Homrseklet> temperatures = new ArrayList<Homrseklet>();
  33.         temperatures.add(one);
  34.         temperatures.add(two);
  35.         temperatures.add(three);
  36.         temperatures.add(four);
  37.  
  38.         System.out.println("tomb elemeinek listázása:");
  39.         for (Homrseklet temp : temperatures) {
  40.             System.out.println(temp);
  41.         }
  42.  
  43.         System.out.println("koverzió:");
  44.         double ertek = Homrseklet.konvHomerseklet(n, mertekegyseg.valueOf(b));
  45.         System.out.println(one + "= " + ertek + " " + mertekegyseg.KELVIN);
  46.         ertek = Homrseklet.konvHomerseklet(n2, mertekegyseg.valueOf(b2));
  47.         System.out.println(two + "= " + ertek + " " + mertekegyseg.CELSIUS);
  48.  
  49.         System.out.print("Átlag hómérséklet: " + AVG(temperatures) + " Kelvin");
  50.     }
  51.  
  52.     public static double AVG(ArrayList<Homrseklet> active) {
  53.         double sum = 0;
  54.         for (Homrseklet temp : active) {
  55.             if (temp.getEgyseg() == mertekegyseg.CELSIUS) {
  56.                 temp.konvHomerseklet(temp.getTemperature(), mertekegyseg.CELSIUS);
  57.             }
  58.         }
  59.         for (int i = 0; i < active.size(); i++) {
  60.             sum += active.get(i).getTemperature();
  61.         }
  62.         double avg = sum / active.size();
  63.         return avg;
  64.     }
  65.  
  66. }
  67. //CLASS
  68. package homero;
  69.  
  70. public class Homrseklet {
  71.     private double temperature;
  72.  
  73.     public enum mertekegyseg {
  74.         CELSIUS, KELVIN
  75.     };
  76.  
  77.     private mertekegyseg egyseg;
  78.  
  79.     public Homrseklet(double temperature, mertekegyseg mert) {
  80.  
  81.         this.temperature = temperature;
  82.         this.egyseg = mert;
  83.     };
  84.  
  85.     public Homrseklet(double temperature) {
  86.  
  87.         this.temperature = temperature;
  88.         this.egyseg = mertekegyseg.CELSIUS;
  89.     }
  90.  
  91.     @Override
  92.     public String toString() {
  93.         return "Homrseklet [temperature=" + temperature + ", egyseg=" + egyseg + "]";
  94.     }
  95.  
  96.     public double getTemperature() {
  97.         return temperature;
  98.     }
  99.  
  100.     public mertekegyseg getEgyseg() {
  101.         return egyseg;
  102.     }
  103.  
  104.     public void setEgyseg(mertekegyseg egyseg) {
  105.         this.egyseg = egyseg;
  106.     }
  107.  
  108.     public void setTemperature(double temperature) {
  109.         this.temperature = temperature;
  110.     }
  111.  
  112.     public static double konvHomerseklet(double temperature, mertekegyseg mert) {
  113.         double ertek = 0;
  114.         if (mert == mert.CELSIUS) {
  115.             ertek = temperature + 273.15;
  116.         } else if (mert == mert.KELVIN) {
  117.             ertek = temperature - 273.15;
  118.         }
  119.         return ertek;
  120.     }
  121.  
  122. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement