private void button2_Click(object sender, EventArgs e) { var text = richTextBox2.Text.Replace(" ", null); try { var inputLemexes = _logicLexemeParser.Parse(text); var exp = new PostfixExpression <bool>(inputLemexes); var result = exp.Calculate(); var value = result.Value; textBox2.Text = value ? "1" : "0"; } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void button3_Click(object sender, EventArgs e) { var text = ReplaceConsts(richTextBox3.Text); try { var inputLexemes = _matrixLexemeParser.Parse(text); var exp = new PostfixExpression <Matrix>(inputLexemes); var result = exp.Calculate(); var value = result.Value; textBox3.Text = value.ToString(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void ButtonCalculateMath_Click(object sender, EventArgs e) { textBoxMathOutput.Clear(); var text = ReplaceConsts(richTextBoxMathInput.Text.Replace(" ", null)); try { if (checkBoxUseParams.Checked && richTextBoxMathInput.Lines.Length > 1) { foreach (var line in richTextBoxMathInput.Lines.Skip(1)) { text = ReplaceConsts(richTextBoxMathInput.Lines[0].Replace(" ", null)); var parameters = line.Replace(" ", null).Split(';', StringSplitOptions.RemoveEmptyEntries); var pairs = parameters.Select(param => { var keyValueArr = param.Split('='); return(new KeyValuePair <string, string>(keyValueArr[0], keyValueArr[1])); }); foreach (var pair in pairs) { text = text.Replace(pair.Key, pair.Value); } var inputLemexes = _mathLexemeParser.Parse(text); var exp = new PostfixExpression <double>(inputLemexes); var result = exp.Calculate(); var value = result.Value; textBoxMathOutput.Text += value.ToString(CultureInfo.InvariantCulture) + Environment.NewLine; } } else { var inputLemexes = _mathLexemeParser.Parse(text); var exp = new PostfixExpression <double>(inputLemexes); var result = exp.Calculate(); var value = result.Value; textBoxMathOutput.Text = value.ToString(CultureInfo.InvariantCulture); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }