Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.04.2017, 00:59   #1
envi
Новичок
Джуниор
 
Регистрация: 18.04.2017
Сообщений: 1
По умолчанию помогите разобраться с задачей

Окончательно запуталась в задании помогите разобраться
-Нашла точку пересечения
-потом каким то образом надо впихнуть одномерную оптимизацию , чтобы из множества иксов он выбирал один
-(до этого мне далеко ) посчитать злосчастное расстояние

текст задания -найти оптимальное значение параметра q>0 , при котором R- расстояние между точкой M(a;b) и точкой пересечения кривых y1(x,q)=q*exp^-x и y2(x)=q*exp^-(5-x) минимально


Код:
public class CNLU
    {
        public double a, b, eps, x, y, q;
        public int n;
        public string tras;

        public double f(double x)
        {
            return q * Math.Exp(-x);
        }



        public double f2(double x, double q)
        {
            return q * Math.Exp(-(5 - x));
        }



        public double Nuton(double a, double b, double eps, double q)
        {
            double x = a;
            if (f(x) * f2(x, q) < 0) x = b;
            n = 0;
            double x0;
            tras = tras + "МЕТОД НЬЮТОНА\r\n";
            do
            {
                n++;
                x0 = x;
                x = x0 - f(x0) / f2(x0, q);
                tras = tras + x0.ToString("F3") + "  " + x.ToString("F3") + "  " + f(x).ToString("F3") + "\r\n";
            }
            while (Math.Abs(x - x0) > eps);
            return x0;
        }


       public double Zoloto(double x1,double x2,double a, double b, double delta, double N, double eps)
        {
           
            a = 5;
            b = 10;
            N = 0;
            eps = 0.0004;
            delta = (b - a) / 6;

            while ((b - a) > eps) ;
            {



                x1 = (a + b) / 2 - delta;
                x2 = (a + b) / 2 + delta;
               // f(x) = x1 * x1 - 6 * x1 + 4;
               // f2(x,q) = x2 * x2 - 6 * x2 + 4;

                if (f(x) > f2(x,q))
                {
                    a = x1;
                }
                else 
                {
                    b = x2;

                }

                N = N + 1;
                return x;

            }



        }

_____
Код программы нужно выделять (форматировать) тегами [CODE] (читать FAQ)
Модератор

Последний раз редактировалось Serge_Bliznykov; 18.04.2017 в 10:07.
envi вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите разобраться с задачей на javascript Hoolegen JavaScript, Ajax 4 22.04.2015 00:01
Помогите разобраться с задачей С Данилыч Д. Помощь студентам 3 12.02.2009 11:22
Помогите разобраться с задачей Dialon Помощь студентам 8 10.02.2009 15:24
помогите с задачей разобраться r3krut Паскаль, Turbo Pascal, PascalABC.NET 1 16.12.2007 15:43