Exemple #1
0
        public void CalculateArea_AllShapes()
        {
            //This is the refactored implementation that follows the OCP.

            var myCalc   = new TotalAreaCalculator();
            var myShapes = new List <Shape>
            {
                new Circle()
                {
                    Radius = 4
                },
                new OCPRectangle()
                {
                    Height = 4, Width = 3
                },
                new Triangle()
                {
                    Height = 5, Width = 3
                }
            };

            Assert.AreEqual(69.77, Math.Round(myCalc.Area(myShapes), 2));
        }
Exemple #2
0
        static void Main(string[] args)
        {
            var shapePlayground = new TotalAreaCalculator();

            SquareShape square = new SquareShape(10);
            var         circle = new CircleShape(1);

            Console.WriteLine("Square x = " + square.X + " / area = " + square.Area);
            Console.WriteLine("Circle radius = " + circle.Radius + " / area = " + circle.Area);
            Console.WriteLine("Total Area = " + shapePlayground.CalculateTotalArea(new IShape[] { square, circle }));

            shapePlayground.RescaleAllShapes(new IShape[] { square, circle }, 2.5);

            Console.WriteLine("Square x = " + square.X + " / area = " + square.Area);
            Console.WriteLine("Circle radius = " + circle.Radius + " / area = " + circle.Area);
            Console.WriteLine("Total Area = " + shapePlayground.CalculateTotalArea(new IShape[] { square, circle }));

            // ------------------------------------

            bool done = false;

            do
            {
                Console.Clear();
                Console.WriteLine("MENU (wybierz nr zadania)");
                Console.WriteLine();
                Console.WriteLine("(1) Weryfikacja numerów PESEL");
                Console.WriteLine("(2) Wczytywanie określonej linijki pliku TXT");
                Console.WriteLine();
                Console.WriteLine("(0) Wyjście z programu");
                Console.WriteLine();
                var  choiceKey = Console.ReadKey();
                int  choice;
                bool choiseParsed = int.TryParse(choiceKey.KeyChar.ToString(), out choice);

                if (choiseParsed)
                {
                    if (choice == 1)// Weryfikacja numerów PESEL
                    {
                        done = true;
                        PeselValidationChoice();
                    }

                    else if (choice == 2)// Wczytywanie określonej linijki pliku TXT
                    {
                        done = true;
                        FileReadingChoice();
                    }

                    else if (choice == 0)// Zakończenie programu
                    {
                        done = true;
                    }

                    else
                    {
                        Console.WriteLine();
                        Console.WriteLine("Niepoprawny wybór! Naciśnij ENTER i spróbuj ponownie.");
                        Console.ReadKey();
                    }
                }
            }while (!done);
        }