public void Should_CreateLayersCorrectly(int[][] expected, string input, int width, int height) { _streamReader = StreamHelper.GetStream(input); var result = new Eight(width, height).ComputeLayers(_streamReader); Assert.Equal(expected, result); }
public void Eight() { var problem = new Eight(); var result = (ulong)problem.Solve(); result.Should().Be(23514624000); }
public void Should_ComputeAnswerCorrectly(string expected, string input, int width, int height) { _streamReader = StreamHelper.GetStream(input); var result = new Eight(width, height).Run(_streamReader); Assert.Equal(expected, result); }
private void ParseResult(string[] right) { for (int i = 0; i < right.Length; i++) { var str = right[i]; if (str.Length == One.Length && str.All(b => One.Contains(b))) { ResultArray[i] = 1; } if (str.Length == Four.Length && str.All(b => Four.Contains(b))) { ResultArray[i] = 4; } if (str.Length == Seven.Length && str.All(b => Seven.Contains(b))) { ResultArray[i] = 7; } if (str.Length == Eight.Length && str.All(b => Eight.Contains(b))) { ResultArray[i] = 8; } //Part 2 //6 parts - 0,6,9 if (str.Length == Zero.Length && str.All(b => Zero.Contains(b))) { ResultArray[i] = 0; } if (str.Length == Six.Length && str.All(b => Six.Contains(b))) { ResultArray[i] = 6; } if (str.Length == Nine.Length && str.All(b => Nine.Contains(b))) { ResultArray[i] = 9; } //5 parts - 2,3,5 if (str.Length == Two.Length && str.All(b => Two.Contains(b))) { ResultArray[i] = 2; } if (str.Length == Three.Length && str.All(b => Three.Contains(b))) { ResultArray[i] = 3; } if (str.Length == Five.Length && str.All(b => Five.Contains(b))) { ResultArray[i] = 5; } } if (ResultArray.Any(a => a < 0)) { throw new Exception(); } //Part 2 ResultNumber = Convert.ToInt32(ResultArray[0].ToString() + ResultArray[1].ToString() + ResultArray[2].ToString() + ResultArray[3].ToString()); }
public void Test_Eight() { var number = Eight.GetNumber(); Assert.AreEqual(1000, number.Count); Assert.AreEqual(7, number[0]); Assert.AreEqual(0, number[number.Count - 1]); Assert.AreEqual(5832, Eight.GetLargestProduct(4)); }
/// <summary> /// Use second set of persian characters in unicode ( '\u06F0', '\u06F1', ... , '\u06F9' ) /// </summary> public void UseSecondNumerics() { Zero.SetData('\u06F0'); One.SetData('\u06F1'); Two.SetData('\u06F2'); Three.SetData('\u06F3'); Four.SetData('\u06F4'); Five.SetData('\u06F5'); Six.SetData('\u06F6'); Seven.SetData('\u06F7'); Eight.SetData('\u06F8'); Nine.SetData('\u06F9'); }
/// <summary> /// Use first set of persian characters in unicode ( '\u0660', '\u0661', ... , '\u0669' ) /// </summary> public void UseFirstNumerics() { Zero.SetData('\u0660'); One.SetData('\u0661'); Two.SetData('\u0662'); Three.SetData('\u0663'); Four.SetData('\u0664'); Five.SetData('\u0665'); Six.SetData('\u0666'); Seven.SetData('\u0667'); Eight.SetData('\u0668'); Nine.SetData('\u0669'); }
public TryOutNumbers(Color color) { zero = new Zero(color); one = new One(color); two = new Two(color); three = new Three(color); four = new Four(color); five = new Five(color); six = new Six(color); seven = new Seven(color); eight = new Eight(color); nine = new Nine(color); }
internal static unsafe canvas_t *Can(IntPtr luaState) { var state = Lua.FromIntPtr(luaState); canvas_t *c = (canvas_t *)state.ToUserData(Lua.UpValueIndex(1)); if (c == null) { Console.WriteLine("ID-10T: CANVAS IS NULL\n"); Eight.Quit(); } return(c); }
public List <int> GetList(List <int> answer) { One?.GetList(answer); answer.Add(value); Two?.GetList(answer); Three?.GetList(answer); Four?.GetList(answer); Five?.GetList(answer); Six?.GetList(answer); Seven?.GetList(answer); Eight?.GetList(answer); Nine?.GetList(answer); O?.GetList(answer); return(answer); }
public static void Dispose() { GrassTexture.Dispose(); WaterTexture.Dispose(); ForestTexture.Dispose(); HouseTexture.Dispose(); MountainTexture.Dispose(); Building.Dispose(); Zero.Dispose(); One.Dispose(); Two.Dispose(); Three.Dispose(); Five.Dispose(); Six.Dispose(); Eight.Dispose(); Nine.Dispose(); Turbine.Dispose(); }
private void Parse(string[] left) { One = left.Where(a => a.Count() == 2).FirstOrDefault(); Four = left.Where(a => a.Count() == 4).FirstOrDefault(); Seven = left.Where(a => a.Count() == 3).FirstOrDefault(); Eight = "abcdefg"; //6 parts - 0,6,9 Six = left.Where(a => a.Count() == 6).Single(a => One.All(b => a.Contains(b)) == false); char rightUp = Eight.First(a => Six.Contains(a) == false); string leftUpAndMiddle = string.Concat(Four.Where(a => One.Contains(a) == false)); Nine = left.Where(a => a.Count() == 6).First(a => (a.All(b => Six.Contains(b)) == false) && leftUpAndMiddle.All(b => a.Contains(b))); Zero = left.Where(a => a.Count() == 6).First(a => (a.All(b => Nine.Contains(b)) == false) && (a.All(b => Six.Contains(b)) == false)); //5 parts - 2,3,5 Three = left.Where(a => a.Count() == 5).Single(a => One.All(b => a.Contains(b))); Two = left.Where(a => a.Count() == 5).Single(a => a.Contains(rightUp) && (a.All(b => Three.Contains(b)) == false)); Five = left.Where(a => a.Count() == 5).First(a => (a.All(b => Two.Contains(b)) == false) && (a.All(b => Three.Contains(b)) == false)); }
public static float[,] getControlPointsFor(int start) { switch (start) { case (-1): return(Null.getInstance().getControlPoints()); case 0: return(Zero.getInstance().getControlPoints()); case 1: return(One.getInstance().getControlPoints()); case 2: return(Two.getInstance().getControlPoints()); case 3: return(Three.getInstance().getControlPoints()); case 4: return(Four.getInstance().getControlPoints()); case 5: return(Five.getInstance().getControlPoints()); case 6: return(Six.getInstance().getControlPoints()); case 7: return(Seven.getInstance().getControlPoints()); case 8: return(Eight.getInstance().getControlPoints()); case 9: return(Nine.getInstance().getControlPoints()); default: throw new ArgumentException("Unsupported number requested"); } }
private void Go_Click(object sender, EventArgs e) { //1 Label label4 = new Label { AutoSize = true, Font = new System.Drawing.Font("Arial Narrow", 15.2F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204))), Location = new System.Drawing.Point(12, 50), Name = "label3", Size = new System.Drawing.Size(108, 22), TabIndex = 0, Text = "Результат:" }; this.Controls.Add(label4); List <double> list = UtilsW.StringToList <double>(input.Text, ' '); Eight logic = new Eight(list); List <double> ll = logic.ListReverse(); label2.Text = UtilsW.ListtoString <double>(ll, ' '); }
void ReleaseDesignerOutlets() { if (Clear != null) { Clear.Dispose(); Clear = null; } if (Decimal != null) { Decimal.Dispose(); Decimal = null; } if (Divise != null) { Divise.Dispose(); Divise = null; } if (Eight != null) { Eight.Dispose(); Eight = null; } if (Equals != null) { Equals.Dispose(); Equals = null; } if (Five != null) { Five.Dispose(); Five = null; } if (Four != null) { Four.Dispose(); Four = null; } if (Minus != null) { Minus.Dispose(); Minus = null; } if (Multiply != null) { Multiply.Dispose(); Multiply = null; } if (Nine != null) { Nine.Dispose(); Nine = null; } if (One != null) { One.Dispose(); One = null; } if (Plus != null) { Plus.Dispose(); Plus = null; } if (ResultField != null) { ResultField.Dispose(); ResultField = null; } if (Seven != null) { Seven.Dispose(); Seven = null; } if (Six != null) { Six.Dispose(); Six = null; } if (Three != null) { Three.Dispose(); Three = null; } if (ToggleSign != null) { ToggleSign.Dispose(); ToggleSign = null; } if (Two != null) { Two.Dispose(); Two = null; } if (Zero != null) { Zero.Dispose(); Zero = null; } }
/*Functionality Added to make the calculator work with Keyboard NumberPad * When the correct Key is detected it will fire off the corresponding button press*/ private void Window_KeyDownPreview(object sender, KeyEventArgs e) { switch (e.Key) { case Key.NumPad0: Zero.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.NumPad1: One.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.NumPad2: Two.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.NumPad3: Three.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.NumPad4: Four.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.NumPad5: Five.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.NumPad6: Six.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.NumPad7: Seven.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.NumPad8: Eight.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.NumPad9: Nine.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.Add: Plus.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.Subtract: Minus.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.Multiply: Multiply.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.Divide: Divide.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; case Key.Enter: Equals.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); break; } }
//OFF /************************************************************* * Obsługa przycisków *************************************************************/ private void Window_KeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.D1 || e.Key == Key.NumPad1) { One.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.D2 || e.Key == Key.NumPad2) { Two.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.D3 || e.Key == Key.NumPad3) { Three.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.D4 || e.Key == Key.NumPad4) { Four.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.D5 || e.Key == Key.NumPad5) { Five.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.D6 || e.Key == Key.NumPad6) { Six.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.D7 || e.Key == Key.NumPad7) { Seven.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.D8 || e.Key == Key.NumPad8) { if (Keyboard.IsKeyDown(Key.LeftShift)) { Star.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else { Eight.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } } else if (e.Key == Key.D9 || e.Key == Key.NumPad9) { Nine.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.D0 || e.Key == Key.NumPad0) { Zero.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } /**********************************************************/ /*else if (e.Key == Key.Enter) * { * Equals.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); * }*/ else if (e.Key == Key.OemComma || e.Key == Key.OemPeriod || e.Key == Key.Decimal) { Dot.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.OemMinus || e.Key == Key.Subtract) { Minus.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.OemPlus || e.Key == Key.Add) { Plus.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.Delete) { AC.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.Back) { C.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.Divide || e.Key == Key.OemBackslash || e.Key == Key.OemQuestion || e.Key == Key.Oem5) { Slash.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.Multiply) { Star.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.P) { MP.RaiseEvent(new RoutedEventArgs(Button.ClickEvent)); } else if (e.Key == Key.Escape) { Application.Current.Shutdown(); } Console.WriteLine(e.Key.ToString()); }