public void updateWeight(int neuronWinner, Example ex) {
        //verificar a posição na matriz de vetores
        int line = neuronWinner/this.neuronsLine;
        int column = neuronWinner%this.neuronsColumn;
        System.out.println("Neurônio Vencedor: " + line + "," + column);
        System.out.println("Atualizando: ");
        //atualiza os pesos da vizinhança
        for (int i = line - this.radius; i <= line + this.radius && i 
                                                    < this.neuronsLine ; i++) {
            //linha não pode ser negativa
            if (i < 0) 
                i = 0;
            
            for (int j = column - this.radius; j <= column + this.radius
                    && j < this.neuronsColumn; j++) {
                //coluna não pode ser negativa
                if (j < 0) 
                    j = 0;
                //atualiza o peso
                this.updateNeuron(i, j, ex);
                
                //coluna não pode extrapolar máximo de colunas
                if (j == this.neuronsColumn - 1) {
                    //condição sai do for
                    j = column + this.radius;
                }
            }
            
            //linha não pode extrapolar a quantidade máxima de linhas
            if (i == this.neuronsLine - 1) {
                //condição de sai do for
                i = line + this.radius;
            }
        }
    }