Ver Mensaje Individual
  #7 (permalink)  
Antiguo 23/02/2015, 13:56
provocoaa
 
Fecha de Ingreso: febrero-2015
Mensajes: 12
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Agenda en Java

Ya lo hice, pongo aqui el codigo por si a alguien en el futuro le puede ayudar. Gracias Chuidiang.

Puede haber errores, aun no lo he probado del todo

Código:
public class Agenda {

	Scanner entrada= new Scanner(System.in);
	
	Contactos contacto[] = new Contactos[10];
	String nombre;
	int dni, edad, telefono, pos, posNombre;
	boolean encontrado = false;
	
	public void menu()
	{
		System.out.print("*********************************\n*Bienvenido a tu Agenda Personal*\n*********************************\n");
		System.out.println("Selecciona una opcion:");
		System.out.println("1- Insertar Persona\n2- Buscar(por nombre)\n3- Eliminar Persona\n4- Mostrar Agenda\n5- Salir");
		int opcion = entrada.nextInt();
		
		switch(opcion)
		{
		case 1: insertarContacto();
		break;
		
		case 2: System.out.println("Escribe el nombre de la persona que desea encontrar: ");
				String nom = entrada.next();
				buscarContacto(nom);
		break;
		
		case 3: eliminarContacto();
		break;
		
		case 4: mostrarAgenda();
		break;
		
		case 5: System.out.println("Saliendo..."); System.exit(0);
		
		default: System.out.println("Opcion no valida"); System.exit(0);
		}
	}

	public void insertarContacto()
	{
		if(pos < contacto.length)
		{
			System.out.println("Nombre: ");
			nombre = entrada.next();
			System.out.println("Edad: ");
			edad = entrada.nextInt();
			System.out.println("DNI: ");
			dni = entrada.nextInt();
			System.out.println("Telefono: ");
			telefono = entrada.nextInt();
			
			contacto[pos] = new Contactos(nombre, edad, dni, telefono);
			
			pos++;
			System.out.println("Contacto insertado con exito");
		}else
		{
			System.out.println("Agenda completa. ¿Desea eliminar algun contacto? s\n");
			char resp = entrada.next().charAt(0);
			
			if(resp == 's')
				eliminarContacto();
			else
				menu();
		}
		menu();	
	}
	
	public void buscarContacto(String n)
	{
		for(int i = 0 ; i < pos ; i++)
		{
			if(contacto[i].getNombre().equalsIgnoreCase(n))
			{
				posNombre = i;
				mostrarContacto(i);
				encontrado = true;
			}
		}
		
		if(encontrado == false)
			System.out.println("No hay resultados con ese nombre");
		
		preguntar();
	}
	
	public void eliminarContacto()
	{
		System.out.println("Escribe el contacto que desea eliminar");
		String nom = entrada.next();
		buscarContacto(nom);
		
		if(encontrado == true)
		{
			for(int i = posNombre ; i < pos; i++)
			{
				if(posNombre == contacto.length)
					pos--;
				else
				{
					contacto[i + 1] = contacto[i];
					pos--;
				}
			}
		}else
			System.out.println("No existe dicho contacto");
		
		preguntar();
	}
	
	public void mostrarContacto(int contact)
	{
		System.out.println(contacto[contact].nombre+" "+contacto[contact].dni+" "+contacto[contact].edad
				+" "+contacto[contact].telefono);
		
		preguntar();
	}
	
	public void mostrarAgenda()
	{
		for(int i = 0 ; i < pos ; i++)
		{
			System.out.println(contacto[i].nombre+" "+contacto[i].dni+" "+contacto[i].edad
					+" "+contacto[i].telefono);
		}
		
		preguntar();
	}
	
	public void preguntar()
	{
		System.out.println("¿Desea realizar alguna otra operacion? s/n");
		char resp = entrada.next().charAt(0);
		
		if(resp == 's')
			menu();
		else
		{
			System.out.println("Saliendo....");
			System.exit(0);
		}
			
	}
}
Bueno, he puesto muy rapido el codigo...hay bastantes errores, aunque son tonterias.

Última edición por provocoaa; 23/02/2015 a las 14:16