Форум программистов, компьютерный форум CyberForum.ru

Код по алгоритму, приведенному тут:) Работает неверно - C++

Восстановить пароль Регистрация
 
@Manya@
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 20
23.04.2010, 18:53     Код по алгоритму, приведенному тут:) Работает неверно #1
Здравствуйте!
Вот, собственно алгоритм,
Код по алгоритму, приведенному тут:) Работает неверно
вот код, вроде должно работать
Обрабатывается массив p_Q[deg][deg]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
int * c = new int [deg];
    int i, j, r, k, flag, p;
    flag=0;
    r=0;
    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){
                    flag++;
                    if (flag)
                        break;
                }
                if (flag){
                    for (i=0; i< deg; i++)
                        this->p_Q[i][j]*=(-1/(this->p_Q[k][j]));
                    for (i=0; i<deg; i++)
                                                   for(p=0; p<deg; p++)
                            if (i!=j)
                                this->p_Q[p][i]+=this->p_Q[p][j]*this->p_Q[k][i];
                    c[j]=k;
                }
            }
            flag=0;
        }
Спасибо

Добавлено через 1 час 46 минут
вариант номер 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
int * c = new int [deg];
    int i, j, r, k, flag, p;
    flag=0;
    r=0;
    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){
                    flag++;
                    if (flag)
                        break;
                }
                if (flag){
                    for (i=0; i< deg; i++)
                        this->p_Q[i][j]*=(-1/(this->p_Q[k][j]));
                for (i=0; i<deg; i++)
                    if (i!=j)
                        this->p_Q[i][j]*=this->p_Q[k][i];
                for (p=0; p<deg; p++)
                    for (i=0; i<deg; i++)
                        if (i!=j)
                            this->p_Q[p][i]+=this->p_Q[p][j];
                    c[j]=k;
                }
            }
            flag=0;
        }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.04.2010, 18:53     Код по алгоритму, приведенному тут:) Работает неверно
Посмотрите здесь:

Проверить, является ли заданная строка зашифрованной по алгоритму, приведенному в след варианте. C++
C++ Неверно работает код *ptr++ = *ptr2++
программа по непонятным мне причинам работает неверно C++
C++ Нужно написать код программы по алгоритму
Дописать код по алгоритму C++
Программа написана, но работает неверно C++
C++ Вычисление НОД по алгоритму Евклида (как организовать код?)
Разобрать код по алгоритму C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dr_Carmack
 Аватар для Dr_Carmack
3 / 3 / 1
Регистрация: 23.04.2010
Сообщений: 12
23.04.2010, 19:17     Код по алгоритму, приведенному тут:) Работает неверно #2
алгоритм из книги Д. Кнута?
@Manya@
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 20
23.04.2010, 19:21  [ТС]     Код по алгоритму, приведенному тут:) Работает неверно #3
точно так)
Yandex
Объявления
23.04.2010, 19:21     Код по алгоритму, приведенному тут:) Работает неверно
Ответ Создать тему
Опции темы

Текущее время: 06:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru