Friday, December 16, 2016

Find Highest,Lowest and average using two dimensional arrays

//Rextester.Program.Main is the entry point for your code. Don't change it.
//Compiler version 4.0.30319.17929 for Microsoft (R) .NET Framework 4.5

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;

namespace Rextester
{
    public class Program
    {
        public static void Main(string[] args)
        {
            int[] marks = new int[5]{90,29,100,48,60};
            string[] names = new string[5]{"Bongani","Zesipho","Edward","Thato","Thobela"};
         
            string Hname = null;
            string Lname = null;
            int highest = marks[0];
            int lowest = marks[0];
            int sum =0;
            double average;
            int aboveAvg =0;
            int lessthanAvg= 0;
         
            for(int x = 0;x<marks.Length;x++)
            {
             
                //find highest
                if(marks[x]>highest)
                {
                    highest = marks[x];
                    Hname = names[x];
                }
             
                //Find Lowest
                if(marks[x]<lowest)
                {
                    lowest = marks[x];
                    Lname = names[x];
                }
             
                //Find Average
                sum +=marks[x];
             
             
             
            }
         
            average = sum / marks.Length;
         
            for(int x = 0;x<marks.Length;x++)
            {
                if(marks[x]>average)
                {
                    aboveAvg++;
                }
                else
                {
                    lessthanAvg++;
                }
            }
             
            //PRINTING NECESSARY RESULTS
         
            Console.WriteLine("{0} is the highest with {1}% ",Hname,highest);
            Console.WriteLine("{0} is the lowest with {1}% ",Lname,lowest);
            Console.WriteLine("The Average Mark is {0}%",average);
            Console.WriteLine("Number of Students less than Average is {0}%",aboveAvg);
            Console.WriteLine("Number of Students Above Average is {0}%",lessthanAvg);
         
        }
    }
}
=================
Edward is the highest with 100% 
Zesipho is the lowest with 29% 
The Average Mark is 65%
Number of Students less than Average is 2%
Number of Students Above Average is 3%