private void BtnProcessarSoR_Click(object sender, RoutedEventArgs e) { if (IsSelecionadoSOR()) { Set conjuntoA = GetConjuntoByID(comboBox1S.SelectedValue.ToString()); Set conjuntoB = GetConjuntoByID(comboBox2S.SelectedValue.ToString()); Set conjuntoC = GetConjuntoByID(comboBox3S.SelectedValue.ToString()); List <ElementWithValue> elementsA = new List <ElementWithValue>(); foreach (Element ele in conjuntoA.ListElements) { elementsA.Add(new ElementWithValue(ele)); } List <ElementWithValue> elementsB = new List <ElementWithValue>(); foreach (Element ele in conjuntoB.ListElements) { elementsB.Add(new ElementWithValue(ele)); } List <ElementWithValue> elementsC = new List <ElementWithValue>(); foreach (Element ele in conjuntoC.ListElements) { elementsC.Add(new ElementWithValue(ele)); } Relationship relationAB = new Relationship { Domain = elementsA, Codomain = elementsB }; SetPair ab = new SetPair(); string firstOperation = comboBox1O.SelectedValue.ToString(); switch (firstOperation) { case "<": ab = relationAB.LessThan(); break; case ">": ab = relationAB.GreaterThan(); break; case "=": ab = relationAB.EqualsValues(); break; case "x²": ab = relationAB.EqualsValues(); break; case "²√": ab = relationAB.EqualsValues(); break; } Relationship relationBC = new Relationship { Domain = elementsB, Codomain = elementsC }; SetPair bc = new SetPair(); string secondOperation = comboBox2O.SelectedValue.ToString(); switch (secondOperation) { case "<": bc = relationBC.LessThan(); break; case ">": bc = relationBC.GreaterThan(); break; case "=": bc = relationBC.EqualsValues(); break; case "x²": bc = relationBC.EqualsValues(); break; case "²√": bc = relationBC.EqualsValues(); break; } relationAB.Name = $"{conjuntoA.Name} X {conjuntoB.Name} X {conjuntoC.Name}"; SetPair result = relationAB.ComposedRelationship(ab, bc); Classification classification = new Classification(result, elementsA, elementsC); txtSaida.Text = $"{relationAB.Name} = {result.ListPairToString()} \n" + $"{classification.AllClassifications()}"; } }