Войти

Показать полную графическую версию : Помогите исправить ошибки!!!!!


Nastasya
23-05-2011, 21:33
Помогите пожалуйста исправить ошибки!!!!
Вот исходный код:
omp_lock_t ; dmax_lock;
omp_init_lock(dmax_lock);
do {
dmax = 0; // максимальное изменение значений u
#pragma omp parallel for shared(u,n,dmax) private(i,temp,d,dm)
for ( i=1; i<N+1; i++ ) {
dm = 0;
for ( j=1; j<N+1; j++ ) {
temp = u[i][j];
un[i][j] = 0.25*(u[i-1][j]+u[i+1][j]+


u[i][j-1]+u[i][j+1]–h*h*f[i][j]);
d = fabs(temp-un[i][j]);
if ( dm < d ) dm = d;
}
omp_set_lock(dmax_lock);
if ( dmax < dm ) dmax = dm;
omp_unset_lock(dmax_lock);
}
} // конец параллельной области
for ( i=1; i<N+1; i++ ) { // обновление данных
for ( j=1; j<N+1; j++ )
u[i][j] = un[i][j];
}
} while ( dmax > eps );
}


Вот ошибки, которые он выдает:
>.\Main.cpp(1) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\Main.cpp(1) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\Main.cpp(2) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\Main.cpp(3) : error C2059: syntax error : 'do'
1>.\Main.cpp(3) : error C2143: syntax error : missing ';' before '{'
1>.\Main.cpp(3) : error C2447: '{' : missing function header (old-style formal list?)
1>.\Main.cpp(22) : error C2059: syntax error : 'for'
1>.\Main.cpp(22) : error C2143: syntax error : missing ')' before ';'
1>.\Main.cpp(22) : error C2143: syntax error : missing ';' before '<'
1>.\Main.cpp(22) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\Main.cpp(22) : error C2143: syntax error : missing ';' before '++'
1>.\Main.cpp(22) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\Main.cpp(22) : error C2086: 'int i' : redefinition
1> .\Main.cpp(22) : see declaration of 'i'
1>.\Main.cpp(22) : error C2059: syntax error : ')'
1>.\Main.cpp(22) : error C2143: syntax error : missing ';' before '{'
1>.\Main.cpp(22) : error C2447: '{' : missing function header (old-style formal list?)
1>.\Main.cpp(26) : error C2059: syntax error : '}'
1>.\Main.cpp(26) : error C2143: syntax error : missing ';' before '}'
1>.\Main.cpp(26) : error C2059: syntax error : '}'

Помогите пожалуйста!!Очень надо!!!

Drongo
23-05-2011, 21:50
нет объявлений переменным i, j.
различное количество скобок
цикл while по моему должно поставить на уровень последней скобки
полная нечитаемость кода постороннему человеку, нет отступов.

Buchik
23-05-2011, 22:09
Ну, я ещё свои 5 копеек вставлю...


по идее, если по открывающимся скобкам пощитать, цикл do ...while заканчивается прямо перед записью
// конец параллельной области
и последние 2-е скобки лишние...




© OSzone.net 2001-2012