Thursday, October 3, 2013

c# programming language

1- You never called determine methods


2- in determine average you used a local variable with the same name of the private field.


3- in lowest, lowest variable is always 0 so it will remain 0 unless you enter a negative value.


here is a quick fix to your code



using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace ConsoleApplication1
{

class Temperatures
{
public double[] weeksTemperatures;
public double threshTemp;
public double average;
public double averageExcludingLowest;
public double highest = 5;
public double lowest;
public int numOfThreshs = 10;

public double[] WeeksTemperatures
{
get
{
return weeksTemperatures;
}

}
public double ThreshTemp
{
get
{
return threshTemp;
}
}
public double Average
{
set
{
average = value;
}

get
{
return average;
}

}
public double AverageExcludingLowest
{
set
{
averageExcludingLowest = value;
}

get
{
return averageExcludingLowest;
}

}
public double Highest
{
set
{
highest = value;
}

get
{
return highest;
}

}
public double Lowest
{

set
{
lowest = value;
}

get
{
return lowest;
}

}
public int NumberOfThreshs
{
set
{
numOfThreshs = value;
}

get
{
return numOfThreshs;
}

}

public Temperatures()
{

}

public Temperatures(double[] wTemperatures, double threshT)
{
weeksTemperatures = wTemperatures;
threshTemp = threshT;
DetermineAverage();
DetermineAverageExcludingLowest();
DetermineHighest();
DetermineLowest();
DetermineNumberOfThreshs();
}

public double DetermineAverage()
{
double inaverage = 0;
for (int x = 0; x < 7; x++) //traverse through the week's temperatures
{
inaverage = inaverage + weeksTemperatures[x]; //total up the week's temperatures
}
average = inaverage / 7; //calculate the average temperature
return inaverage;
}


public double DetermineAverageExcludingLowest()
{
for (int x = 0; x < 7; x++) //Traverse through the week's temperatures
{
averageExcludingLowest = averageExcludingLowest + weeksTemperatures[x];
if (weeksTemperatures[x] < lowest) //find the lowest temperature of the week
{
lowest = weeksTemperatures[x]; //and set it to lowest, for use later
}
}
averageExcludingLowest = ((averageExcludingLowest - lowest) / 7); // calculate average excluding lowest temperature
return averageExcludingLowest;
}


public double DetermineLowest()
{
lowest = highest;
for (int x = 0; x < 7; x++) //Traverse through the week's temperatures
{
if (weeksTemperatures[x] < lowest) //find the lowest temperature of the week
{
lowest = weeksTemperatures[x]; //and set it to lowest
}
}
return lowest;
}

public double DetermineHighest()
{
for (int x = 0; x < 7; x++) //Traverse through the week's temperatures
{
if (weeksTemperatures[x] > highest) //find the highest temperature of the week
{
highest = weeksTemperatures[x]; //and set it to highest
}
}
return highest;
}


public double DetermineNumberOfThreshs()
{

for (int x = 0; x < 7; x++) //Traverse through the week's temperatures
{

if (weeksTemperatures[x] < threshTemp) //find the lowest temperature of the week
{

numOfThreshs++;

}

}

return numOfThreshs;

}


public override string ToString()
{

return "=====================\nWeekly Statistics\n" + "---------------------\n" + "Average Temperature: " + average + "\nHighest Temperature: "

+ highest + "\nLowest Temperature: " + lowest + "\nAvg. Excl. Lowest: " + averageExcludingLowest + "\n# of Cold Days: " + numOfThreshs + "\n====================="; //Formats and the invoice to be printed

}

}

}







Please remember to 'Mark as Answer' the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.


No comments:

Post a Comment