Example #1
0
    static void Main(string[] args)
    {
        string[] temperatureParams     = Console.ReadLine().Split(' ');
        string   temperatureType       = temperatureParams[0];
        double   startTemperatureValue = double.Parse(temperatureParams[1]);

        try
        {
            switch (temperatureType)
            {
            case "C":
                Console.WriteLine(TemperatureCalculator.FromCelsiusToFahrenheit(startTemperatureValue));
                Console.WriteLine(TemperatureCalculator.FromCelsiusToKelvin(startTemperatureValue));
                break;

            case "F":
                Console.WriteLine(TemperatureCalculator.FromFahrenheitToCelsius(startTemperatureValue));
                Console.WriteLine(TemperatureCalculator.FromFahrenheitToKelvin(startTemperatureValue));
                break;

            case "K":
                Console.WriteLine(TemperatureCalculator.FromKelvinToCelsius(startTemperatureValue));
                Console.WriteLine(TemperatureCalculator.FromKelvinToFahrenheit(startTemperatureValue));
                break;
            }
        }
        catch (ArgumentException e)
        {
            Console.WriteLine(e.Message);
        }
    }
Example #2
0
        public void Celsius_To_Fahrenheit_Should_Be_Calculated_Correctly()
        {
            //Arrange

            var degC = 30m;
            var sut  = new TemperatureCalculator();

            //Act

            var degF = sut.CelsiusToFahrenheit(degC);

            //Assert

            //30 degrees celsius should equal 86 fahrenheit
            Assert.AreEqual(86, degF);
        }
Example #3
0
        public void Kelvin_To_Fahrenheit_Should_Be_Calculated_Correctly()
        {
            //Arrange

            var degK = 300m;
            var sut  = new TemperatureCalculator();

            //Act

            var degC = sut.KelvinToFahrenheit(degK);

            //Assert

            //30 degrees celsius should equal 86 fahrenheit
            Assert.AreEqual(80.33m, degC);
        }
Example #4
0
        public void Fahrenheit_To_Celsius_Should_Be_Calculated_Correctly()
        {
            //Arrange

            var degF = 86m;
            var sut  = new TemperatureCalculator();

            //Act

            var degC = sut.FahrenheitToCelsius(degF);

            //Assert

            //30 degrees celsius should equal 86 fahrenheit
            Assert.AreEqual(30, degC);
        }
Example #5
0
        protected void SendButton_Click(object sender, EventArgs e)
        {
            // Om formulärdatat klarar valideringen...
            if (IsValid)
            {
                // ...instansiera ett objekt av typen TemperaturCalculator,
                // tolka texten i textfälten till heltal,...
                var temp = new TemperatureCalculator
                {
                    Min = int.Parse(Min.Text),
                    Max = int.Parse(Max.Text)
                };

                // ...ta reda på och presentera temperaturskillnaden, och...
                OutputLiteral.Text = String.Format(OutputLiteral.Text, temp.Difference);

                // ...se till att resultatet renderas till klienten.
                OuputPlaceHolder.Visible = true;
            }
        }
Example #6
0
        private static void TemperatureConverter()
        {
            ICalculator calculator = new TemperatureCalculator();

            Console.WriteLine("What temperature unit do you want to convert from?");
            Console.WriteLine("Options: 1 for Celsius, 2 for Fahrenheit and 3 for Kelvin");
            Console.WriteLine("Type 'exit' to stop the program.");
            var convertFrom = Console.ReadLine();

            while (!int.TryParse(convertFrom, out int number) || (Convert.ToInt32(convertFrom) < 1 || Convert.ToInt32(convertFrom) > 3))
            {
                Console.WriteLine("Error write only numbers and it must be between 1 and 3");
                Console.WriteLine("Type 'exit' to stop the program.");
                convertFrom = Console.ReadLine();

                if (convertFrom.ToLower() == "exit")
                {
                    break;
                }
            }

            Console.WriteLine("What temperature unit do you want to convert to?");
            Console.WriteLine("Options: 1 for Celsius, 2 for Fahrenheit and 3 for Kelvin");
            Console.WriteLine("Type 'exit' to stop the program.");
            var convertTo = Console.ReadLine();

            while (!int.TryParse(convertTo, out int number) || (Convert.ToInt32(convertTo) < 1 || Convert.ToInt32(convertTo) > 3))
            {
                Console.WriteLine("Error write only numbers and it must be between 1 and 3");
                Console.WriteLine("Type 'exit' to stop the program.");
                convertTo = Console.ReadLine();

                if (convertTo.ToLower() == "exit")
                {
                    break;
                }
            }

            Console.WriteLine("What is the value you want to convert?");
            Console.WriteLine("Type 'exit' to stop the program.");
            var valueToConvert = Console.ReadLine();

            while (!double.TryParse(valueToConvert, out double number))
            {
                Console.WriteLine("Error write only numbers.");
                Console.WriteLine("Type 'exit' to stop the program.");
                valueToConvert = Console.ReadLine();

                if (valueToConvert.ToLower() == "exit")
                {
                    break;
                }
            }

            IUnit from = null;
            IUnit to   = null;

            double valueInDoubleToConvert = double.Parse(valueToConvert);

            switch (convertFrom)
            {
            case "1":
                from = new Celsius {
                    Value = valueInDoubleToConvert
                };
                break;

            case "2":
                from = new Fahrenheit {
                    Value = valueInDoubleToConvert
                };
                break;

            case "3":
                from = new Kelvin {
                    Value = valueInDoubleToConvert
                };
                break;
            }

            switch (convertTo)
            {
            case "1":
                to = new Celsius();
                break;

            case "2":
                to = new Fahrenheit();
                break;

            case "3":
                to = new Kelvin();
                break;
            }

            var result = calculator.Calculate(from, to);

            Console.WriteLine($"Well, {from.Value} degrees {from.Name} is equal to {result} degrees {to.Name}.");
        }
Example #7
0
 public TemperatureConverter()
 {
     TempCalc = new TemperatureCalculator();
     InitializeComponent();
 }