Автор работы: Пользователь скрыл имя, 07 Декабря 2010 в 14:09, Не определен
Лабораторная работа
for (int j = 0; j < 10; j++)
{
if
(dataGridView1.Rows[i].Cells[
{
x[index] = 0;
}
else
{
x[index] = 1;
bul = true;
}
index++;
}
}
//////////////////////////////
for (int j=0; j < 10; j++)
{
int intX=0;
int intT=0;
for (int i = 0; i < 100; i++)
{
if (x[i]*t[i,j]==1) intX++;
if (t[i,j]==1) intT++;
}
FX[j] =(intX*100)/(intT+1);
}
///////////////////////// поиск нейрона победителя
restert:
int neiron_pobeditel = -1;
float temp = 0;
for (int i = 0; i < 10; i++)
{
if ((temp < FX[i]) && (G2[i]==1))
{
temp = FX[i];
neiron_pobeditel = i;
}
}
if (neiron_pobeditel == -1) goto ennd;
//////////////////////////////
int ix=0;
for (int i = 0; i < 100; i++)
{
if (x[i]==1) ix++;
}
/*. Определение момента резонанса
Резонанс фиксируется в том случае, если значение функции
соответст-вия выбранной
int schet = 0;
for (int i = 0; i < 100; i++)
{
XX[i] = t[i, neiron_pobeditel] * x[i];
if (XX[i] == 1)
schet++;
}
if ((schet / ix) >= q)
{
/*При резонансе поиск прекращается, и веса
* нейрона-победителя с номером j подстраиваются в соответствии
* с уравнением:*/
goto go;
}
else ///проводим сброс
{
G2[neiron_pobeditel] = -1;
goto restert;
}
/****************************
go:
for (int i = 0; i < 100; i++)
{
t[i, neiron_pobeditel] = t[i, neiron_pobeditel] * x[i];
}
ennd:;
}
private void button4_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void dataGridView2_Click(object sender, EventArgs e)
{
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Text == "")
{
button1.Enabled = false;
}
else
{
button1.Enabled = true;
}
}
private void button3_Click(object sender, EventArgs e)
{
for (int i = 0; i < 1000; i++)
{
for (int j = 0; j < 10; j++)
{
dataGridView2.Rows[i].Cells[j]
}
}
int min = 0;
int max = 10;
for (int k = 0; k < 10; k++)
{
int index = 0;
for (int i = min; i < max; i++)
{
for (int j = 0; j < 10; j++)
{
if (t[index, k] == 1)
{
dataGridView2.Rows[i].Cells[j]
}
else
{
dataGridView2.Rows[i].Cells[j]
}
index++;
}
}
min = min + 10;
max = max + 10;
}
}
}
}