/***********************************************************
*utilizando arreglos bidimencionales, elaborar un programa *
*que presente un menu principal con las siguientes opciones*
*°agregar *
*°consultar *
*°modificar *
*°salir*****************************************************/
import javax.swing.*;
public class GTCartLot {
public static void main (String[] args)
{
try
{
int totalClientes=100, ind=0;
int opcion,opcion1,opcionCU,opcionP,opCU;
long claveVeh;
int anio;
String val,claveUso,procedencia;
boolean encontrado;
int [][]vEnteros=new int[totalClientes][1];
long []vLongs=new long [totalClientes];
String [][]vCadenas=new String[totalClientes][3];
do
{
do
{
val=JOptionPane.showInputDialog(null," Menu \n[1] Agregar\n[2] Consultas\n[3] Modificar\n[4] Salir.","Menu GTCarLot",JOptionPane.INFORMATION_MESSAGE);
opcion=Integer.parseInt(val);
}while(opcion<1||opcion>4);
switch(opcion)
{
case 1:
if(ind<totalClientes)
{
System.out.println ("Agregando.");
encontrado=false;
claveVeh=Long.parseLong(JOptionPane.showInputDialog(null,"Clave del Vehiculo: ","Agregando.",JOptionPane.INFORMATION_MESSAGE));
//busqueda de si existe el numero de cuenta y no duplicarla
for(int i=0;i<ind;i++)
{
if(claveVeh==vLongs[i])
{
System.out.println ("Error, numero de cuenta ya existe.");
i=ind;
encontrado=true;
}
}
if(encontrado==false)
{
vLongs[ind]=claveVeh;
anio=Integer.parseInt(JOptionPane.showInputDialog("Año del Vehiculo: "));
vEnteros[ind][0]=anio;
do
{
claveUso=JOptionPane.showInputDialog("Clave de Uso del Vehiculo\n1) Servicio Particular\n2)Servicio Publico");
opcionCU=Integer.parseInt(claveUso);
switch(opcionCU)
{
case 1:
vCadenas[ind][0]="Servicio Particular";
break;
case 2:
vCadenas[ind][0]="Servicio Publico";
break;
}
}while(opcionCU<1||opcionCU>2);
do
{
procedencia=JOptionPane.showInputDialog("Procedencia:\n1) Nacional\n2) Extranjero.");
opcionP=Integer.parseInt(procedencia);
switch(opcionP)
{
case 1:
vCadenas[ind][1]="Nacional";
break;
case 2:
vCadenas[ind][1]="Extranjero";
break;
}
}while(opcionP<1||opcionP>2);
vCadenas[ind][2]=JOptionPane.showInputDialog("Nombre del Propietario: ");
ind++;
}
}
else
System.out.println ("Error, no existe espacio en el arreglo.");
break;
case 2:
System.out.println ("\nConsultas");
do
{
do
{
val=JOptionPane.showInputDialog(null,"Cosultar por:\n1) Clave de Uso\n2) Procedencia\n3) Propietario\n4) Año\n5) Todos\n6) Regresar.","Consultas",JOptionPane.INFORMATION_MESSAGE);
opcion1=Integer.parseInt(val);
}while(opcion1<1||opcion1>6);
switch(opcion1)
{
case 1:
if(ind>0)
{
System.out.println ("\n\t[Por Clave de Uso]");
encontrado=false;
val=JOptionPane.showInputDialog("Clave uso a buscar\n(recuerde que solo hay: Servicio Particular y Servicio Publico)");
for(int j=0;j<ind;j++)
{
if(val.equalsIgnoreCase(vCadenas[j][0]))
{
System.out.println ("\n\tClave Uso: \n\t\t\t["+vCadenas[j][0]+"]");
System.out.println ("\t\t__________________");
System.out.println ("\t\tClave del vehiculo: "+vLongs[j]);
System.out.println ("\t\tAño del vehiculo: "+vEnteros[j][0]);
System.out.println ("\t\tProcedencia: "+vCadenas[j][1]);
System.out.println ("\t\tNombre del Propietario: "+vCadenas[j][2]);
j=ind;
encontrado=true;
}
}
if(encontrado==false)
System.out.println ("Error, no hay clave uso en el arreglo.");
}
else
System.out.println ("Error, no existe informacion en el arreglo.");
break;
case 2:
if(ind>0)
{
System.out.println ("\n\t[Por Procedencia]");
encontrado=false;
val=JOptionPane.showInputDialog("Procedencia a buscar\n(recuerde que solo hay: Nacional y Extranjero)");
for(int j=0;j<ind;j++)
{
if(val.equalsIgnoreCase(vCadenas[j][1]))
{
System.out.println ("\n\tProcedencia: \n\t\t\t["+vCadenas[j][1]+"]");
System.out.println ("\t\t__________________");
System.out.println ("\t\tClave del vehiculo: "+vLongs[j]);
System.out.println ("\t\tAño del vehiculo: "+vEnteros[j][0]);
System.out.println ("\t\tClave Uso: "+vCadenas[j][0]);
System.out.println ("\t\tNombre del Propietario: "+vCadenas[j][2]);
System.out.println ("\t\t__________________");
j=ind;
encontrado=true;
}
}
if(encontrado==false)
System.out.println ("Error, no hay Procedencia valida en el arreglo.");
}
else
System.out.println ("Error, no existe informacion en el arreglo.");
break;
case 3:
if(ind>0)
{
encontrado=false;
System.out.println ("\n\t[Por Propietario]");
val=JOptionPane.showInputDialog("Nombre del propietario a buscar: ");
for(int j=0;j<ind;j++)
{
if(val.equalsIgnoreCase(vCadenas[j][2]))
{
System.out.println ("\n\tDatos de: \n\t\t\t["+vCadenas[j][2]+"]");
System.out.println ("\t\t__________________\n\t\tClave del vehiculo: "+vLongs[j]);
System.out.println ("\t\tAño del vehiculo: "+vEnteros[j][0]);
System.out.println ("\t\tClave Uso: "+vCadenas[j][0]);
System.out.println ("\t\tProcedencia: "+vCadenas[j][1]);
System.out.println ("\t\t__________________");
j=ind;
encontrado=true;
}
}
if(encontrado==false)
System.out.println ("Error, el nombre del propietario no existe en el arreglo.");
}
else
System.out.println ("Error,no existe informacion en el arreglo.");
break;
case 4:
if(ind>0)
{
encontrado=false;
System.out.println ("\n\t[Por Año]");
val=JOptionPane.showInputDialog("Año de busqueda: ");
anio=Integer.parseInt(val);
for(int j=0;j<ind;j++)
{
if(anio==vEnteros[j][0])
{
System.out.println ("\n\tDatos del Año buscado: \n\t\t\t["+anio+"] ");
System.out.println ("\t\t__________________________");
System.out.println ("\t\tClave del vehiculo: "+vLongs[j]);
System.out.println ("\t\tClave Uso: "+vCadenas[j][0]);
System.out.println ("\t\tProcedencia: "+vCadenas[j][1]);
System.out.println ("\t\tNombre del Propietario: "+vCadenas[j][2]);
System.out.println ("\t\t__________________________");
j=ind;
encontrado=true;
}
}
if(encontrado==false)
System.out.println ("Error, el años buscado no existe.");
}
else
System.out.println ("Error, no existe informacion en el arreglo.");
break;
case 5:
if(ind>0)
{
System.out.println ("\n\t[Consultando Todos]");
for(int j=0;j<ind;j++)
{
System.out.println ("\t__________________________");
System.out.println ("\tClave del vehiculo: "+vLongs[j]);
System.out.println ("\tAño del vehiculo: "+vEnteros[j][0]);
System.out.println ("\tClave Uso: "+vCadenas[j][0]);
System.out.println ("\tProcedencia: "+vCadenas[j][1]);
System.out.println ("\tNombre del Propietario: "+vCadenas[j][2]);
}
System.out.println ("\t__________________________");
}
else
System.out.println ("Error, no existe informacion en el arreglo.");
break;
}
}while(opcion1!=6);
break;
case 3:
System.out.println ("\nModificar");
break;
}
}while(opcion!=4);
System.exit(0);
}catch(Exception e)
{
System.out.println ("Error: "+e.getMessage());
System.exit(0);
}
}
}