Сохранить значение из цикла for в массив? - PullRequest
0 голосов
/ 26 октября 2018

С учетом этого кода:

for (int i = 0; i < 8; i++)
{
    for (int j = 0; j < 4; j++)
    {
        if (col_A[i] == row_B[j])
        {
            printf("%d %d %2.2f\n",
                   row_A[i], col_B[j], val_A[i] * val_B[j]);
            val_D[i] = val_A[i] * val_B[j];
            row_D[i] = row_A[i];
            col_D[j] = col_B[j];
        }
    }
}

Со следующим выводом:

1 1 3.00
1 2 3.00
1 1 3.00
2 1 3.00
2 2 4.00
3 1 4.00
3 2 4.00
3 1 6.00

row_D = [ 1 1 2 2 3 3 0 0 ]
col_D = [ 1 1 2 2 0 0 0 0 ]
val_D = [ 3.00 3.00 3.00 4.00 4.00 6.00 0.00 0.00 ]

Каков правильный метод для правильного хранения значений в val_D, row_D и col_D?Row_D должен содержать значения из 1-го столбца 3-го кортежа, Col_D из 2-го столбца и Val_D из 3-го столбца.

Спасибо.

1 Ответ

0 голосов
/ 26 октября 2018

Введите переменную-счетчик и увеличивайте ее, только если есть обновление.

counter = 0
for (int i = 0; i < 8; i++)
{
    for (int j = 0; j < 4; j++)
    {
        if (col_A[i] == row_B[j])
        {
            printf("%d %d %2.2f\n",
                   row_A[i], col_B[j], val_A[i] * val_B[j]);
            val_D[counter] = val_A[i] * val_B[j];
            row_D[counter] = row_A[i];
            col_D[counter] = col_B[j];
            counter = counter + 1;
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...