Restart program from a certain line with an if statement?

Posted by user1744093 on Stack Overflow See other posts from Stack Overflow or by user1744093
Published on 2012-10-25T10:36:45Z Indexed on 2012/10/25 11:00 UTC
Read the original article Hit count: 263

Filed under:
|
|

could anyone help me restart my program from line 46 if the user enters 1 (just after the comment where it states that the next code is going to ask the user for 2 inputs) and if the user enters -1 end it. I cannot think how to do it. I'm new to C# any help you could give would be great!

class Program
{
    static void Main(string[] args)
    {

        //Displays data in correct Format

        List<float> inputList = new List<float>();
        TextReader tr = new StreamReader("c:/users/tom/documents/visual studio 2010/Projects/DistanceCalculator3/DistanceCalculator3/TextFile1.txt");
        String input = Convert.ToString(tr.ReadToEnd());
        String[] items = input.Split(',');
        Console.WriteLine("Point         Latitude        Longtitude       Elevation");

        for (int i = 0; i < items.Length; i++)
        {
            if (i % 3 == 0)
            {
                Console.Write((i / 3) + "\t\t");
            }

            Console.Write(items[i]);
            Console.Write("\t\t");

            if (((i - 2) % 3) == 0)
            {
                Console.WriteLine();
            }

        }

        Console.WriteLine();
        Console.WriteLine();


        // Ask for two inputs from the user which is then converted into 6 floats and transfered in class Coordinates    


        Console.WriteLine("Please enter the two points that you wish to know the distance between:");
        string point = Console.ReadLine();
        string[] pointInput = point.Split(' ');

        int pointNumber = Convert.ToInt16(pointInput[0]);
        int pointNumber2 = Convert.ToInt16(pointInput[1]);

        Coordinates distance = new Coordinates();

        distance.latitude = (Convert.ToDouble(items[pointNumber * 3]));
        distance.longtitude = (Convert.ToDouble(items[(pointNumber * 3) + 1]));
        distance.elevation = (Convert.ToDouble(items[(pointNumber * 3) + 2]));

        distance.latitude2 = (Convert.ToDouble(items[pointNumber2 * 3]));
        distance.longtitude2 = (Convert.ToDouble(items[(pointNumber2 * 3) + 1]));
        distance.elevation2 = (Convert.ToDouble(items[(pointNumber2 * 3) + 2]));


        //Calculate the distance between two points

        const double PIx = 3.141592653589793;
        const double RADIO = 6371;

        double dlat = ((distance.latitude2) * (PIx / 180)) - ((distance.latitude) * (PIx / 180));
        double dlon = ((distance.longtitude2) * (PIx / 180)) - ((distance.longtitude) * (PIx / 180));

        double a = (Math.Sin(dlat / 2) * Math.Sin(dlat / 2)) + Math.Cos((distance.latitude) * (PIx / 180)) * Math.Cos((distance.latitude2) * (PIx / 180)) * (Math.Sin(dlon / 2) * Math.Sin(dlon / 2));
        double angle = 2 * Math.Atan2(Math.Sqrt(a), Math.Sqrt(1 - a));
        double ultimateDistance = (angle * RADIO);

        Console.WriteLine("The distance between your two points is...");
        Console.WriteLine(ultimateDistance);

        //Repeat the program if the user enters 1, end the program if the user enters -1

        Console.WriteLine("If you wish to calculate another distance type 1 and return, if you wish to end the program, type -1.");
        Console.ReadLine();

        if (Convert.ToInt16(Console.ReadLine()) == 1);

        {
           //here is where I need it to repeat
        }

© Stack Overflow or respective owner

Related posts about c#

Related posts about if-statement