//////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> Client received 2. </summary> /// /// <remarks> Jakob, 15/09/2018. </remarks> /// /// <param name="sender2"> The second sender. </param> /// <param name="data2"> The second data. </param> //////////////////////////////////////////////////////////////////////////////////////////////////// void client_Received2(Client2 sender2, byte[] data2) { equation = new Values2(Convert.ToInt32(txtFirstNumber.Text), Convert.ToInt32(txtSecondNumber.Text), cboxOperator.Text, Convert.ToInt32(txtAnswer.Text)); binaryTree2(); Invoke((MethodInvoker) delegate { if (txtAnswer.Text == Encoding.Default.GetString(data2)) { MessageBox.Show("You were correct"); btnSend.Enabled = true; } else if (txtAnswer.Text != Encoding.Default.GetString(data2)) { int num; bool answer = int.TryParse(txtAnswer.Text, out num); valueNode.AddValuesNode(new LinkListNode(num)); LinkedListNodes(); MessageBox.Show("You were incorrect"); } }); btnSend.Enabled = true; txtFirstNumber.Text = ""; cboxOperator.Text = ""; txtSecondNumber.Text = ""; txtAnswer.Text = ""; }
//////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> Adds answerVal2. </summary> /// /// <remarks> Jakob, 15/09/2018. </remarks> /// /// <param name="answerVal2"> The answer Value 2 to add. </param> //////////////////////////////////////////////////////////////////////////////////////////////////// public void Add(Values2 answerVal2) { if (top == null) { top = new NetworkBinaryTreeNode(answerVal2); return; } NetworkBinaryTreeNode currentNode = top; bool inserted = false; do { if (answerVal2.Answer < currentNode.getMath.Answer) { if (currentNode.left == null) { currentNode.left = new NetworkBinaryTreeNode(answerVal2); inserted = true; } else { currentNode = currentNode.left; } if (answerVal2.Answer >= currentNode.getMath.Answer) { if (currentNode.right == null) { currentNode.right = new NetworkBinaryTreeNode(answerVal2); inserted = true; } else { currentNode = currentNode.right; } } } } while (!inserted); }
//////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> Constructor. </summary> /// /// <remarks> Jakob, 15/09/2018. </remarks> /// /// <param name="answerVal"> The answer value. </param> //////////////////////////////////////////////////////////////////////////////////////////////////// public NetworkBinaryTree(Values2 answerVal) { top = new NetworkBinaryTreeNode(answerVal); }
//////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> Constructor. </summary> /// /// <remarks> Jakob, 15/09/2018. </remarks> /// /// <param name="val"> The value. </param> //////////////////////////////////////////////////////////////////////////////////////////////////// public NetworkBinaryTreeNode(Values2 val) { getMath = val; left = null; right = null; }