Statistics V2 Learn programming C#



Lesson:

Arrays, Structures and Strings


Exercise:

Statistics V2


Objetive:

reate a statistical program which will allow the user to:

- Add new data
- See all data entered
- Find an item, to see whether it has been entered or not
- View a summary of statistics: amount of data, sum, average, maximum, minimum
- Exit the program

These options must appear as a menu. Each option will be chosen by a number or a letter.

Create a statistical program which will allow the user to:

- Add new data
- See all data entered
- Find an item, to see whether it has been entered or not
- View a summary of statistics: amount of data, sum, average, maximum, minimum
- Exit the program

These options must appear as a menu. Each option will be chosen by a number or a letter.

The program must reserve space for a maximum of 1000 data, but keep count of how many data actually exist.


Code:

using System;
public class exercise78
{
    public static void Main()
    {
        float[] numbers = new float[1000];
        int count = 0;

        float max = 0.0f, min = 0.0f, total = 0.0f, searchNumber = 0.0f;
        bool found;

        int option = 0;
        do
        {
            Console.WriteLine("1. Add");
            Console.WriteLine("2. Show");
            Console.WriteLine("3. Search");
            Console.WriteLine("4. Statistics");
            Console.WriteLine("5. Exit");

            option = Convert.ToInt32(Console.ReadLine());
            if (option != 5)
            {
                switch (option)
                {
                    case 1: // Add

                        Console.WriteLine("Enter a number: ");
                        numbers[count] = Convert.ToSingle(Console.ReadLine());

                        max = numbers[count];
                        min = numbers[count];

                        total += numbers[count];

                        count++;

                        if (max < numbers[count])
                            max = numbers[count];

                        if (min > numbers[count])
                            min = numbers[count];

                        break;
                    case 2: // Show

                        for (int i = 0; i < count; i++)
                            Console.WriteLine("{0} ", numbers[i]);

                        break;
                    case 3: // Search

                        Console.WriteLine("Enter a number for search: ");
                        searchNumber = Convert.ToSingle(Console.ReadLine());

                        for (int i = 0; i < count; i++)
                            if (numbers[i] == searchNumber)
                                found = true;

                        if (found)
                            Console.WriteLine("Number {0} found a amount of {1} "
                            , numbers[i]);
                        else
                        {
                            Console.WriteLine("Not found");
                            found = false;
                        }

                        break;
                    case 4: // Statistics

                        Console.WriteLine("Total data: {0}", count + 1);
                        Console.WriteLine("Sum: {0}", total);
                        Console.WriteLine("Average: {0}", total / (count + 1));
                        Console.WriteLine("Min number: {0}", min);
                        Console.WriteLine("Max number: {0}", max);

                        break;
                    default:

                        Console.WriteLine("Error, option 1-5");
                        break;
                }
            }
        }
        while (option != 5);
    }
}