示例#1
0
 static void PrintStats(GradeStatistics stats)
 {
     WriteLine("Number of Grades", stats.NumberOfGrades);
     WriteLine("Highest Grade", stats.HighestGrade);
     WriteLine("Lowest Grade", stats.LowestGrade);
     WriteLine("Average Grade", stats.Average);
     WriteLine("Grade", stats.LetterGrade);
     WriteLine("Comment", PerformanceRating(stats.LetterGrade));
 }
示例#2
0
        public void ComputesLowestGrade()
        {
            Grades.GradeBook book = new Grades.GradeBook();
            book.AddGrade(10);
            book.AddGrade(90);

            Grades.GradeStatistics result = book.ComputeStatistics();
            Assert.Equal(10, result.LowestGrade);
        }
示例#3
0
        public void ComputesAverageGrade()
        {
            Grades.GradeBook book = new Grades.GradeBook();
            book.AddGrade(91);
            book.AddGrade(89.5f);
            book.AddGrade(75);

            Grades.GradeStatistics result = book.ComputeStatistics();
            Assert.Equal(85.17, result.AverageGrade, 2);
        }
示例#4
0
        public override GradeStatistics ComputeStatistics()
        {
            Console.WriteLine("original gradebook");

            var stats = new GradeStatistics();

            stats.MinimumGrade = _grades.Min();
            stats.MaximumGrade = _grades.Max();
            stats.AverageGrade = _grades.Average();

            return stats;
        }
示例#5
0
 public GradeStatistics ComputeStatistics()
 {
     GradeStatistics stats = new GradeStatistics();
     float sum = 0f;
     foreach (float grade in grades)
     {
         stats.HighesetGrade = Math.Max(grade, stats.HighesetGrade);
         stats.LowestGrade = Math.Min(grade, stats.LowestGrade);                
         sum += grade;
     }
     stats.AverageGrade = sum / grades.Count; //.Count for numbers of things in the list
     return stats;
 }
示例#6
0
 public 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;
 }
示例#7
0
 public override GradeStatistics ComputeStatistics()
 {
     var stats = new GradeStatistics();
     var sum = 0f;
     foreach (float grade in this)
     {
         sum += grade;
         stats.HighestGrade = Math.Max(grade, stats.HighestGrade);
         stats.LowestGrade = Math.Min(grade, stats.LowestGrade);
     }
     stats.Average = sum / this._grades.Count;
     stats.NumberOfGrades = this._grades.Count;
     return stats;
 }
示例#8
0
        private static void WriteResults(IGradeTracker book)
        {
            foreach (float grade in book)
            {
                Console.WriteLine(grade);
            }


            GradeStatistics stats = book.ComputeStatistics();

            Console.WriteLine(book.Name);
            WriteResult("Average grade", stats.AverageGrade);
            WriteResult("Highest grade", (int)stats.HighestGrade);
            WriteResult("Lowest grade", stats.LowestGrade);
            WriteResult(stats.Description, stats.LetterGrade);
        }
示例#9
0
        static void Main(string[] args)
        {
            SpeechSynthesizer synth = new SpeechSynthesizer();

            synth.Speak("Hello! This is a great book program");
            GradeBook gBook = new GradeBook();

            gBook.AddGrade(91);
            gBook.AddGrade(89.5f);
            gBook.AddGrade(75);
            GradeStatistics stats = gBook.computeStatistics();

            Console.WriteLine("Average Grade is '" + stats.AverageGrade + "'");
            Console.WriteLine("Lowest Grade is '" + stats.LowestGrade + "'");
            Console.WriteLine("Highest Grade is '" + stats.HighestGrade + "'");
        }
示例#10
0
        public GradeStatistics ComputeStatistics()
        {
            GradeStatistics stats = new GradeStatistics();

            float sum = 0f;

            foreach (float el in grades)
            {
                sum += el;
                stats.highestGrade = Math.Max(el, stats.highestGrade);
                stats.lowestGrade  = Math.Min(el, stats.lowestGrade);
            }
            stats.averageGrade = sum / grades.Count;

            return(stats);
        }
示例#11
0
        public override GradeStatistics ComputeStatistics()
        {
            Console.WriteLine("GradeBook::ComputeStatistics");

            GradeStatistics stats = new GradeStatistics();

            float sum = 0;
            foreach (var 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;
        }
示例#12
0
        private static void WriteResults(IGradeTracker book)
        {
            GradeStatistics stats = book.ComputeStatistics();

            // can now use foreach because IGradeTracker inherits from IEnumerable
            foreach (var grade in book)
            {
                Console.WriteLine(grade);
            }

            WriteResult("Average", stats.AverageGrade);
            // C# type cast (int) to change to int value
            WriteResult("Highest", stats.HighestGrade);
            WriteResult("Lowest", stats.LowestGrade);
            WriteResult(stats.Description, stats.LetterGrade);
        }
示例#13
0
        static void Main(string[] args)
        {
            SpeechSynthesizer speaker = new SpeechSynthesizer();

            GradeBook book = new GradeBook();

            book.AddGrade(91);
            book.AddGrade(80.5f);
            book.AddGrade(60);

            GradeStatistics stats = book.ComputeStatistics();

            Console.WriteLine($"Highest grade = {stats.HighestGrade}");
            Console.WriteLine($"Lowest grade = {stats.LowestGrade}");
            Console.WriteLine($"Average grade = {stats.AverageGrade}");
        }
示例#14
0
        public 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);
        }
示例#15
0
        public virtual GradeStatistics ComputeStatistics()
        {
            Console.WriteLine("GradeBook Compute");
            GradeStatistics stats = new GradeStatistics();

            float sum = 0f;
            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;
        }
示例#16
0
        static void Main(string[] args)
        {
            var book = new GradeBook();

            book.AddGrade(91);
            book.AddGrade(81.5f);
            book.AddGrade(77);
            book.NameChange = new NameChangedDelegate(OnNameChanged);
            book.Name       = "Laney ";
            Console.WriteLine(book.Name);
            GradeStatistics stats = book.ComputeStatistics();

            Console.WriteLine($"Average : {stats.AvarageGrade}" +
                              $" \r\nHighst : {stats.HighstGrade}" +
                              $"\r\nLowst: {stats.LowesGrade}");
        }
示例#17
0
        public override GradeStatistics ComputeStatistic()
        {
            GradeStatistics stats = new GradeStatistics();
            float           sum   = 0;

            foreach (var grade in _gradesList)
            {
                stats.MaxGrade = Math.Max(grade, stats.MaxGrade);
                stats.MinGrade = Math.Min(grade, stats.MinGrade);
                sum           += grade;
            }

            stats.AvgGrade = sum / _gradesList.Count;

            return(stats);
        }
示例#18
0
        public override GradeStatistics ComputeStatistics()
        {
            Console.WriteLine("GradeBook::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);
        }
示例#19
0
        static void Main(string[] args)
        {
            Gradebook book = new Gradebook();

            book.AddGrade(91);
            book.AddGrade(89.5f);
            book.AddGrade(75);


            GradeStatistics stats = book.ComputeStatistics();

            Console.WriteLine(stats.AverageGrade);
            Console.WriteLine(stats.LowestGrade);
            Console.WriteLine(stats.HighestGade);
            Console.Read();
        }
示例#20
0
        public override GradeStatistics ComputeStatistics() //constructor
        {
            GradeStatistics stats = new GradeStatistics();  // constructor


            float sum = 0;

            foreach (float grade in grades) //gia kathe ena grade apo ta grades
            {
                stats.HighestGrade = Math.Max(grade, stats.HighestGrade);
                stats.LowestGrade  = Math.Min(grade, stats.LowestGrade);
                sum += grade; //mesos oros
            }
            stats.AverageGrade = sum / grades.Count;
            return(stats);
        }
示例#21
0
        public virtual GradeStatistics ComputeStatistics()
        {
            GradeStatistics stats = new GradeStatistics();

            float sum = 0;

            foreach (float grade in grades)
            {
                stats.highest = Math.Max(grade, stats.highest);
                stats.lowest  = Math.Min(grade, stats.lowest);
                sum          += grade;
            }
            stats.average = sum / grades.Count;

            return(stats);
        }
示例#22
0
        private static void WriteResults(IGradeTracker book)
        {
            GradeStatistics stats = book.ComputeStatistics();

            foreach (float grade in book)
            {
                Console.WriteLine(grade);
            }

            WriteResult("Average", stats.AverageGrade);
            WriteResult("Highest", stats.HighestGrade);
            WriteResult("Lowest", stats.LowestGrade);
            WriteResult("Letter Grade", stats.LetterGrade);
            WriteResult("Description", stats.Description);
            Console.ReadLine();
        }
示例#23
0
        private static void WriteResults(IGradeTracker book)
        {
            GradeStatistics stats = book.ComputeStatistics();

            foreach (float grade in book)
            {
                Console.WriteLine(grade);
            }

            // cw tab tab for console.writeLine();
            //Console.WriteLine(book.Name);
            WriteResult("Average", stats.AverageGrade);
            WriteResult("Highest", stats.HighestGrade);
            WriteResult("Lowest", stats.LowestGrade);
            //WriteResult("Params Example", stats.LowestGrade, 2, 3, 4);
            WriteResult(stats.Description, stats.LetterGrade);
        }
示例#24
0
        static void Main(string[] args)
        {
            SpeechSynthesizer synth = new SpeechSynthesizer();

            synth.Speak("Hello! I'm going to speak your grades.");

            GradeBook book = new GradeBook(); //constructor, new kw is invoking a new instance of GradeBook

            book.AddGrade(91);
            book.AddGrade(89.5f); //The f instructs to make this a float.
            book.AddGrade(75);

            GradeStatistics stats = book.ComputeStatistics();

            Console.WriteLine(stats.HighestGrade); // SNIPPET - cw (tab tab)
            Console.WriteLine(stats.AverageGrade);
        }
示例#25
0
        private static void WriteAllResults(IGradeTracker book)
        {
            //computing stats on the gradebook
            GradeStatistics stats = book.ComputeStatistics();

            Console.WriteLine("\n");

            foreach (float grade in book)
            {
                Console.WriteLine(grade);
            }

            WriteResults("This is the average grade: ", stats.AverageGrade);
            WriteResults("This is the highest grade: ", stats.HighestGrade);
            WriteResults("This is the lowest grade: ", stats.LowestGrade);
            WriteResults(stats.Description, stats.LetterGrade);
        }
示例#26
0
        static void Main(string[] args)
        {
            SpeechSynthesizer synth = new SpeechSynthesizer();

            synth.Speak("Hello! this is the real life?");
            GradeBook book = new GradeBook();  //invoke the constructor to make a new Gradebook object

            book.AddGrade(91);
            book.AddGrade(89.5f);     // apply an 'f' to show that it's a floating point number
            book.AddGrade(75);

            GradeStatistics stats = book.ComputeStatistics();

            Console.WriteLine(stats.AverageGrade);
            Console.WriteLine(stats.HighestGrade);
            Console.WriteLine(stats.LowestGrade);
        }
示例#27
0
        public GradeStatistics ComputeStatistics()
        {
            GradeStatistics stats = new GradeStatistics();

            // Represents all the grades in the GradeBook
            float sum = 0;

            foreach (float grade in grades)
            {
                // Will execute once for each grade in the grades collection
                stats.HighestGrade = Math.Max(grade, stats.HighestGrade);
                stats.LowestGrade  = Math.Min(grade, stats.LowestGrade);
                sum += grade; // Same as sum = sum + grade;
            }
            stats.AverageGrade = sum / grades.Count;
            return(stats);
        }
示例#28
0
        public override GradeStatistics ComputeStatistics()//i creatde this method as virtual bc i want to use this in throwawaygradebook class.
        {
            Console.WriteLine("GradeBook:GradeTrackers Gradebook");
            GradeStatistics statistics = new GradeStatistics();
            float           sum        = 0;

            statistics.LowestGrade = float.MaxValue;
            foreach (float grade in grades)
            {
                sum = sum + grade;
                statistics.HighestGrade = Math.Max(grade, statistics.HighestGrade);
                statistics.LowestGrade  = Math.Min(grade, statistics.LowestGrade);
            }
            statistics.AverageGrade = sum / grades.Count;

            return(statistics);
        }
示例#29
0
        private static void WriteResults(IGradeTracker book)
        {
            GradeStatistics stats = book.ComputeStatistic();

            book.AddGrade(6.5f);

            foreach (var grade in book)
            {
                Console.WriteLine(grade);
            }

            WriteResult("Highest grade", (int)stats.MaxGrade);
            WriteResult("Average grade", stats.AvgGrade);
            WriteResult("Lowest grade", stats.MinGrade);
            WriteResult("Your letter Grade is ", stats.LetterGrade);
            WriteResult("And it is ", stats.LetterGradeDescription);
        }
示例#30
0
        public override GradeStatistics ComputeStatistics()      //"virtual" to invoke polymorphism (GradeBook/ThrowAwayGradeBook); replace with "override" for abstract method
        {
            Console.WriteLine("GradeBook::ComputeStatistics");   //Simple debug to ensure going through of the GradeBook:ComputeStatistics method

            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);
        }
示例#31
0
        public override GradeStatistics ComputeStatistics() // When i implement ComputeStatistics() in Gradebook.cs if i want this method to provide an implementation for an abstract method in my base class, i have to remove virtual and use override.
        {
            Console.WriteLine("GradeBook::ComputeStatics");

            GradeStatistics stats = new GradeStatistics();

            float sum = 0;

            foreach (float grade in grades)
            {
                stats.HighestGrade = Math.Max(grade, stats.HighestGrade); // It uses a range hence why there are 2 arguments for max/min
                stats.LowestGrade  = Math.Min(grade, stats.LowestGrade);  // It uses a range hence why there are 2 arguments for max/min
                sum += grade;
            }
            stats.AverageGrade = sum / grades.Count; //If there is no grades it will divide by 0, which will create runtime error
            return(stats);
        }
示例#32
0
        public GradeStatistics ComputeStatistics() /* if a method returns a type, you have to prefix it with the type, eg in this case it is type 'GradeStatistics', otherwise it is void */
        {
            GradeStatistics stats = new GradeStatistics();

            stats.HighestGrade = 0;
            float sum = 0f;

            foreach (float grade in grades)
            {
                stats.HighestGrade = Math.Max(grade, stats.HighestGrade); // Math class's max static method gives you the larger value of the two provided arguments, which is reassigned to lowest value
                stats.LowestGrade  = Math.Min(grade, stats.LowestGrade);  // As with above but with lowest
                sum += grade;
            }

            stats.AverageGrade = sum / grades.Count;
            return(stats);
        }
示例#33
0
        public GradeStatistics ComputeStatistics()
        {
            GradeStatistics stats = new GradeStatistics(); //This code is for allocate memory but Dependency.


            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);
        }
示例#34
0
        public GradeStatistics ComputeStatistics()
        {
            GradeStatistics stats = new GradeStatistics();

            float sum = 0;


            foreach (float nota in notas)
            {
                sum += nota;

                stats.highestGrade = Math.Max(nota, stats.highestGrade);
                stats.lowestGrade  = Math.Min(nota, stats.lowestGrade);
            }
            stats.averageGrade = sum / notas.Count;
            return(stats);
        }
示例#35
0
        static void Main(string[] args)
        {
            SpeechSynthesizer synth = new SpeechSynthesizer();

            synth.Speak("Hello! This is the grade book program");

            GradeBook book = new GradeBook();

            book.AddGrade(91);
            book.AddGrade(89.5f);
            book.AddGrade(75);
            GradeStatistics stats = book.ComputeStatistics();

            Console.WriteLine(stats.AverageGrade);
            Console.WriteLine(stats.HighestGrade);
            Console.WriteLine(stats.LowestGrade);
        }
示例#36
0
        static void Main(string[] args)
        {
            SpeechSynthesizer synth = new SpeechSynthesizer();

            synth.Speak("Hello!, this is the grade book program");

            GradeBook book = new GradeBook();

            // book.NameChanged = new NameChangedDelegate(OnNameChanged);
            //book.NameChanged = new NameChangedDelegate(OnNameChanged2);
            book.NameChanged += new NameChangedDelegate(OnNameChanged);
            // book.NameChanged += new NameChangedDelegate(OnNameChanged2);
            //book.NameChanged = null;


            try
            {
                Console.WriteLine("Enter a name");
                book.Name = Console.ReadLine();
            }
            catch (ArgumentException ex)
            {
                Console.WriteLine(ex.Message);
            }


            //book.Name = "Kumar's Grade Book";
            //book.Name = "Kumar' Grade Book";

            book.AddGrade(91);
            book.AddGrade(89.5f);
            book.AddGrade(75);

            book.WriteGrades(Console.Out);

            GradeStatistics stats = book.ComputeStatistics();

            ////book.LowestGrade();

            WriteResult("Average", stats.AverageGrade);
            WriteResult("Highest Grade", (int)stats.HighestGrade);
            WriteResult("Lowest Grade", stats.LowestGrade);
            WriteResult(stats.Description, stats.LetterGrade);
            Console.ReadLine();
        }
示例#37
0
        // Method for computing statistics.
        // Returns an instance of the GradeStatistics class
        public override GradeStatistics ComputeStatistics()
        {
            Console.WriteLine("GradeBook::ComputeStatistics");

            // Instantiate the GradeStatistics object that will be returned
            GradeStatistics stats = new GradeStatistics();

            float sum = 0;
            foreach (var grade in grades)
            {
                sum += grade;
                stats.HighestGrade = Math.Max(grade, stats.HighestGrade);
                stats.LowestGrade = Math.Min(grade, stats.LowestGrade);
            }
            stats.AverageGrade = sum / grades.Count;

            return stats;
        }
        public override GradeStatistics ComputeStatistics()
        {
            Console.WriteLine("GradeBook Compute");
            GradeStatistics stats = new GradeStatistics(); // Instantiate an Object stats
            
            float sum = 0f;

            foreach (float grade in grades)
            {
                stats.HighestGrade = Math.Max(grade,stats.HighestGrade);
                stats.LowestGrade = Math.Min(grade,stats.LowestGrade);
                sum = sum + grade;
            }
            //The calculation is it the Lowest grade if so throw it away
            
            stats.AverageGrade = sum / grades.Count; //formula
            return stats;
        }
        private static void WriteResults(IGradeTracker book)
        {
            //Instantiate GradeStatistics object
            GradeStatistics stats = book.ComputeStatistics();

            foreach (float grade in book) //polymorphism example using IEnumerator
            {
                Console.WriteLine(grade);
            }

            //Write grades to console
            book.WriteGrades(Console.Out);

            WriteResult("Average", stats.AverageGrade);
            WriteResult("Highest", stats.HighestGrade);
            WriteResult("Lowest", stats.LowestGrade);
            WriteResult(stats.Description, stats.LetterGrade);
        }
示例#40
0
        //return a GradeStatistics object when running this method
        public GradeStatistics ComputeStatistics()
        {
            //instantiate new gradestatistics object called stats
            GradeStatistics stats = new GradeStatistics();

            float sum = 0f;

            //for each grade in the grades list...
            foreach(float grade in grades)
            {
                //Math.Max compares two value and returns highest
                stats.HighestGrade = Math.Max(grade, stats.HighestGrade);

                //Math.Min compares two values and returns lowest
                stats.LowestGrade = Math.Min(grade, stats.LowestGrade);
                sum += grade;
            }

            //define AverageGrade property of stats object
            stats.AverageGrade = sum / grades.Count; // divide by 0?
            return stats;
        }
示例#41
0
        public GradeStatistics ComputeStatistics()
        {
            GradeStatistics stats = new GradeStatistics();

            //Do calculations
            float sum = 0f;

            foreach (float grade in grades)
            {
                //if (grade > stats.HighestGrade)
                //{stats.HighestGrade = grade;}
                //else if(grade < stats.LowestGrade)
                //{ stats.LowestGrade = grade;}

                stats.HighestGrade = Math.Max(grade, stats.HighestGrade);
                stats.LowestGrade = Math.Min(grade, stats.LowestGrade);
                sum += grade;
            }

            if (grades.Count > 0) {
            stats.AverageGrade = sum / grades.Count;
            }

            return stats;
               // throw new NotImplementedException();
        }