public JolkaOgraniczenie(JolkaZmienna h, JolkaZmienna v, int r, int c, bool vert) { horizontal = h; vertical = v; row_shift = r; col_shift = c; this.vert = vert; //Console.WriteLine("Horyzontalna:"+h.row_start + " " + h.col_start + " " + col_shift); // Console.WriteLine("Wertykalna: "+v.row_start + " " + v.col_start + " " + row_shift); }
public void tworzZmienne() { for (int i = 0; i < cross[0].Length; i++) { int size = 0; for (int j = 0; j < cross.Count; j++) { if (cross[j][i].Equals('_')) { size++; } if (cross[j][i].Equals('#') || j == cross.Count - 1) { if (size > 1) { JolkaZmienna zm = new JolkaZmienna(); for (int z = 0; z < words.Count; z++) { if (words[z].Length == size) { zm.values.Add(words[z]); zm.possiblevalues.Add(words[z]); } } zm.col_start = i; zm.vertical = true; if (cross[j][i].Equals('#')) { zm.row_start = j - size; } else { zm.row_start = j + 1 - size; } zm.size = size; zmienneV.Add(zm); zmienne.Add(zm); notusedZ.Add(zm); } size = 0; } } } for (int i = 0; i < cross.Count; i++) { int size = 0; for (int j = 0; j < cross[0].Length; j++) { if (cross[i][j].Equals('_')) { size++; } if (cross[i][j].Equals('#') || j == cross[0].Length - 1) { if (size > 1) { JolkaZmienna zm = new JolkaZmienna(); foreach (String w in words) { if (w.Length == size) { zm.values.Add(w); zm.possiblevalues.Add(w); } } zm.row_start = i; zm.vertical = false; //Console.WriteLine("Ile danych: " + zm.values.Count); if (cross[i][j].Equals('#')) { zm.col_start = j - size; } else { zm.col_start = j + 1 - size; } zm.size = size; zmienneH.Add(zm); zmienne.Add(zm); notusedZ.Add(zm); } size = 0; } } } }