public override GradeStatistics ComputeStatistics() { GradeStatistics stats = new GradeStatistics(); float sum = 0; foreach (float grade in _grades) { stats.HighestGrade = Math.Max(grade, stats.HighestGrade); stats.LowestGrade = Math.Min(grade, stats.LowestGrade); sum += grade; } stats.AverageGrade = sum / _grades.Count; return(stats); }
private static void WriteResultsToConsole(IGradeTracker book) { GradeStatistics stats = book.ComputeStatistics(); foreach (float grade in book) { Console.WriteLine(grade); } WriteResult("Average Grade", stats.AverageGrade); //casting WriteResult("Highest Grade", (int)stats.HighestGrade); WriteResult("Lowest Grade", stats.LowestGrade); WriteResult(stats.Description, stats.LetterGrade); Console.ReadKey(); }