static void Main(string[] args)
 {
     while (true)
     {
         int n;
         do
         {
             Console.WriteLine("Введите количество окружностей: ");
         }while (!int.TryParse(Console.ReadLine(), out n) || n < 0);
         Console.Clear();
         Circle circle = new Circle();
         Console.WriteLine("Главная окружность:\n" + circle.ToString());
         Console.WriteLine("Создан массив окружностей:");
         Circle[] arr = new Circle[n];
         for (int i = 0; i < n; i++)
         {
             arr[i] = new Circle();
             Console.WriteLine(arr[i].ToString());
         }
         Console.WriteLine("\nС главной окружностью пересекаются:");
         for (int i = 0; i < n; i++)
         {
             if (arr[i].Intersect(circle))
             {
                 Console.WriteLine(arr[i].ToString());
             }
         }
     }
 }
        static void Main(string[] args)
        {
            do
            {
                Console.Clear();
                int      n         = CorrectCheck("Введите количество обьектов: ");
                Circle[] circles   = new Circle[n];
                Circle   oneCircle = new Circle();
                for (int i = 0; i < circles.Length; i++)
                {
                    circles[i] = new Circle();
                }

                Console.WriteLine("\nИнформация обо всех кругах:");
                Array.ForEach(circles, x => Console.WriteLine(x.ToString()));
                Console.WriteLine("Уникальный круг:" + oneCircle.ToString());

                Console.WriteLine("\nИнформация обо всех кругах, которые пересекаются с уникальным:");
                Array.ForEach(Array.FindAll(circles, x => Circle.Intersection(x, oneCircle) == true), y => Console.WriteLine(y.ToString()));

                Console.WriteLine("Нажмите Escape, если хоитте выйти\nИли любую другую клавишу, если хотите продолжить");
            } while (Console.ReadKey().Key != ConsoleKey.Escape);
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            while (true)
            {
                int N;
                do
                {
                    Console.Write("Введите N: ");
                } while (!int.TryParse(Console.ReadLine(), out N) || N <= 0);

                // Создание массива окружностей.

                Circle[] circles = new Circle[N];
                Random   rand    = new Random();

                for (int i = 0; i < circles.Length; i++)
                {
                    circles[i] = new Circle(rand.Next(1, 16), rand.Next(1, 16), rand.Next(1, 16));
                }


                // Создание отдельной окружности.

                int x;
                do
                {
                    Console.Write("Введите координату x центра окружности: ");
                } while (!int.TryParse(Console.ReadLine(), out x));

                int y;
                do
                {
                    Console.Write("Введите координату y центра окружности: ");
                } while (!int.TryParse(Console.ReadLine(), out y));

                int radius;
                do
                {
                    Console.Write("Введите радиус окружности: ");
                } while (!int.TryParse(Console.ReadLine(), out radius));

                Circle indCircle = new Circle(x, y, radius);

                // Вывод информации об окружностях в массиве.

                foreach (var circle in circles)
                {
                    Console.WriteLine(circle.ToString());
                }


                // Вывод информации об окружностях в массиве, пересекающихся с отдельной окружностью.

                Console.WriteLine("============================================");
                Console.WriteLine(Environment.NewLine + "Объекты, пересекающиеся с объектом " + indCircle.ToString() + ":");

                Console.WriteLine();
                foreach (var circle in circles)
                {
                    if (circle.IntersectsWith(indCircle))
                    {
                        Console.WriteLine(circle.ToString());
                    }
                }
            }
        }