Autor
|
Tema: ayuda a desarrollar un ejercicio (Leído 9,321 veces)
|
jugran28
Desconectado
Mensajes: 14
|
hola amigos haber si alguien me da algun alcanace para desaarollar estos dos programitas utilizando meotodos 1.- desarrollar un programa java o c# que me permita almacenar dos conjuntos a y b luego en un conjunto c hallar la union
2--desarrollar un programa java o c# que me permita almacenar dos conjuntos a y b luego en un conjunto c hallar la interseccion
espero sus respuesta
|
|
|
En línea
|
|
|
|
Crack_X
Anti-War
Ex-Staff
Desconectado
Mensajes: 2.322
Peace & Love
|
Que tienes hasta ahora?
|
|
|
En línea
|
|
|
|
jugran28
Desconectado
Mensajes: 14
|
buenas amigos haber si alguien me puede ayudar adesarrolar este ejercicios me piden que almacen dos aray en un conjunto ay b luego en c me saklga el resultado de union e interseccion : por decir ingreso con el teclado A={2,3,4,6,9} y en B={3,5,6,1,8} y el resultado deberia salirme Union C= {3,6}y intersccion C={1,2,3,4,5,6,8,9} pues hice el codigo no me da lkos resultado haber si alguien me ayuda si por favor el dofigo esta echo en java saludos // programa conjuntos
package conjun; import java.io.*; public class claseconjunto { public static void main(String[] args)throws IOException { int A[] = new int[5]; int B[] = new int[5]; int C[] = new int[5]; for(int i=0; i<5; i++) { System.out.println("Ingrese Valor en A["+i+"] = "); BufferedReader dato1 = new BufferedReader(new InputStreamReader(System.in)); int X = Integer.valueOf(dato1.readLine().trim()).intValue(); A = X; } for(int i=0; i<5; i++) { System.out.println("Ingrese Valor en B["+i+"] = "); BufferedReader dato2 = new BufferedReader(new InputStreamReader(System.in)); int Y = Integer.valueOf(dato2.readLine().trim()).intValue(); B = Y; } for(int i=0; i<5; i++) { C=A=B; System.out.println("C["+i+"] = A["+i+"]union A["+i+"] = "+C); } } }
|
|
|
En línea
|
|
|
|
Casidiablo
|
1. Utiliza las etiquetas de codigo para marcar las fuentes de tu programa ( ). 2. Practica mas... tu logica no está muy bien que digamos. 3. Funciona!!! // programa conjuntos import java.io.*; public class claseconjunto { public static void main(String[] args)throws IOException { int A[] = new int[5]; int B[] = new int[5]; int C[] = new int[600]; for(int i=0; i<5; i++) { System.out.println("Ingrese Valor en A["+i+"] = "); BufferedReader dato1 = new BufferedReader(new InputStreamReader(System.in)); int X = Integer.valueOf(dato1.readLine().trim()).intValue(); A[i] = X; } for(int i=0; i<5; i++) { System.out.println("Ingrese Valor en B["+i+"] = "); BufferedReader dato2 = new BufferedReader(new InputStreamReader(System.in)); int Y = Integer.valueOf(dato2.readLine().trim()).intValue(); B[i] = Y; } for(int i=0, cont=0; i<5; i++) for(int j=0; j<5; j++) if(A[i]==B[j]) C[cont++]=A[i]; System.out.println("La union de A y B es:"); for(int i=0; i<10; i++) System.out.print(C[i]!=0 ? C[i] : ""); for(int i=0; i<5; i++) C[i]=A[i]; for(int i=0, cont=5; i<5; i++) { C[cont++]=B[i]; for(int j=0; j<5; j++) if(C[j]==B[i])--cont; } System.out.println("La interseccion de A y B es:"); for(int i=0; i<10; i++) System.out.print(C[i]!=0 ? C[i] : ""); } } Saludos!!! P.d. Este es de los programas más feos que he hecho, pero no tenia tiempo de hacer algo "profesional", no te quejes. Se puede mejorar al 100%.
|
|
|
En línea
|
|
|
|
jugran28
Desconectado
Mensajes: 14
|
muchisimas gracias amigo la verdad anduve buscando este ejercicio por una semana de verdad estoy muy agardecido por favor si me puede dar algun coreo de mesenger para hacerles alguna consulta yaque recien estoy levando cursos de programacio POO saludos juan grandes felicitaciones amigo
|
|
|
En línea
|
|
|
|
jugran28
Desconectado
Mensajes: 14
|
amigo por favor me podrias decir como hacer la logica pero utilizadon metodos si el program corre pero haciendo con metodo es un embrollo //metodos conjuntos package proconjuntos; import java.io.*; public class calseconjun { static int union (int A[], int B[], int C[]){ int A[]= new int[5]; int B[]= new int[5]; int C[]= new int[5]; for(int i=0, cont=0; i<5; i++) for(int j=0; j<5; j++) if(A==B[j]) C[cont++]=A;
return C; } static int interseccion (int A[], int B[], int C[]){ int A[]= new int[5]; int B[]= new int[5]; int C[]= new int[5]; for(int i=0; i<5; i++) C=A; for(int i=0, cont=5; i<5; i++) C[cont++]=B; for(int j=0; j<5; j++) if(C[j]==B)--cont; return C; } public static void main(String[] args)throws IOException { System.out.println("Ingrese la Opcion "); System.out.println("1. Calculo Union "); System.out.println("2. Calculo Interseccion"); System.out.println("Ingrese la Opción = "); BufferedReader dato1 = new BufferedReader(new InputStreamReader(System.in)); int OP = Integer.valueOf(dato1.readLine().trim()).intValue(); switch(OP) { case 1: { for(int i=0;i<5;i++) System.out.println("Ingrese el valor en A["+i+"] = "); BufferedReader dato2 = new BufferedReader(new InputStreamReader(System.in)); double X = Double.valueOf(dato2.readLine().trim()).doubleValue(); A =X; System.out.println("La union de A y B es:"); for(int i=0; i<10; i++) System.out.print(C!=0 ? C : "");
break; } case 2: { for(int i=0;i<5;i++) System.out.println("Ingrese el valor en B["+i+"] = "); BufferedReader dato2 = new BufferedReader(new InputStreamReader(System.in)); double Y = Double.valueOf(dato2.readLine().trim()).doubleValue(); A =Y; System.out.println("La interseccion de A y B es:"); for(int i=0; i<10; i++) System.out.print(C!=0 ? C : "");
} default:{ System.out.println("Valor no Valido"); break; } } } }
|
|
|
En línea
|
|
|
|
Casidiablo
|
Haber "amigo"... Lo primero: estudia más, lee más... veo que tienes aun muuuuchas dudas en cuanto a la sintaxis de Java, la "idea" de la POO, la lógica de programación... igual, todos empezamos así. Lo otro... cuando uno va publicar una respuesta o un nuevo post, existe un pequeño panel con un monton de imagenes, entre ellas con un numeral (#), que indica que lo que se ponga entre esas etiquetas es código... en ese orden de ideas, DEBES poner al código fuente de tus programas esa etiqueta... es fácil... te pido el favor que lo hagas, te lo pido de rodillas si quieres. Ahora el código: import java.io.*;
public class claseconjun { static void union(int A[], int B[]) { int C[] = new int[600]; for (int i = 0, cont = 0; i < 5; i++) for (int j = 0; j < 5; j++) if (A[i] == B[j]) C[cont++] = A[i]; System.out.println("La union de A y B es:"); for (int i = 0; i < 10; i++) System.out.print(C[i] != 0 ? C[i] + "" : "");
}
static void interseccion(int A[], int B[]) { int C[] = new int[600]; for (int i = 0; i < 5; i++) C[i] = A[i]; for (int i = 0, cont = 5; i < 5; i++) { C[cont++] = B[i]; for (int j = 0; j < 5; j++) if (C[j] == B[i]) --cont; } System.out.println("La interseccion de A y B es:"); for (int i = 0; i < 10; i++) System.out.print(C[i] != 0 ? C[i] + "" : "");
}
public static void main(String[] args) throws IOException { int A[] = new int[5]; int B[] = new int[5]; System.out.println("Ingrese la Opcion "); System.out.println("1. Calculo Union "); System.out.println("2. Calculo Interseccion");
System.out.println("Ingrese la Opción = "); BufferedReader dato1 = new BufferedReader(new InputStreamReader( System.in)); int OP = Integer.valueOf(dato1.readLine().trim()).intValue(); switch (OP) { case 1: { for (int i = 0; i < 5; i++) { System.out.println("Ingrese Valor en A[" + i + "] = "); dato1 = new BufferedReader(new InputStreamReader(System.in)); int X = Integer.valueOf(dato1.readLine().trim()).intValue(); A[i] = X; } for (int i = 0; i < 5; i++) { System.out.println("Ingrese Valor en B[" + i + "] = "); BufferedReader dato2 = new BufferedReader( new InputStreamReader(System.in)); int Y = Integer.valueOf(dato2.readLine().trim()).intValue(); B[i] = Y; }
union(A, B);
break; } case 2: for (int i = 0; i < 5; i++) { System.out.println("Ingrese Valor en A[" + i + "] = "); dato1 = new BufferedReader(new InputStreamReader(System.in)); int X = Integer.valueOf(dato1.readLine().trim()).intValue(); A[i] = X; } for (int i = 0; i < 5; i++) { System.out.println("Ingrese Valor en B[" + i + "] = "); BufferedReader dato2 = new BufferedReader( new InputStreamReader(System.in)); int Y = Integer.valueOf(dato2.readLine().trim()).intValue(); B[i] = Y; } interseccion(A, B); break; default: { System.out.println("Valor no Valido"); break; } } } } Saludos!!!
|
|
|
En línea
|
|
|
|
marioly
Desconectado
Mensajes: 239
http://marioly.hackerss.com
|
Tantos for no te marean Casidiablo , demasiado code no ? y ademas duplicas, que en java no es muy bueno.. (como al leer A y B 2 veces) y tiene cosas como: int C = int[600] ; Integer.valueOf(dato1.readLine().trim()).intValue(); Y en union muestra valores duplicados, que no creo que sea asi (por hacer A == B , pero no comprobar si ya existe en C)
Podria hacer:
import java.io.*; import java.util.ArrayList; import java.util.Collections; import java.util.Iterator;
public class claseconjun { static ArrayList listA = new ArrayList(); static ArrayList listB = new ArrayList(); static ArrayList listC = new ArrayList(); static void union() { listA.trimToSize(); listB.trimToSize(); for( int i = 0; i < listA.size(); i++ ) if( listB.contains(listA.get(i)) && !listC.contains(listA.get(i)) ) listC.add(listA.get(i)); System.out.println("La union de A y B es:"); Iterator it = listC.iterator(); while( it.hasNext() ) System.out.print(it.next() + " "); }
static void interseccion() { listA.addAll(listB); Collections.sort(listA); System.out.println("La interseccion de A y B es:"); Iterator it = listA.iterator(); while( it.hasNext() ) System.out.print(it.next() + " "); }
public static void main(String[] args) throws IOException {
System.out.println("Ingrese la Opcion "); System.out.println("1. Calculo Union "); System.out.println("2. Calculo Interseccion");
System.out.println("Ingrese la Opción = "); BufferedReader dato1 = new BufferedReader(new InputStreamReader( System.in)); int OP = Integer.parseInt(dato1.readLine().trim()); for (int i = 0; i < 5; i++) { System.out.println("Ingrese Valor en A[" + i + "] = "); dato1 = new BufferedReader(new InputStreamReader(System.in)); Integer X = new Integer(Integer.parseInt(dato1.readLine().trim())); listA.add(i, X); } for (int i = 0; i < 5; i++) { System.out.println("Ingrese Valor en B[" + i + "] = "); BufferedReader dato2 = new BufferedReader( new InputStreamReader(System.in)); Integer Y = new Integer(Integer.parseInt(dato2.readLine().trim())); listB.add(i, Y); } switch (OP) { case 1: union(); break; case 2: interseccion(); break; default: System.out.println("Valor no Valido"); break; } } }
Java tiene una amplia coleccion de clases utiles, usala! P.d. Este es de los programas más feos que he hecho, pero no tenia tiempo de hacer algo "profesional", no te quejes. Se puede mejorar al 100%.
No creo que sea cuestion de tiempo , de hecho ami no me llevo mucho hacer el mio PD: Casidiablo , deberias tratar de tener un poco mas de empatia por los usuarios ellos no te obligan a responder ..
|
|
|
En línea
|
|
|
|
Casidiablo
|
HOAAAA!!! marioly... pues 1. Con respecto a lo de los for... ummm, pues la verdad odio tener que poner tantos, de verdad, me encanta tener un programa lo más corto y limpio posible, 2. "Java tiene una amplia colección de clases útiles, usala!", esta me hace gracia... NO soy un gurú en Java, pero conozco bastante acerca de los paquetes y clases "útiles" en Java. 3. "No creo que sea cuestion de tiempo , de hecho ami no me llevo mucho hacer el mio ", cuando hablo de cuestión de tiempo no me refiero a 3 - 5 minutos, estoy hablando de 50 segundos que tienes entre acabar una tarea en el trabajo, y que tu jefe llegue a madrearte. 4. "deberias tratar de tener un poco mas de empatia por los usuarios undecided ellos no te obligan a responder ..", no, si eso lo se de sobra, solo que la primera vez se dice de buena manera (en la primera respuesta), luego ya significa que te toman del pelo. Está bien ser nuevo, pero si ya se ha avisado una vez, porqué seguirse saltando las normas. 5. Tu código está mal, la intersección NO hace lo que debe hacer. 6. Ahora sí, con la mente relajada, y 6 minutos más de tiempo, aquí está el código FUNCIONAL, bonito, profesional... bueno, aún se puede mejorar, de eso no me queda la menor duda: import java.io.*; import java.util.*; import javax.swing.*; public class claseconjunto { static ArrayList listA = new ArrayList(); static ArrayList listB = new ArrayList(); static ArrayList listC = new ArrayList(); static void imprimirC(String x) { String resultado="La "+x+" de A y B es:\n"; Iterator it = listC.iterator(); while( it.hasNext() ) resultado+=it.next() + " "; JOptionPane.showMessageDialog(null,resultado); } static void union() { listA.trimToSize(); listB.trimToSize(); for( int i = 0; i < listA.size(); i++ ) if( listB.contains(listA.get(i)) && !listC.contains(listA.get(i)) ) listC.add(listA.get(i)); imprimirC("union"); } static void interseccion() { listA.addAll(listB); Collections.sort(listA); Iterator it = listA.iterator(); Object temp = null, sig = null; while( it.hasNext() ) { sig=it.next(); if(sig!=temp) { temp=sig; listC.add(sig); } } imprimirC("interseccion"); } public static void main(String[] args) throws IOException { int OP = Integer.parseInt(JOptionPane.showInputDialog(null,"1. Calculo Union\n2. Calculo Interseccion\n\nDigita la opcion")); for (int i = 0; i < 5; i++) listA.add(i, Integer.parseInt(JOptionPane.showInputDialog(null,"Ingrese Valor en A[" + i + "] = "))); for (int i = 0; i < 5; i++) listB.add(i, Integer.parseInt(JOptionPane.showInputDialog(null,"Ingrese Valor en B[" + i + "] = "))); switch (OP) { case 1: union(); break; case 2: interseccion(); break; default: System.out.println("Valor no Valido"); break; } } } 7. Muchas gracias por los consejos, de verdad, aprecio tu preocupación por mi Saludos profe!!!
|
|
|
En línea
|
|
|
|
Ragnarok
|
Con respecto a la empatía con los usuarios demasiada ha tenido Casidiablo, porque yo le iba a remitir directamente a las normas, no sólo el usuario sigue sin poner las etiquetas de código y pidiendo que le hagamos su tarea (esto no son dudas sobre java, sino sobre un programa concreto), sino que además ha insistido con otros posts, sin leer las normas, etc. También dudo que este usuario algún día ayude a resolver la duda de otro, la gente que quiere todo hecho y ni se molesta en mirar las normas no tiende a mirar las dudas de otros y mucho menos responderlas. Por eso hay que ser duro para que la gente no insista en estas conductas. Con respecto a mirar las clases de java, la interfaz set (conjunto) ya está implementada en varias clases: http://java.sun.com/j2se/1.4.2/docs/api/java/util/Set.htmlLa unión es addAll y la intersección es retainAll, así que no hacía falta más.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Ayuda para desarrollar una Aplicación Movil de la universidad
Android
|
jose_e
|
1
|
4,889
|
22 Diciembre 2011, 23:59 pm
por Graphixx
|
|
|
Troyano: desarrollar servidor.
Análisis y Diseño de Malware
|
kiriost
|
0
|
2,102
|
22 Marzo 2012, 03:26 am
por kiriost
|
|
|
que mas puedo desarrollar con C?
Programación C/C++
|
;c1v!c
|
3
|
2,621
|
22 Agosto 2012, 18:33 pm
por 0xDani
|
|
|
desarrollar de un framework web de un ejemplo que sea basico
Desarrollo Web
|
Navidad2
|
2
|
1,998
|
9 Noviembre 2012, 20:10 pm
por Navidad2
|
|
|
ayuda para comencar a desarrollar paginas web
Desarrollo Web
|
urielros
|
2
|
3,019
|
7 Abril 2021, 10:57 am
por ThePetic
|
|