Пример #1
0
        /// <summary>
        /// Задача 2
        /// Модифицировать программу нахождения минимума функции так, чтобы можно было передавать функцию
        /// в виде делегата.
        /// а) Сделать меню с различными функциями и представить пользователю выбор, для какой функции и
        /// на каком отрезке находить минимум. Использовать массив (или список) делегатов, в котором
        /// хранятся различные функции.
        /// б) *Переделать функцию Load, чтобы она возвращала массив считанных значений. Пусть она
        /// возвращает минимум через параметр (с использованием модификатора out).
        /// </summary>
        static void dz2()
        {
            Console.Clear();
            HelpCS.MyHeader(text: "2. Модифицировать программу нахождения минимума функции ");
            ///////////////////////////////////////////////////////////////////////////////////
            Console.WriteLine("Пункт задания А. Меню с различными функциями.");
            while (Helpdz6_2.GetSwitchFromConsole(out int swtch)) //выбор функции в консоли
            {
                MinOfFunc.MyFunc func = MinOfFunc.GetMyFunc(swtch);
                MinOfFunc.SaveFunc(func, @"..\..\data.bin", 0, 10, 1);
                double min = MinOfFunc.LoadAndMin(@"..\..\data.bin");
                Console.WriteLine($"Минимум функции равен = {min:F2}\n\n__________________________________________________________________________");
            }
            HelpCS.MyPause();
            ///////////////////////////////////////////////////////////////////////////////////
            Console.WriteLine("Пункт задания Б. Массив считанных значений.");
            Console.WriteLine("Записанные в последний раз числа в файл:");
            List <double> list = MinOfFunc.LoadToListAndMin(@"..\..\data.bin", out double min2);

            list.ForEach(Console.WriteLine);
            Console.WriteLine($"Минимум функции равен = {min2:F2}\n\n__________________________________________________________________________");
            ///////////////////////////////////////////////////////////////////////////////////
            HelpCS.MyFooter();
            //HelpCS.MyHeader(text: "2. Модифицировать программу нахождения минимума функции ");
            /////////////////////////////////////////////////////////////////////////////////////
            //Console.WriteLine("Пункт задания А. Меню с различными функциями.");
            //while (Helpdz6_2.GetSwitchFromConsole(out int swtch)) //выбор функции в консоли
            //{
            //    MinOfFunc.MyFunc func = MinOfFunc.GetMyFunc(swtch);
            //    MinOfFunc.SaveFunc(func, @"..\..\data.bin", 0, 10, 1);
            //    double min = MinOfFunc.LoadAndMin(@"..\..\data.txt");
            //    Console.WriteLine($"Минимум функции равен = {min:F2}\n\n__________________________________________________________________________");
            //}
            //HelpCS.MyPause();
            /////////////////////////////////////////////////////////////////////////////////////
            //Console.WriteLine("Пункт задания Б. Массив считанных значений.");
            //Console.WriteLine("Записанные в последний раз числа в файл:");
            //List<double> list = MinOfFunc.LoadToListAndMin(@"..\..\data.txt", out double min2);
            //list.ForEach(Console.WriteLine);
            //Console.WriteLine($"Минимум функции равен = {min2:F2}\n\n__________________________________________________________________________");
            /////////////////////////////////////////////////////////////////////////////////////
            //HelpCS.MyFooter();
        }
Пример #2
0
        /// <summary>
        /// Задача 2
        /// Модифицировать программу нахождения минимума функции так, чтобы можно было передавать функцию
        /// в виде делегата.
        /// а) Сделать меню с различными функциями и представить пользователю выбор, для какой функции и
        /// на каком отрезке находить минимум. Использовать массив (или список) делегатов, в котором
        /// хранятся различные функции.
        /// б) *Переделать функцию Load, чтобы она возвращала массив считанных значений. Пусть она
        /// возвращает минимум через параметр (с использованием модификатора out).
        /// Рассахатский
        /// </summary>
        static void Main()
        {
            MyHelper.MyHeader(text: "Задача 2. Программа нахождения минимума функции.");
            ///////////////////////////////////////////////////////////////////////////////////
            WriteLine("Пункт задания А. Меню с различными функциями.");
            while (GetSwitchFromConsole(out int swtch)) //выбор функции в консоли
            {
                MinOfFunc.MyFunc func = MinOfFunc.GetMyFunc(swtch);
                MinOfFunc.SaveFunc(func, @"..\..\data.bin", 0, 10, 1);
                double min = MinOfFunc.LoadAndMin(@"..\..\data.bin");
                WriteLine($"Минимум функции равен = {min:F2}");
            }
            MyHelper.MyPause();
            ///////////////////////////////////////////////////////////////////////////////////
            WriteLine("Пункт задания Б. Массив считанных значений.");
            WriteLine("Записанные в последний раз числа в файл:");
            List <double> list = MinOfFunc.LoadToListAndMin(@"..\..\data.bin", out double min2);

            list.ForEach(WriteLine);
            WriteLine($"Минимум функции равен = {min2:F2}");
            ///////////////////////////////////////////////////////////////////////////////////
            MyHelper.MyFooter();
        }