elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Crear dos vectores/arrays/arreglos con los datos de uno
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Crear dos vectores/arrays/arreglos con los datos de uno  (Leído 3,597 veces)
Browwwnnn

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Crear dos vectores/arrays/arreglos con los datos de uno
« en: 17 Octubre 2014, 19:20 pm »

Buenas a todos, abro este tema para ver si me pueden ayudar con un ejercicio que necesito resolver:
el ejercicio seria asi, tengo un vector al que le ingreso por ejemplo dos marcas de autos,
luego tengo que ingresar cual voy a alquilar, y luego de esto, tienen que armarse dos listas,
una de los autos que estan disponibles y otra con los autos alquilados.

Mi idea era la siguiente, armar un if y una variable alquilar(por ejemplo),y si alquilar es igual a un
dato del vector marca, que lo mueva a otro vector (ej alquilados), y si no lo es, que lo mueva a otro vector distinto
(ej disponibles), se entiende mi idea? en lo que estaria necesitando ayuda es en esto ultimo que no lo se resolver,
 les dejo el codigo que tango armado.

Código:
package proyecto;
import java.util.Scanner;
public class Alquiler {
public static void main(String[]args){
Scanner teclado= new Scanner(System.in);

String[ ] marca=new String[2];
int x;
for(x=0;x<2;x++){
System.out.print("Ingrese la marca: "); //CARGO LOS DATOS AL VECTOR
marca[x]=teclado.next();
}

for(x=0;x<2;x++){
System.out.println(marca[x]);   //MUESTRO LOS DATOS DEL VECTOR
}

System.out.print("que auto desea alquilar?");
String alquilar; //DEFINO VARIABLE ALQUILAR

//hasta aqui llegue

}}



En línea

MNicolas

Desconectado Desconectado

Mensajes: 127


Developer


Ver Perfil WWW
Re: Crear dos vectores/arrays/arreglos con los datos de uno
« Respuesta #1 en: 17 Octubre 2014, 21:56 pm »

Buenas,

Java nos da muchas herramientas muy útiles. Una es la clase ArrayList. Es un vector de objetos, pero la diferencia con un array normal es que el ArrayList puede variar de tamaño.

Yo haría lo siguiente.

Una clase vehículo, con sus dos atributos, marca (string) y estaAlquilado (boolean). En el atributo marca guardaremos la marca de cada objeto vehiculo y en estaAlquilado true si lo está y false si no lo está.

De esta manera haces tu lista declarando tu arraylist y luego le metes tantos vehiculos como quieras ya que partimos con la ventaja de que el arraylist es dinámico. No dejo el código para que lo hagas tú mismo y puedas aprender, si quieres que te lo deje puedes decirlo y te lo dejaré comentado.

Otro detalle es que ignoro tus conocimientos en el tema de objetos en Java. Pero te recomiendo que aprendas rápido el ArrayList, que es muy útil.


En línea

Browwwnnn

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Crear dos vectores/arrays/arreglos con los datos de uno
« Respuesta #2 en: 17 Octubre 2014, 22:38 pm »

Gracias por tu respuesta, no tengo problema en aprender a utilizar el ArrayList, la cosa es que tengo que realizar el proyecto con los temas dados en clase, y todavia no llegue al ArrayList :( .
Otra cosa, si por ejemplo tengo el vector "auto" con las marcas ingresadas y la variable "alquilar" para seleccionar como alquilada alguna marca  del vector auto, como defino el booleano? y luego de que lo defina, puedo armar una lista con los que resulten false y otra con los true?
Gracias por tu tiempo :)

P.D: estuve leyendo bastante por internet, y todos resuelven este tipo de problemas usando objetos y metodos, pero yo no llegue a dar nada de eso todavia.
En línea

MNicolas

Desconectado Desconectado

Mensajes: 127


Developer


Ver Perfil WWW
Re: Crear dos vectores/arrays/arreglos con los datos de uno
« Respuesta #3 en: 18 Octubre 2014, 01:25 am »

Puedes hacer un array bidimensional.

String[][] listaVehiculos = new String[tantos coches como quieras][2];

De manera gráfica quedaría así.

{"mercedes-benz", "bmw", "audi"}
{"alquilado","no alquilado", "no alquilado"}

De esta manera en tu array de dos dimensiones tienes todo almacenado. Si luego quieres mostrar los que estan o no alquilados haces dos bucles que recorran el array ( dos porque es bidimensional, uno dentro de otro) y pones un if

Si no lo entiendes así puedo hacerte el código comentado.
En línea

Browwwnnn

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Crear dos vectores/arrays/arreglos con los datos de uno
« Respuesta #4 en: 19 Octubre 2014, 02:45 am »

Disculpa con mi insistencia, me entendiste mal o yo me exprese mal jaja, el programa seria así, me pide el ingreso de por ejemplo 5 autos, luego, me pregunta cual quiero alquilar, luego de que ingreso cual quiero alquilar,me hace dos listas, una de alquilados y otra de libres.

Mi idea es la siguiente, luego de que creo un vector "autos" y le ingreso mediante teclado el contenido, creo una variable alquilar, si el valor que ingreso en alquilar es igual a un valor ya existente en el vector "autos", que me mueva ese dato a otro vector "alquilados", y los datos que quedan libres, a otro vector "libres", el tema es que no se como hacer esto ultimo (una vez que ingreso el dato alquilar como hacer los dos vectores "alquilar" y " libres")
En línea

MNicolas

Desconectado Desconectado

Mensajes: 127


Developer


Ver Perfil WWW
Re: Crear dos vectores/arrays/arreglos con los datos de uno
« Respuesta #5 en: 19 Octubre 2014, 12:07 pm »

Haz dos vectores más.

String[] alquilados = new String[1];
String[] libres = new String[marca.lenght-2] // esto hace que el libres sea del tamaño de marca menos el coche que quitaste porque lo alquilaste

//ahora recorremos el marcas a ver si el valor que metiste en "alquilar existe"

for(int i=0; i<marcas.lenght; i++){
if(marcas.equals(alquilar))
{
alquilados[0]=marcas;
System.out.println("Coche alquilado");
}
else // si no esta alquilado
{
for(int j=0; j<libres.lenght;j++) // recorremos la array de libres
{
if(libres[j]==null) // en el primer hueco que pille vacio
{
libres[j]=marcas; // metemos la marca que no esta alquilada
break; // rompemos el bucle pequeño
}
}
}
}

No lo he probado, tendrá errores seguramente, pero es para que cojas la idea.
En línea

Browwwnnn

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Crear dos vectores/arrays/arreglos con los datos de uno
« Respuesta #6 en: 22 Octubre 2014, 19:22 pm »

Gracias por tu respuesta, estuve hablando con el profesor y me dijo que para hacer esto tengo que usar una variable boolean, es decir, si yo tengo un vector "marcas", determinar una variable boolean "alquilados"=false para todos los autos del vector, pero si yo ingreso un valor que ya se encuentra dentro del vector "marcas" que ese valor se cambie a =true, me explico bien?
Lo que no se bien como hacer es como hacer que esa variable boolean se cambie a true cuando yo ingreso un valor ya existente en el vector,

Gracias por su atención.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda sobre Arreglos(Arrays)
Java
Senior++ 2 1,981 Último mensaje 7 Diciembre 2012, 17:09 pm
por Senior++
vectores o arreglos
Programación C/C++
spardandrews 1 1,823 Último mensaje 5 Julio 2013, 20:19 pm
por CCross
¿Una manera distinta de ordenar arreglos/vectores.-?
Programación C/C++
DanielPy 0 1,432 Último mensaje 3 Diciembre 2013, 21:03 pm
por DanielPy
Arrays o arreglos en c++ duda nivel novato
Programación C/C++
larregui15 2 1,679 Último mensaje 3 Mayo 2015, 18:20 pm
por larregui15
arreglos con vectores
Programación C/C++
brickolmos 1 1,956 Último mensaje 6 Junio 2015, 06:16 am
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines