Exemple #1
0
 // Infix -> Postfix átalakító gomb klikk eseménykezelője.
 private void converToPostfixBtn_Click(object sender, EventArgs e)
 {
     try
     {
         // Az infix kifejezést megpróbáljuk PostFix-szé alakítani.
         var formula = PostFixUtil.TransformToPostfix(infixTextBox.Text);
         // Kitesszük az eredményt a felületre. Ne feledjük, hogy a ToString ilyenkor a PostFix kifejezést tartalmazza.
         postFixTextBox.Text = formula.ToString();
     }
     catch (InvalidOperationException ex)
     {
         // Ismert hiba történt, amit mi dobtunk el a kódból.
         MessageBox.Show($"A következő hiba történt a feldolgozás során: {ex.Message}", "Hiba", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     catch (Exception)
     {
         // Ismeretlen hiba történt.
         MessageBox.Show("Ismeretlen hiba történt a feldolgozás során!", "Hiba", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Exemple #2
0
        // A műveleti sorrendet megkereső eseménykezelő metódus.
        private void searchBtn_Click(object sender, EventArgs e)
        {
            int expectedResult;

            // Először ellenőrizzük, hogy a megadott elvárt eredmény egész szám-e, ha nem akkor hibát adunk.
            if (!int.TryParse(expectedResultTextBox.Text, out expectedResult))
            {
                MessageBox.Show("Az elvárt eredmény nem egész szám!");
                return;
            }

            // Meghívjuk a kereső metódust, ha null-t ad vissza, akkor ezekből a számokból és a műveletekből
            // nem lehet előállítani a megadott számot. Ha nem, akkor a kifejezést kiírjuk a felhasználói felületre.
            var result = PostFixUtil.SearchOrder(numberTextBox.Text, operatorTextBox.Text, expectedResult);

            if (result == null)
            {
                searchResultTextBox.Text = "Nincs helyes megoldás!";
            }
            else
            {
                searchResultTextBox.Text = result.ToString();
            }
        }