|
Помогите перевести код из С++ в 1С | ☑ | ||
|---|---|---|---|---|
|
0
полный0
22.02.17
✎
13:00
|
for (к = 1; к <= n; k++) // прямой ход
{ for (j = k + 1; j <= n; j++) { d = a[j][k] / a[k][k]; // формула (1) for (i = k; i <= n; i++) { a[j][i] = a[j][i] - d * a[k][i]; // формула (2) } b[j] = b[j] - d * b[k]; // формула (3) } } for (k = n; k >= 1; k--) // обратный ход { d = 0; for (j = k + 1; j <= n; j++) { s = a[k][j] * x[j]; // формула (4) d = d + s; // формула (4) } x[k] = (b[k] - d) / a[k][k]; // формула (4) } cout << "Korni sistemy: " << endl; for( i = 1; i <= n; i++) cout << "x[" << i << "]=" << x[i] << " " << endl; return 0; } |
|||
|
1
anatoly
22.02.17
✎
13:02
|
(0) уточни для начала - в чем ты "полный 0" - в С++ или в 1С ??
|
|||
|
2
полный0
22.02.17
✎
13:04
|
только начало, дальше разберусь
|
|||
|
3
Михаил Козлов
22.02.17
✎
13:17
|
Такое ощущение, что что-то из линейной алгебры (предположительно решение СЛАУ исключением переменных).
Т.к. я С++ не знаю, предполагаю, что 1. for (к = 1; к <= n; k++) = ДЛЯ к=1 ПО n Цикл (правильнее ДЛЯ к=0 ПО n-1). 2. s = a[k][j] * x[j]; - почти так и будет, если x - массив (лучше таблица значений с 1 колонкой, тогда вместо x[j] - x[j][0]); a - таблица значений с n колонками. 3. for (k = n; k >= 1; k--) = k = n; ПОКА k>=1 Цикл k = k - 1; КонецЦикла; |
|||
|
4
silent person
22.02.17
✎
13:25
|
Для k = 1 По n Цикл
Для j = k + 1 По n Цикл d = a[j][k]/a[k][k]; Для i = k по n Цикл a[j][i] = a[j][i] - d * a[k][i]; КонецЦикла; b[j] = b[j] - d * b[k]; КонецЦикла; КонецЦикла; и так далее |
|||
|
5
Oftan_Idy
22.02.17
✎
13:26
|
(0) увольняйся
|
|||
|
6
полный0
22.02.17
✎
13:36
|
Спасибо всем!
|
|||
|
7
Михаил Козлов
22.02.17
✎
13:43
|
(4) В 1С в массивах и ТЗ индекс от 0.
|
|||
|
8
H A D G E H O G s
22.02.17
✎
13:44
|
СЛАУ Гауссом? Смотри как в типовых!
|
| Форум | Правила | Описание | Секции | Поиск |