Java - NECESITO AYUDA URGENTE

   
Vista:

NECESITO AYUDA URGENTE

Publicado por oscar (12 intervenciones) el 24/02/2016 14:31:23
Buenas foro

Agradeceria un poco de ayuda , necesito entregar antes del viernes 26/2/16 una practica de un modulo que estoy cursando a distancia y me piden lo siguiente :

Realizar un programa que nos va a permitir gestionar una flota de coches. Inicialmente al poner en marcha el programa aparece un menú que contiene lo siguiente:

GESTIÓN DE COCHES
****************************
1. Introducir Coche
2. Eliminar Coche
3. Listar Coches
0. Salir

Un coche va a tener los siguientes datos: marca, modelo, matrícula, kilómetros y caballos.
Cuando pulsamos la opción "Introducir Coche" le pasamos una instancia de coche al método introducir, por por teclado y creamos el coche. Posteriormente el método introducir lo introduce en el array de coches.
Cuando pulsamos la opción "Eliminar Coche" nos pide la matrícula del coche a eliminar, y si lo encuentra lo elimina del array.
Cuando pulsamos la opción "Listar Coches" nos pide como criterio de búsqueda la marca del coche, si dejamos el campo vacío nos muestra todos los coches, si introducimos algo en el criterio de búsqueda nos muestra sólo aquellos coches que coinciden con la marca.
Cuando pulsamos la opción "Salir" se cierra el programa.

y llevo esto creado , espero me puedan orientar:

coche.java


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
public class Coche {
 
	// ATRIBUTOS
	private String marca;
	private String modelo;
	private String matricula;
	private int kilometros;
	private int caballos;
 
	// CONSTRUCTORES
	public Coche(String marc,String mod,String matr, int km, int cv){
		marca=marc;
		modelo=mod;
		matricula=matr;
		kilometros=km;
		caballos=cv;
	}
	public Coche(){
		marca=" ";
		modelo=" ";
		matricula=" ";
		kilometros=0;
		caballos=0;
	}
		// MÉTODOS
			public String dameMarca() {
			return marca;
			}
			public void ponMarca(String marca) {
			this.marca = marca;
			}
				public String dameModelo() {
				return modelo;
				}
				public void ponModelo(String modelo) {
				this.modelo = modelo;
				}
					public String dameMatricula() {
					return matricula;
					}
					public void ponMatricula(String matricula) {
					this.matricula = matricula;
					}
						public int dameKilometros() {
						return kilometros;
						}
						public void ponKilometros(int kilometros) {
						this.kilometros = kilometros;
						}
							public int dameCaballos() {
							return caballos;
							}
							public void ponCaballos(int caballos) {
							this.caballos = caballos;
							}
 
}
 
main == flota.java ( a partir de la creacion del array viene la perdida , soy novato en java y no tengo costumbre , solicito ayuda )


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
import  java.util.Scanner;
public class Flota {
 
	public static void main(String[] args) {
 
//  Declaramos  las  variables 
		Scanner  sc=new  Scanner(System.in);
		int opcion=0;
		String marca=" ";
		String modelo=" ";
		String matricula=" ";
		int kilometros=0;
		int caballos=0;
//  Mostramos  un  menu  y  pedimos  una  opción ; 
		System.out.println("  GESTION  DE  FLOTA  DE  COCHES ");
		System.out.println("---------------------------------");
		System.out.println("Seleccione  una  opción del menu:");
		System.out.println("---------------------------------");
		System.out.println("1.  Introducir Coches");
		System.out.println("2.  Eliminar   Coches");
		System.out.println("3.  Listar     Coches");
		System.out.println("0.  Salir");
		opcion=sc.nextInt();
		switch(opcion)  {
		case  0:
			System.out.println("Saliendo del programa...");
		break;
		case  1:
			System.out.println("SECCION INTRODUCIR COCHES");
			System.out.println("INTRODUCIR MARCA");
			marca=sc.nextLine();marca=sc.nextLine();
			System.out.println("INTRODUCIR MODELO");
			modelo=sc.nextLine();
			System.out.println("INTRODUCIR MATRICULA");
			matricula=sc.nextLine();
			System.out.println("INTRODUCIR KILOMETROS");
			kilometros=sc.nextInt();
			System.out.println("INTRODUCIR CABALLOS (CV)");
			caballos=sc.nextInt();
			System.out.println("AÑADIDO COCHE:" + marca + " MODELO:" + modelo + " MATRICULA:"
			+ matricula + " KMS.:" + kilometros + " CV:" + caballos);
		break;
		case  2:
			System.out.println("SECCION ELIMINAR COCHES");
		break;
		case  3:
			System.out.println("SECCION LISTAR COCHES");
		break;
		default:  System.out.println("Opcion no válida");
		}
// Creacion del array a rellenar con el listado introducido por teclado
 
			int listado[][] = new int[5][100];
		    for (int x=0; x < listado.length; x++) {
		    	for (int y=0; y < listado[x].length; y++) {
			    }
			}
		    for (int x=0; x < listado.length; x++) {
		        for (int y=0; y < listado[x].length; y++) {
		          listado[x][y] = listado=sc.nextLine();
		        }
		    }
 
		}
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

NECESITO AYUDA URGENTE

Publicado por arck (145 intervenciones) el 24/02/2016 15:22:12
¿Donde has generado el Array?
porque por mucho que veo no encuentro ninguna declaración de un array.

Busca por google como inicializar un array de objetos:
http://lineadecodigo.com/java/inicializar-un-array-en-java/

¿Os dejan usar estructuras de objetos de java?
----------------------------------------------------------------------------
¿Cuantas veces fuiste a clase?

en la clase Coche tienes las funciones dameMatricula ponMatricula.

Andaaaaaaaa queeeee......................... pon getMatricula y setMatricula, esto es muy básico.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

NECESITO AYUDA URGENTE

Publicado por oscar (12 intervenciones) el 24/02/2016 15:27:12
Gracias por responder

le creacion del array esta intentada en la ultima parte del main ,

1
2
3
4
5
6
7
8
9
10
// Creacion del array a rellenar con el listado introducido por teclado
 
int listado[][] = new int[5][100];
for (int x=0; x < listado.length; x++) {
for (int y=0; y < listado[x].length; y++) {
}
}
for (int x=0; x < listado.length; x++) {
for (int y=0; y < listado[x].length; y++) {
listado[x][y] = listado=sc.nextLine();

hemos dado todo lo basico , poo, la creacion de metodos , atributos , getters , setters , y lo ultimo visto para este examen y la prueba del viernes los tipos abstractos de datos pilas , colas y listas.

en este ejercicio he deducido que quiere que usemos las listas , pero no se como cada vez que introduzco un dato por teclado lo meta en el array y lo pueda luego recorrer para buscarlo o borrarlo , me hago mucho lio con eso.

creo que no esta bien como intento hacerlo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

NECESITO AYUDA URGENTE

Publicado por arck (145 intervenciones) el 24/02/2016 15:33:49
sea lo que sea la estructura que sigues esta mal.
no puedes poner
int listado[][]

¿tu de que quieres general las listas?

¿Te suena que hayais dado ArrayList? simplificaría muchísimo tu ejercicio.

Si has dado getters y setters, USALO.
nada de dameMarcay ponMarca.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

NECESITO AYUDA URGENTE

Publicado por oscar (12 intervenciones) el 24/02/2016 16:01:10
buenas de nuevo

hemos dado las arraylist y linkedlist. ,pero no las hemos usado mucho y no se muy bien como va , podrias orientarme un poco

entonces me recomiendas que cambie dameMarca por getMarca y ponMarca por setMarca????

gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

NECESITO AYUDA URGENTE

Publicado por arck (145 intervenciones) el 24/02/2016 16:19:35
SI por dios usa ArrayList

ejemplos simples de como usarlo:
http://jarroba.com/arraylist-en-java-ejemplos/

si cambia dameX y ponX por los getX y setX es una cosa que en el futuro veras siempre así.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

NECESITO AYUDA URGENTE

Publicado por oscar (12 intervenciones) el 25/02/2016 08:41:48
buenas a todos

he hablado con mi tutro , la situacion que tengo que realizar es la siguiente

array dinamico ( listadinamica ) y luego todo lo demas con metodos :

metodo menu
metodo introducir
metodo eliminar
metodo buscar

y desde ek main llamar a cada metodo

despues en la opcion de metodo introducir , pedir las caracteristicas del coche por consola y memorizar en la lista dinamica ( array )


AGRADEZCO SI ME PUEDEN PASAR ALGO DE CODIGO , NO ME DA TIEMPO A ENTREGAR LA PRACTICA POR EL TRABAJO Y LA CASA , AL SER SEMIPRESENCIAL EL TIEMPO QUE DISPONGO ES PEQUEÑO , SOLO SI UN BUEN SAMARITANO ME AYUDA CON CODIGO. AGRADEZCO DE ANTEMANO LA AYUDA

GRACIAS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

NECESITO AYUDA URGENTE

Publicado por arck (145 intervenciones) el 25/02/2016 09:39:47
Buenos días.

Pues ha hacer caso al profesor, tienes que generar una clase flota, por lo que deberías quedarte con la clase Coche otra Flota y la main.

Haz getter y setter de las dos clases, si estas en eclipse, el te lo hace solo con shift+Alt+S -> Generate Getters and Setters

Entiendo que los ArrayList si los visteis.

Lo que tienes que tener en la clase flota es una List<Coche> lista = new ArrayList<Coche>();

En flota genera las funciones que te dijo el profesor.

metodo introducir -> Generas el coche y con funciones propias del ArrayList lo introduces.
Busca en google: java arraylist add
metodo eliminar -> Busca el coche que quieres por matricula y eliminalo con una función de ArrayList.
Busca en google: java arraylist remove
metodo buscar -> busca en la flota.
Este es muy sencillo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

NECESITO AYUDA URGENTE

Publicado por oscar (12 intervenciones) el 25/02/2016 09:52:05
buenos dias arck

el profesor me dice que haga coche.java y flota.java como main que ya tengo

el problema son los metodos

por cierto el menu como metodo como lo hago porque me dice que como switch case no
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

NECESITO AYUDA URGENTE

Publicado por arck (145 intervenciones) el 25/02/2016 11:15:45
pues si no es como case tendrás que hacerlo con if.

¿Los métodos quiere que los metas en la clase principal? ok, siguen siendo igual las funciones y tampoco tendrías que cambiar mucho.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

NECESITO AYUDA URGENTE

Publicado por oscar (12 intervenciones) el 26/02/2016 12:17:13
nada no hay manera de avanzar , no se como desde el menu con switch pedir los datos por consola y meterlos en el array

tiro la toallla y lo dejo por imposible , no entregare la practica y listo , me da rabia perder el 40% de la nota por la maldita practica

arck muchas gracias por tu ayuda me ha ayudado mirar en las webs que me diste

un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

NECESITO AYUDA URGENTE

Publicado por oscar (12 intervenciones) el 26/02/2016 13:04:58
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
public class Coche {
 
	// ATRIBUTOS
	private String marca;
	private String modelo;
	private String matricula;
	private int kilometros;
	private int caballos;
 
	// CONSTRUCTORES
	public Coche(String marca,String modelo,String matricula, int kilometros, int caballos){
		this.marca=marca;
		this.modelo=modelo;
		this.matricula=matricula;
		this.kilometros=kilometros;
		this.caballos=caballos;
	}
	public Coche(){
		marca=" ";
		modelo=" ";
		matricula=" ";
		kilometros=0;
		caballos=0;
	}
		// MÉTODOS
			public String getMarca() {
			return marca;
			}
			public void setMarca(String marca) {
			this.marca = marca;
			}
				public String getModelo() {
				return modelo;
				}
				public void setModelo(String modelo) {
				this.modelo = modelo;
				}
					public String getMatricula() {
					return matricula;
					}
					public void setMatricula(String matricula) {
					this.matricula = matricula;
					}
						public int getKilometros() {
						return kilometros;
						}
						public void setKilometros(int kilometros) {
						this.kilometros = kilometros;
						}
							public int getCaballos() {
							return caballos;
							}
							public void setCaballos(int caballos) {
							this.caballos = caballos;
							}
 
}
 
 
main
 
 
import  java.util.Scanner;
public class Flota {
 
	public static void main(String[] args) {
 
//  Declaramos  las  variables 
		Scanner  sc=new  Scanner(System.in);
		int opcion=0;
		String marca=" ";
		String modelo=" ";
		String matricula=" ";
		int kilometros=0;
		int caballos=0;
//  Mostramos  un  menu  y  pedimos  una  opción ; 
		System.out.println("  GESTION  DE  FLOTA  DE  COCHES ");
		System.out.println("---------------------------------");
		System.out.println("Seleccione  una  opción del menu:");
		System.out.println("---------------------------------");
		System.out.println("1.  Introducir Coches");
		System.out.println("2.  Eliminar   Coches");
		System.out.println("3.  Listar     Coches");
		System.out.println("0.  Salir");
		opcion=sc.nextInt();
 
		switch(opcion)  {
		case  0:
			System.out.println("Saliendo del programa...");
		break;
		case  1:
			System.out.println("SECCION INTRODUCIR COCHES");
			System.out.println("INTRODUCIR MARCA");
			marca=sc.nextLine();marca=sc.nextLine(setMarca);
			System.out.println("INTRODUCIR MODELO");
			modelo=sc.nextLine();
			System.out.println("INTRODUCIR MATRICULA");
			matricula=sc.nextLine();
			System.out.println("INTRODUCIR KILOMETROS");
			kilometros=sc.nextInt();
			System.out.println("INTRODUCIR CABALLOS (CV)");
			caballos=sc.nextInt();
			System.out.println("AÑADIDO COCHE:" + marca + " MODELO:" + modelo + " MATRICULA:"
			+ matricula + " KMS.:" + kilometros + " CV:" + caballos);
		break;
		case  2:
			System.out.println("SECCION ELIMINAR COCHES");
		break;
		case  3:
			System.out.println("SECCION LISTAR COCHES");
		break;
		default:  System.out.println("Opcion no válida");
		}
 
	}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

NECESITO AYUDA URGENTE

Publicado por oscar (12 intervenciones) el 26/02/2016 13:26:00
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
import java.util.ArrayList;
import java.util.Scanner;
public class Flota {
 
	public static void main(String[] args) {
 
	ArrayList <Coche> Coche=new ArrayList<Coche>();
 
//  Declaramos  las  variables 
		Scanner  sc=new  Scanner(System.in);
		int opcion=0;
		String marca=" ";
		String modelo=" ";
		String matricula=" ";
		int kilometros=0;
		int caballos=0;
//  Mostramos  un  menu  y  pedimos  una  opción ; 
		System.out.println("  GESTION  DE  FLOTA  DE  COCHES ");
		System.out.println("---------------------------------");
		System.out.println("Seleccione  una  opción del menu:");
		System.out.println("---------------------------------");
		System.out.println("1.  Introducir Coches");
		System.out.println("2.  Eliminar   Coches");
		System.out.println("3.  Listar     Coches");
		System.out.println("0.  Salir");
		opcion=sc.nextInt();
 
		switch(opcion)  {
		case  0:
			System.out.println("Saliendo del programa...");
		break;
		case  1:
			System.out.println("SECCION INTRODUCIR COCHES");
			System.out.println("INTRODUCIR MARCA");
			marca=sc.nextLine();marca=sc.nextLine(Coche.add new Coche(marca));
			System.out.println("INTRODUCIR MODELO");
			modelo=sc.nextLine(Coche.add new Coche(modelo));
			System.out.println("INTRODUCIR MATRICULA");
			matricula=sc.nextLine(Coche.add new Coche(matricula));
			System.out.println("INTRODUCIR KILOMETROS");
			kilometros=sc.nextInt(Coche.add new Coche(kilometros));
			System.out.println("INTRODUCIR CABALLOS (CV)");
			caballos=sc.nextInt(Coche.add new Coche(caballos));
			System.out.println("AÑADIDO COCHE:" + marca + " MODELO:" + modelo + " MATRICULA:"
			+ matricula + " KMS.:" + kilometros + " CV:" + caballos);
		break;
		case  2:
			System.out.println("SECCION ELIMINAR COCHES");
		break;
		case  3:
			System.out.println("SECCION LISTAR COCHES");
		break;
		default:  System.out.println("Opcion no válida");
		}
 
	}
}


asi tampoco me funciona
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

NECESITO AYUDA URGENTE

Publicado por arck (145 intervenciones) el 26/02/2016 13:30:18
no te vuelvas loco es sencillisimo

1º es List <Coche> listaCoches=new ArrayList<Coche>();

2º en la clase Coche tienes un contructor usalo y genera el coche y haz un
Coche coche = new Coche(........,.........,..........,........);

listaCoches.add(coche);

felicidades acabas de insertar en la lista.

A que hora tienes que entregarla?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

NECESITO AYUDA URGENTE

Publicado por oscar (12 intervenciones) el 26/02/2016 13:50:51
23 horas maximo


siguiendo tus aclaraciones cambio todo pero no me deja meter el dato por scanner
me dice :

El método nextLine() que hay en el tipo Scanner no es aplicable para los argumentos (boolean)
El método nextInt(int) que hay en el tipo Scanner no es aplicable para los argumentos (boolean)


import java.util.ArrayList;
import java.util.Scanner;

public class Flota {

public static void main(String[] args) {

ArrayList <Coche> listaCoches=new ArrayList<Coche>();
Coche coche = new Coche();

// Declaramos las variables
Scanner sc=new Scanner(System.in);
int opcion=0;
String marca=" ";
String modelo=" ";
String matricula=" ";
int kilometros=0;
int caballos=0;
// Mostramos un menu y pedimos una opción ;
System.out.println(" GESTION DE FLOTA DE COCHES ");
System.out.println("---------------------------------");
System.out.println("Seleccione una opción del menu:");
System.out.println("---------------------------------");
System.out.println("1. Introducir Coches");
System.out.println("2. Eliminar Coches");
System.out.println("3. Listar Coches");
System.out.println("0. Salir");
opcion=sc.nextInt();

switch(opcion) {
case 0:
System.out.println("Saliendo del programa...");
break;
case 1:
System.out.println("SECCION INTRODUCIR COCHES");
System.out.println("INTRODUCIR MARCA");
marca=sc.nextLine(listaCoches.add(coche));

System.out.println("INTRODUCIR MODELO");
modelo=sc.nextLine(listaCoches.add(coche));

System.out.println("INTRODUCIR MATRICULA");
matricula=sc.nextLine(listaCoches.add(coche));

System.out.println("INTRODUCIR KILOMETROS");
kilometros=sc.nextInt(listaCoches.add(coche));

System.out.println("INTRODUCIR CABALLOS (CV)");
caballos=sc.nextInt(listaCoches.add(coche));

System.out.println("AÑADIDO COCHE:" + marca + " MODELO:" + modelo + " MATRICULA:"
+ matricula + " KMS.:" + kilometros + " CV:" + caballos);
break;
case 2:
System.out.println("SECCION ELIMINAR COCHES");
break;
case 3:
System.out.println("SECCION LISTAR COCHES");
break;
default: System.out.println("Opcion no válida");
}

}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

NECESITO AYUDA URGENTE

Publicado por arck (145 intervenciones) el 26/02/2016 14:36:58
dame tu correo anda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

NECESITO AYUDA URGENTE

Publicado por oscar (12 intervenciones) el 26/02/2016 14:39:16
thesigmarilion@hotmail.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar