public static void Main()
for (int externalLoop = 0; externalLoop < 1; externalLoop++)
Console.WriteLine("1) Area of a Square\n\n2) Area of a Rectangle\n\n3) Area of Triangle\n\nWhich shape would you like to find the area of? (enter 1, 2, or 3): ");
string answer = Console.ReadLine().ToLower();
if (answer == "1" || answer == "square" || answer == "s")
for (int sideLoop = 0; sideLoop < 1; sideLoop++)
Console.Write("What is the length of the side?: ");
bool sideTest = double.TryParse(Console.ReadLine(), out side);
Console.WriteLine("The area of the square is " + Area(side));
Console.WriteLine("\nWould you like to go again? (Enter yes or no): ");
string rego = Console.ReadLine().ToLower();
if (rego == "yes" || rego == "y" || rego == "ye") externalLoop -= 1;
else if (sideTest == false)
Console.WriteLine("Please enter your input as a number\n");
if (answer == "2" || answer == "rectangle" || answer == "r")
for (int lengthLoop = 0; lengthLoop < 1; lengthLoop++)
Console.Write("What is the length of the rectangle?: ");
bool lengthTest = double.TryParse(Console.ReadLine(), out length);
for (int widthLoop = 0; widthLoop < 1; widthLoop++)
Console.Write("What is the width of the rectangle?: ");
bool widthTest = double.TryParse(Console.ReadLine(), out width);
Console.WriteLine("The area of the rectangle is " + Area(length, width));
Console.WriteLine("\nWould you like to go again? (Enter yes or no): ");
string rego = Console.ReadLine().ToLower();
if (rego == "yes" || rego == "y" || rego == "ye") externalLoop -= 1;
else if (widthTest == false)
Console.WriteLine("Enter your width as a nubmer.\n");
else if (lengthTest == false)
Console.WriteLine("Please enter your input as a number.\n");
if (answer == "3" || answer == "triangle" || answer == "t")
for (int side1Loop = 0; side1Loop < 1; side1Loop++)
Console.Write("What is the first side of the triangle?: ");
bool side1Test = double.TryParse(Console.ReadLine(), out side1);
for (int side2Loop = 0; side1Loop < 1; side1Loop++)
Console.Write("What is the second side of the triangle?: ");
bool side2Test = double.TryParse(Console.ReadLine(), out side2);
for (int side3Loop = 0; side3Loop < 1; side3Loop++)
Console.Write("What is the third side of the triangle?: ");
bool side3Test = double.TryParse(Console.ReadLine(), out side3);
Console.WriteLine("The area of the triangle is " + Area(side1, side2, side3));
Console.WriteLine("\nWould you like to go again? (Enter yes or no): ");
string rego = Console.ReadLine().ToLower();
if (rego == "yes" || rego == "y" || rego == "ye") externalLoop -= 1;
else if (side3Test == false)
Console.WriteLine("Please enter your third side as a number.\n");
else if (side2Test == false)
Console.WriteLine("Please enter your second side as a number.\n");
else if (side1Test == false)
Console.WriteLine("Please enter your first side as a number\n");
else if ( answer != "1" || answer != "square" || answer != "s" || answer != "2" || answer != "rectangle" || answer != "r" || answer != "3" || answer != "triangle" || answer != "t")
Console.WriteLine("Enter one of the given options\n");
private static double Area(double side)
private static double Area(double length, double width)
private static double Area(double a, double b, double c)
double s = (a + b + c) / 2;
double under = s * ( s - a ) * ( s - b ) * ( s - c);
double final = Math.Sqrt(under);