Está en la página 1de 5

C# OPERACIONES ENTRE CONJUNTOS Este es el cdigo para c# de un programa para realizar operaciones entre conjuntos class IntegerSet { #region

"atributos" private string conjuntoA; private string conjuntoB; private string conjuntoR; #endregion #region "propiedades" public string ConjuntoA { get { return conjuntoA; } set { conjuntoA = value; } } public string ConjuntoB { get { return conjuntoB; } set { conjuntoB = value; } } public string ConjuntoR { get { return conjuntoR; } set { conjuntoR = value; } } #endregion #region "constructor" public IntegerSet() { ConjuntoA = " "; ConjuntoB = " "; ConjuntoR = " "; } #endregion #region "metodos" public void Union() { ConjuntoR = ""; Interseccion(); string s1 = ConjuntoR; DiferenciaSimetrica(); string s2 = ConjuntoR; ConjuntoR = s1 + " " + s2 ; } public void Interseccion() { ConjuntoR = ""; string A = ""; string B = ""; for (int a = 0; a < ConjuntoA.Length; a++) { if (ConjuntoA[a] != ' ') {

A += ConjuntoA[a]; } else { for (int b = 0; b < ConjuntoB.Length; b++) { if (ConjuntoB[b] != ' ') { B += ConjuntoB[b]; } else { if (A == B) { ConjuntoR += A + " "; } B = ""; } } A = ""; } } } public void DiferenciaAB() { ConjuntoR = ""; string A = ""; for (int a = 0; a < ConjuntoA.Length; a++) { if (ConjuntoA[a] != ' ') { A += ConjuntoA[a]; } else { if (ConjuntoB.IndexOf(A) == -1) { ConjuntoR += A + " "; } A = ""; } } } public void DiferenciaBA() { ConjuntoR = ""; string B = ""; for (int b = 0; b < ConjuntoB.Length; b++) { if (ConjuntoB[b] != ' ') { B += ConjuntoB[b]; } else { if (ConjuntoA.IndexOf(B) == -1) { ConjuntoR += B + " "; } B = ""; } } } public void DiferenciaSimetrica()

{ ConjuntoR = ""; DiferenciaAB(); string s2 = ConjuntoR; DiferenciaBA(); string s3 = ConjuntoR; ConjuntoR = s2 + " " + s3; } #endregion } ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------IntegerSet objeto = new IntegerSet(); private void button1_Click(object sender, EventArgs e) { objeto.ConjuntoA = textBox1.Text + " "; objeto.ConjuntoB = textBox2.Text + " "; if (radioButton1.Checked == true) { objeto.Union(); } if (radioButton2.Checked == true) { objeto.Interseccion(); } if (radioButton3.Checked == true) { objeto.DiferenciaAB(); } if (radioButton4.Checked == true) { objeto.DiferenciaBA(); } if (radioButton5.Checked == true) { objeto.DiferenciaSimetrica(); } textBox3.Text = objeto.ConjuntoR; } private void button1_MouseMove(object sender, MouseEventArgs e) { } private void radioButton1_MouseMove(object sender, MouseEventArgs e) { toolTip1.SetToolTip(radioButton1, "Union"); } private void radioButton2_MouseMove(object sender, MouseEventArgs e) { toolTip1.SetToolTip(radioButton2, "Interseccion"); } private void radioButton3_MouseMove(object sender, MouseEventArgs e) { toolTip1.SetToolTip(radioButton3, "Diferencia A B"); } private void radioButton4_MouseMove(object sender, MouseEventArgs e) {toolTip1.SetToolTip(radioButton4, "Diferencia B A"); } private void radioButton5_MouseMove(object sender, MouseEventArgs e) { toolTip1.SetToolTip(radioButton5, "Diferencia Cimetrica"); }

} } Preguntas de Control 1. Escriba creaciones de arreglos para: a) un arreglo que almacena 15 exmenes de grado (con valores enteros) b) un arreglo que almacena 100 precios de productos (que incluyen fracciones de $) c) un arreglo que almacena 50 respuestas de verdadero o falso a) int[] examenes = new int[15]; b) decimal[] precios = new decimal[100]; c) bool[] respuestas = new bool[50]; 2. Escriba el encabezamiento de un mtodo que recibe como argumento una variable de tipo cadena y retorna un valor true si la cadena termina en s y false si no es as: private bool Cadena(string cadena) { int i = cadena.Length - 1; if (cadena[i] == 'S') { return true; } else { return false; } }

3. Escriba la sentencia de instanciacin de un objeto denominado myChicken referido a la clase Chicken la cual posee un constructor que recibe un argumento de tipo entero? Chicken myChicken = new Chicken(0);

4. Determine si cada una de las sentencias que sigue es verdadero o falsa en caso de ser falsa explicar por qu? a) las estructuras pueden tener miembros de diferentes tipos. b) una estructura puede ser declarada en el mtodo que se la utiliza. c) los miembros de una estructura deben ser solo variables pero estas pueden ser de diferentes tipos de datos a) verdadero b) falso c) falso & verdadero Falso porque: los miembros de una estructura pueden ser variables, mtodos, constructor igual que una clase Verdadero porque: las variables de las estructuras pueden ser de distintos tipos

5. Dada la siguiente estructura plantee las sentencias necesarias para asignar la materia PROGRAMACION 1" como primer elemento del arreglo materias struct Emp { public byte edad; . . public string[] materias }

Emp objeto = new Emp(); objeto.materias[0] = "PROGRAMACION 1";

También podría gustarte