Перейти к содержанию

Koshak

Пользователи
  • Постов

    964
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Koshak

  1. от нас:участие в турнирах(в том числе старладер),тренировки(с 22-23 часов),адекватность.

    от вас:ответсвенность,адекватность, знание доты в целом,прямые руки.

    приветсвуются: участие в каких-нибудь чемпионатах(в том числе и по д1).

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

    пример: Николай, 25 лет, сап/соло хард/кери в трипл, 5 лет, гарена/iccup, топ 1 на асусе.

  2. метод хорд

     int it=0;
    long double a=1, b=2;
    cout << "Начальное приближение: A=" << a << ", B=" << b << endl;
    cout << "=============" << endl;
    long double Xi1=0, Xi=b, Xim1=a;
    while(1)
    {
    long double xpr=Xi1;
    Xi1=(-F(Xim1)*(Xi-Xim1)) / (F(Xi)-F(Xim1))+Xim1;
    if (F(Xim1)*F(xpr)>0) {
    Xi=Xi1; //b
    Xim1=Xim1; //a
    } else {
    Xi=Xi; //b
    Xim1=Xi1; //a
    }
    it++;

    метод дихотомии

     long double Dihotomiya (long double a,long double 
    {
    long double c;
    c=(a+b)/2;
    while(b-a>0.001)
    {
    if( F(a)*F(c)<0) b=c;
    else a=c;
    c=(b+a)/2;
    }
    return c;
    }

    уравнение

     long double F(long double x)
    {
    return 2*exp(pow(x,-1))-pow((x-2),2);

  3.  int main()
    {
    setlocale(LC_ALL,"Russian");
    cout << "уравнение 2*e^-x - (x-2)^2=0 " << endl;
    int it=0;
    long double a=1, b=6;
    cout << "Начальное приближение: A=" << a << ", B=" << b << endl;
    cout << "=============" << endl;
    long double Xi1=0, Xi=b, Xim1=a;
    while(1)//что такое while(1)?
    {
    long double xpr=Xi1;
    Xi1=(-F(Xim1)*(Xi-Xim1)) / (F(Xi)-F(Xim1))+Xim1;//вообще не понятно что это
    if (F(Xim1)*F(xpr)>0) {//вообще не понятно что это
    Xi=Xi1; //b
    Xim1=Xim1; //a
    } else {
    Xi=Xi; //b
    Xim1=Xi1; //a
    }
    it++;
    cout << "Значение X на итерации " << it << ": "<< Xi << endl;
    if (fabs(Xi1-xpr)<0.001) break;//что такое fabs?
    }
    cout << "=============";
    cout << endl <<"Всего итераций: " << it << endl;
    cout << "корень уравнения: " << Xi << ", с точностью 0.001" << endl;
    system("pause");
    return 0;
    }

    и тут нельзя задать отрицательный промежуток.корни только положительные.как это исправить?

    Добавлено спустя 15 минут 33 секунды:

    вообще, в целом задание-найти корень уравнения методом дихотомии и методом хорд.вот мой код

    #include 
    #include
    #include
    #include
    #include
    using namespace std;
    long double F(long double x)
    {
    return 2*exp(pow(x,-1))-pow((x-2),2);
    }
    long double Dihotomiya (long double a,long double
    {
    long double c;
    c=(a+b)/2;
    while(b-a>0.001)
    {
    if( F(a)*F(c)<0) b=c;
    else a=c;
    c=(b+a)/2;
    }
    return c;
    }
    int main()
    {
    setlocale(LC_ALL,"Russian");
    cout << "уравнение 2*e^-x - (x-2)^2=0 " << endl;
    int it=0;
    long double a=1, b=2;
    cout << "Начальное приближение: A=" << a << ", B=" << b << endl;
    cout << "=============" << endl;
    long double Xi1=0, Xi=b, Xim1=a;
    while(1)
    {
    long double xpr=Xi1;
    Xi1=(-F(Xim1)*(Xi-Xim1)) / (F(Xi)-F(Xim1))+Xim1;
    if (F(Xim1)*F(xpr)>0) {
    Xi=Xi1; //b
    Xim1=Xim1; //a
    } else {
    Xi=Xi; //b
    Xim1=Xi1; //a
    }
    it++;
    cout << "Значение X на итерации " << it << ": "<< Xi << endl;
    if (fabs(Xi1-xpr)<0.001) break;
    }
    cout << "=============";
    cout << endl <<"Всего итераций: " << it << endl;
    cout << "корень уравнения: " << Xi << ", с точностью 0.001" << endl;
    cout << "==================";
    cout << endl;
    cout << "метод дихотомии" << endl;
    cout << "корень с точностью 0.001 равен " << Dihotomiya(a,;
    system("pause >> void");
    return 0;
    }

    и он работает неправильно...кароче, корни выводятся неверные.помогите кто чем может:(последнее задание для зачета к пятнице:)

  4. программист - это специалист, который пишет программы. Программист не занимается сборкой компьютеров; в его компетенцию не входят советы, как настроить программу такую-то, какую программу выбрать для того-то и того-то, помочь вылечить ваш компьютер от вирусов или найти в Виндовз такую-то функцию.

  5. погрешность вычислений-это переменная epsilon, а цифра 2,72-это эпсилон.у меня уравнение 2*e^-x - (x-2)^2=0.вот e-это и есть эпсилон, который примерно равен 2,72

    Добавлено спустя 1 минуту 10 секунд:

    Добавьте

    #include

    и пользуйтесь функцией exp(x)

    а это разве не экспонента?

    меня больше интересует сам алгоритм метода хорд на С++, а не вызов функции:(

    Сам алгоритм то вы сможете сформулировать? На любом языке?

    в том и дело, что нет:(

  6. Откуда цифра 2,72? Это же погрешность вычисления. Она должна быть всяко меньше 1

    погрешность вычислений-это переменная epsilon, а цифра 2,72-это эпсилон.у меня уравнение 2*e^-x - (x-2)^2=0.вот e-это и есть эпсилон, который примерно равен 2,72

    Добавлено спустя 1 минуту 10 секунд:

    меня больше интересует сам алгоритм метода хорд на С++, а не вызов функции:(

  7. спасибо, а нельзя на примере?:)

    long double F(long double x)
    {
    long double f;
    long double e=2.72;
    f=2*(pow(e,-x))-(pow(x-2,2));
    return f;
    }
    long double Fp1(long double x)
    {
    long double f;
    long double e=2.72;
    f=-2*x-2*(pow(e,-x))+4;
    return f;
    }
    long double Fp2(long double x)
    {
    long double f;
    long double e=2.72;
    f=2*(pow(e,-x))-2;
    return f;
    }
    }

    это моё уравнение.и первая и вторая его производные.

    саму функцию вот незнаю как описать.

    long double m_hord(long double left,long double right)
    {
    long double epsilon=0,001//погрешность

    }

    график

    WolframAlpha--2e-x_-_x-220--2012-05-23_0237.gif

    и еще такой вопрос.я незнаю как в С++ написать e(эпсилон)

    в коде видно, что я просто беру переменную e и даю ей значение 2,72.так можно?

  8. неужели опять делать сетку для 6ти команд? давайте доберем еще парочку, а? ))

    если кто то думает что придет и зарегается в день встречи, то это вызовет массу неудобств, т.к. если все будет известно заранее то время игр было бы распределено, а так командам придется проводить много часов ожидания толкаясь подле клуба

    т.е. 6 команд зарегано?)

×
×
  • Создать...