Пример #1
0
        /// <summary>
        ///     Возвращает с start до end строчки треугольника
        /// </summary>
        /// <param name="start">начало</param>
        /// <param name="end">конец</param>
        /// <returns>строчки</returns>
        public IEnumerable <string> GetNM(int start, int end)
        {
            int           q = 1;
            FloydTriangle t = new FloydTriangle(end);

            foreach (var i in t)
            {
                if (q++ < start)
                {
                    continue;
                }
                yield return(i);
            }
        }
Пример #2
0
        static void Main(string[] args)
        {
            do
            {
                Console.Write("Введите k: ");
                int k;
                while (!int.TryParse(Console.ReadLine(), out k) && k < MaxSize)
                {
                    Console.WriteLine("Неверный формат ввода!");
                }
                FloydTriangle triangle = new FloydTriangle(k);
                foreach (var i in triangle)
                {
                    Console.WriteLine(i);
                }

                int start;
                Console.Write("Введите start: ");
                while (!int.TryParse(Console.ReadLine(), out start) && k < MaxSize)
                {
                    Console.WriteLine("Неверный формат ввода!");
                }

                int end;
                Console.Write("Введите end: ");
                while (!int.TryParse(Console.ReadLine(), out end) && k < MaxSize)
                {
                    Console.WriteLine("Неверный формат ввода!");
                }

                foreach (var i in triangle.GetNM(start, end))
                {
                    Console.WriteLine(i);
                }

                Console.WriteLine("ESC to quit");
            } while (Console.ReadKey(true).Key != ConsoleKey.Escape);
        }