001    package de.hska.info1.uebung.methoden;
002    
003    /**
004     * Temperatur ist verantwortlich für die Umrechnung verschiedener
005     * Temperaturmaße untereinander. Zum Beispiel kann mit {@link #celsiusInFahrenheitUmrechnen(double)}
006     * ein Temperaturwert gegeben in Grad Celsius in Grad Fahrenheit umgerechnet werden.
007     * 
008     * @author Christian Pape
009     */
010    public class Temperatur {
011    
012        /**
013         * Rechnet den gegeben Temperaturwert celsius in Grad Kelvin um
014         * und gibt ihn zurück.
015         * 
016         * @param celsius der umzurechnende Temperaturwert in Grad Celsius
017         * 
018         * @return die Temperatur von celsius in Grad Kelvin
019         */
020        public static double celsiusInKelvinUmrechnen(double celsius) {
021            return  fahrenheitInKelvinUmrechnen(
022                      celsiusInFahrenheitUmrechnen(celsius)
023                    );
024        }
025        
026        /**
027         * Rechnet den gegeben Temperaturwert celsius in Grad Fahrenheit um
028         * und gibt ihn zurück.
029         * 
030         * @param celsius der umzurechnende Temperaturwert in Grad Celsius
031         * 
032         * @return die Temperatur von celsius in Grad Fahrenheit
033         */
034        public static double celsiusInFahrenheitUmrechnen(double celsius) {
035            return 1.8 * celsius + 32.0;
036        }
037    
038        /**
039         * Rechnet den gegeben Temperaturwert kelvin in Grad Celsius um
040         * und gibt ihn zurück.
041         * 
042         * @param kelvin der umzurechnende Temperaturwert in Grad Kelvin
043         * 
044         * @return die Temperatur von kelvin in Grad Celsius
045         */
046        public static double kelvinInCelsiusUmrechnen(double kelvin) {
047            return fahrenheitInCelsiusUmrechnen(
048                     kelvinInFahrenheitUmrechnen(kelvin) 
049                   );
050        }
051    
052        /**
053         * Rechnet den gegeben Temperaturwert fahrenheit in Grad Celsius um
054         * und gibt ihn zurück.
055         * 
056         * @param fahrenheit der umzurechnende Temperaturwert in Grad Fahrenheit
057         * 
058         * @return die Temperatur von fahrenheit in Grad Celsius
059         */
060        public static double fahrenheitInCelsiusUmrechnen(double fahrenheit) {
061            return (fahrenheit - 32.0) / 1.8;
062        }
063    
064        /**
065         * Rechnet den gegeben Temperaturwert kelvin in Grad Fahrenheit um
066         * und gibt ihn zurück.
067         * 
068         * @param kelvin der umzurechnende Temperaturwert in Grad Kelvin
069         * 
070         * @return die Temperatur von kelvin in Grad Fahrenheit
071         */
072        public static double kelvinInFahrenheitUmrechnen(double kelvin) {
073            return kelvin * 1.8 - 459.67;
074        }
075    
076        /**
077         * Rechnet den gegeben Temperaturwert fahrenheit in Grad Kelvin um
078         * und gibt ihn zurück.
079         * 
080         * @param fahrenheit der umzurechnende Temperaturwert in Grad Fahrenheit
081         * 
082         * @return die Temperatur von fahrenheit in Grad Kelvin
083         */
084        public static double fahrenheitInKelvinUmrechnen(double fahrenheit) {
085            return (fahrenheit + 459.67) / 1.8;
086        }
087    
088    }