public int getValorMatriz(Matriz_Ortogonal matriz) { int valor = 0; for (int i = 0; i < matriz.dimension_x; i++) { for (int j = 0; j < matriz.dimension_y; j++) { Dato numero = matriz.getValorNodo(i, j); valor = valor + numero.dato; } } return(valor); }
public void setValor(int fila, int columna, Dato valor) { Nodo temp = raiz; for (int i = 0; i < fila; i++) { temp = temp.abajo; } for (int i = 0; i < columna; i++) { temp = temp.derecha; } temp.valor = valor; }
public void deserealizeJSON(string strJson) { var json = JsonConvert.DeserializeObject <Json>(strJson); //Matrices de la Pila foreach (var item in json.archivo.pila.matrices.matriz) { int dimension = (int.Parse(item.size_x) * int.Parse(item.size_y)); Matriz_Ortogonal nuevaMatriz = new Matriz_Ortogonal(dimension); nuevaMatriz.dimension_x = int.Parse(item.size_x); nuevaMatriz.dimension_y = int.Parse(item.size_y); nuevaMatriz.CrearMatriz(dimension); foreach (var n in item.valores.valor) { Dato nuevodato = new Dato(int.Parse(n.dato)); nuevaMatriz.setValor(int.Parse(n.pos_y), int.Parse(n.pos_x), nuevodato); } //Llenar de 0 los espacios vacios for (int i = 0; i <= (int.Parse(item.size_x)); i++) { for (int j = 0; j < (int.Parse(item.size_y)); j++) { if (nuevaMatriz.getValorNodo(i, j) == null) { Dato cero = new Dato(0); nuevaMatriz.setValor(i, j, cero); } } } pila.Push(nuevaMatriz); } //Matrices de la Cola foreach (var item in json.archivo.cola.matrices.matriz) { int dimension2 = (int.Parse(item.size_x) * int.Parse(item.size_y)); Matriz_Ortogonal nuevaMatriz2 = new Matriz_Ortogonal(dimension2); nuevaMatriz2.dimension_x = int.Parse(item.size_x); nuevaMatriz2.dimension_y = int.Parse(item.size_y); nuevaMatriz2.CrearMatriz(dimension2); foreach (var i in item.valores.valor) { Dato nuevodato2 = new Dato(int.Parse(i.dato)); nuevaMatriz2.setValor(int.Parse(i.pos_y), int.Parse(i.pos_x), nuevodato2); } //Llenar de 0 los espacios vacios for (int i = 0; i <= (int.Parse(item.size_x)); i++) { for (int j = 0; j < (int.Parse(item.size_y)); j++) { if (nuevaMatriz2.getValorNodo(i, j) == null) { Dato cero = new Dato(0); nuevaMatriz2.setValor(i, j, cero); } } } cola.encolar(nuevaMatriz2); } }
public Nodo(Dato valor) { this.valor = valor; }