Write a C application that provides statistics about tempera

Write a C# application that provides statistics about temperatures for a given week. Your solution should be a two-class application that has a one-dimensional array as a data member. The array stores temperatures for any given week. Provide constructors for instantiating the class and methods to return the highest temperature, lowest temperature, aver- age temperature, and the average temperature excluding the lowest temperature. Provide a method that accepts as an argument a temperature and returns the number of days the temperatures were below that value. Override the ToString() method to return a listing of all the temperatures in three-column format and the temperature range for the given week. Write a second class to test your class.

Solution

TemperatureApplication.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace TemperatureApplication
{
    class TemperatureApplication
    {
        static void Main()
        {
//            int[] someTemps = { 88, 87, 85, 80, 87, 90, 82 };
            int[] tempArray = new int[7];
            tempArray = GetArrayValues();

           Temperature tempObject = new Temperature(tempArray);
            Console.Write(tempObject);
            DisplayObject(tempObject);

            Console.ReadKey();
        }
        public static int[] GetArrayValues()
        {
            int[] someArray = new int[7];
            string inValue;
            Console.WriteLine(\"Please enter seven(7) temperatures!\");

            for (int i = 0; i < someArray.Length; i++)
            {
                Console.WriteLine(\"Temperature\" + (i + 1) + \": \");
                inValue = Console.ReadLine();
                    while (int.TryParse(inValue, out someArray[i]) == false)
                    {
                        Console.WriteLine(\"Please enter a number!\");
                        Console.WriteLine(\"Temperature\" + (i + 1) + \": \");
                        inValue = Console.ReadLine();
                    }
            }
            return someArray;
        }
        public static void DisplayObject(Temperature tempObject)
        {
            int baseTemp = GetTemp();
            while (baseTemp < 50 || baseTemp > 100)
            {
                Console.WriteLine(\"Value must be > 49 and < 101\");
                    baseTemp = GetTemp();
            }
            Console.Clear();
            Console.WriteLine(\"Temp Stats\");
            Console.Write(\"\ \ Average: \" +
                                tempObject.ComputeAverage().ToString(\"F0\") +
                                \"\ Days Below \" + baseTemp + \": \" +
                                    tempObject.ComputeDaysBelow(baseTemp));
        }

        public static int GetTemp()
    {
        string inValue;
        int baseTemp;

        Console.WriteLine(\"Enter Base Temperature: \");
        inValue = Console.ReadLine();
        while (int.TryParse(inValue, out baseTemp) == false )
    {
        Console.WriteLine(\"Value must be numberic!\");
        Console.Write(\"Enter Base Temperature: \");
        inValue = Console.ReadLine();
    }
    return baseTemp;
    }
    }
}

Temperature.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace TemperatureApplication
{
    class Temperature
    {
        private int[] temp;

        public Temperature()
        {

        }

        public Temperature(int[] t)
        {
            temp = new int[t.Length];
            temp = t;
        }

        public int[] Temp
        {
            get
            {
                return temp;
            }
            set
            {
                temp = value;
            }
        }
        public int ComputeLowest()
        {
            return temp.Min();
        }

        public int ComputeMaxTemp()
        {
            int max = temp[0];
            for (int i = 1; i < temp.Length; i++)
            {
                if (temp[i] > max)
                    max = temp[i];
            }
            return max;
        }

        public double ComputeAverage()
        {
            return temp.Average();
        }

        public double CompeAverageWithoutLowest()
        {
            int total = 0;
            total = temp.Sum() - temp.Min();
            return total / (temp.Length - 1);
        }

        public int ComputeDaysBelow(int tempDay)
        {
            int noOfDays = 0;
            foreach (int t in temp)
            {
                if (t < tempDay)
                    noOfDays++;
            }
            return noOfDays;
        }

        public override string ToString()
        {
            string result = \"\\t Temperatures \ \";
            for (int i = 0; i < temp.Length; i++)
            {
                if (i % 3 == 0)
                {
                    result += temp[i] + \"\ \";
                }
                else
                {
                    result += temp[i] + \"\\t\";
                }
                result += \"\ \ \ Range: \" + ComputeLowest() + \" - \" +
                    ComputeMaxTemp();
             }
            return result;
         }
    }
}

Write a C# application that provides statistics about temperatures for a given week. Your solution should be a two-class application that has a one-dimensional
Write a C# application that provides statistics about temperatures for a given week. Your solution should be a two-class application that has a one-dimensional
Write a C# application that provides statistics about temperatures for a given week. Your solution should be a two-class application that has a one-dimensional

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site