Андрей Гарт:
Доброго времени суток!
У меня есть набор формул:
Слишком замудрено. А значит - не правильно. Код должен быть простым и понятным, а не циклы в цикле и массивом погоняет.
Вот это что: net[j3] ? Это Вы так ключ пишите или это значение?
j3 это значение. Перебор значений начинается с J3=0 и заканчивается когда J3<5, так как в массиве net[] 5 значений, а счет в массивах идет от 0.
Андрей Гарт:
j3 это значение. Перебор значений начинается с J3=0 и заканчивается когда J3<5, так как в массиве net[] 5 значений, а счет в массивах идет от 0.
j3 это значение. Перебор значений начинается с J3=0 и заканчивается когда J3<5, так как в массиве net[] 5 значений, а счет в массивах идет от 0.
Обращение к значениям массива производится по ключу. У вас не правильно все написано.
я поэтому и обратился на этот форум за помощью... Чтоб помогли разобраться что не так
Андрей Гарт:
я поэтому и обратился на этот форум за помощью... Чтоб помогли разобраться что не так
я поэтому и обратился на этот форум за помощью... Чтоб помогли разобраться что не так
Вам же сказали что не так
Андрей Гарт:
я поэтому и обратился на этот форум за помощью... Чтоб помогли разобраться что не так
я поэтому и обратился на этот форум за помощью... Чтоб помогли разобраться что не так
Напишите так как есть формулы зачем массивы с циклами?
А можно на примере кода. Я не программист и языков не знаю.
Если формул сотни, то писать долго, у компилятора есть ограничение на количество кода. Через массивы легче менять параметры. Можно делать больше или меньше формул меняя несколько цифр.
Андрей Гарт:
Если формул сотни, то писать долго, у компилятора есть ограничение на количество кода. Через массивы легче менять параметры. Можно делать больше или меньше формул меняя несколько цифр.
Если формул сотни, то писать долго, у компилятора есть ограничение на количество кода. Через массивы легче менять параметры. Можно делать больше или меньше формул меняя несколько цифр.
Путаете массив с классом. Вообще не верное направление выбрали. Или функциями сделайте.
double array_w[25]; double array_x[5]; double array_out[]; ArrayResize(array_out,5,0); for(int i = 0; i < 5; i++){ double net = (array_x[i] * array_w[i]) + (array_x[i + 1] * array_w[i + 5]) + (array_x[i + 2] * array_w[i + 10]) + (array_x[i + 3] * array_w[i + 15]) + (array_x[i + 4] * array_w[i + 20]); ArrayFill(array_out,i,1,net); }
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Доброго времени суток!
У меня есть набор формул:
out1 = 1 / (1+exp(-net1));
out2 = 1 / (1+exp(-net2));
out3 = 1 / (1+exp(-net3));
out4 = 1 / (1+exp(-net4));
out5 = 1 / (1+exp(-net5));
Эти формулы нужно реализовать через массивы и циклы. Помогите пожалуйста!!!
У меня получилось так (но считает не правильно):
объявляю массивы глобально:
double w[25];
double x[5];
double out[5];
double net[5];
в функции init код такой:
for(int j3=0; j3<5; j3++)/
{
for(int k=j3; k<25; k=k+5)
{
net[j3]+=w[k]*x[j3];
}
}
for(int j2=0; j2<5; j2++)
{
out[j2]=1/(1+exp(-net[j2]));
}