Из вашего пояснения в комментариях я считаю, что небольшое изменение вашего цикла даст вам то, что вы хотите.
for (int k = 0 ; k < numOutputs ; k = k + 1) {
in = 0; //Reset in to 0 at the beginning of each output loop
for (int l = 0 ; l < numInputs ; l = l + 1) {
in = in + (inputs [l] * calcWeights [l + k*numInputs]) ;
}
out [k] = in + GetBias () ;
}
Вы также должны убедиться, что вы инициализировали все веса выше.
for (int j = 0 ; j < (numInputs * numOutputs) ; j = j + 1) {
calcWeights [j] = ((-1 * numInputs) + (((double) rand ()) % (1 * numInputs))) ;
}
Для пары вариантов стиля я просто хочу отметить, что вы можете заменить k = k + 1
просто ++k
.Также вы можете заменить in = in + ...;
на in += ...;