1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Соответствие моего кода и псевдокода из алгоритма

Тема в разделе "Вопросы новичков и не только", создана пользователем Terra, 8 май 2010.

Статус темы:
Закрыта.
  1. Terra

    Terra Гость

    Репутация:
    0
    Всем доброго времени суток:newconfus:
    Посмотрите пожалуйста, что не так в коде, который реализован по этому псевдокоду. Ошибок нет, но все равно что-то не так. Мой результат отличается от ожидаемого ввиду неправильной реализации вот сего:
    Соответствие моего кода и псевдокода из алгоритма
    роль матрицы Q исполняет p_Q, все остальное имеет те же имена переменных, что и в псевдокоде.
    Код:
    int * c = new int [deg];
    int j, k, r, i, l, s;
    bool j_flag;
    r=0;
    j_flag = false;
    for (i=0; i<deg; i++)
    c[i]=-1;
    for (k=0; k<deg; k++)
    {
    for (j=0; j<deg; j++)
    if (this->p_Q[k][j]!=0 && c[j]<0)
    {
    j_flag = true;
    for (i=0; i<deg; i++)
    this->p_Q[i][j]*=(-1/this->p_Q[k][j]);
    break;
    }
    if (j_flag)
    {
    for (i=0; i<deg; i++)
    {
    if (i!=j)
    {
    for (l=0; l<deg; l++)
    this->p_Q[l][i] = this->p_Q[l][i] + this->p_Q[k][i]*this->p_Q[l][j];
    c[j] = k;
    }
    }
    j_flag = false;
    }
    else
    {
    r++;
    for (j=0; j<deg; j++)
    v[r][j] = 0;
    for (s=0; s<deg; s++)
    {
    j = c[s];
    if (j>=0)
    this->v[r][j] = this->p_Q[k][s];
    }
    this->v[r][k] = 1;
    }
    }
    Спасибо.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей