I have a problem in my code where the average is a whole number even though I specify it as a double data type. What could be the problem?
using System;
using static System.Console;
using System.Linq;
class TemperaturesComparison
{
static void Main()
{
int[] temp = new int[5];
int i = 0;
while (i < 5)
{
int eachTemp = int.Parse(ReadLine());
if (eachTemp < -30 || eachTemp > 130) continue; //skips
temp[i] = eachTemp;
i++;
}
if (temp[0] < temp[1] && temp[1] < temp[2] && temp[2] < temp[3] && temp[3] < temp[4]) WriteLine("Getting warmer");
else if (temp[0] > temp[1] && temp[1] > temp[2] && temp[2] > temp[3] && temp[3] > temp[4]) WriteLine("Getting cooler");
else WriteLine("It's a mixed bag");
foreach(int number in temp)
{
Console.Write(number + " ");
}
double average = temp.Sum()/5;
WriteLine("");
WriteLine(average);
}
}
For instance, I input: 88 99 78 86 77
The average is 85 instead of 85.6