JosephGlz

Proyecto_Array

May 12th, 2021
399
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import java.util.Scanner;
  2.  
  3. public class Proyecto_Array
  4. {
  5.     int Tam;
  6.     int NumCuenta[];
  7.     float Saldo[];
  8.     String NomClient[];
  9.     String Direccion[];
  10.     int Edad[];
  11.     int Cont;
  12.     int Dato;
  13.     int Dinero[];
  14.     boolean Inicializado = false;
  15.  
  16.     Scanner read = new Scanner(System.in);
  17.  
  18.     void Inicializar_Arreglo()
  19.     {
  20.         if(Inicializado == false)
  21.         {
  22.             int i = 0;
  23.             System.out.println("");
  24.             Tam = 15;
  25.             int Aux[] = new int[Tam];
  26.             float Aux1[] = new float[Tam];
  27.             String Aux2[] = new String[Tam];
  28.             String Aux3[] = new String[Tam];
  29.             int Aux4[] = new int[Tam];
  30.  
  31.             for (i = 0; i < Tam; i++)
  32.             {
  33.                 Aux[i] = 0;
  34.                 Aux1[i] = 0.0f;
  35.                 Aux2[i] = "";
  36.                 Aux3[i] = "";
  37.                 Aux4[i] = 0;
  38.             }
  39.  
  40.             NumCuenta = Aux;
  41.             Saldo = Aux1;
  42.             NomClient = Aux2;
  43.             Direccion = Aux3;
  44.             Edad = Aux4;
  45.             Cont = -1;
  46.             Inicializado = true;
  47.             MenuGestion();
  48.         }
  49.         else
  50.         {
  51.             MenuGestion();
  52.         }
  53.     }
  54.  
  55.     boolean Arreglo_Lleno()
  56.     {
  57.         if(Cont == Tam-1)
  58.         {
  59.             System.out.println("");
  60.             System.out.println("Esta LLENO");
  61.             return true;
  62.         }
  63.         else
  64.         {
  65.             return false;
  66.         }
  67.     }
  68.  
  69.     boolean Arreglo_Vacio()
  70.     {
  71.         if(Cont == -1)
  72.         {
  73.             System.out.println("");
  74.             System.out.println("Esta VACIO");
  75.             return true;
  76.         }
  77.         else
  78.         {
  79.             return false;
  80.         }
  81.     }
  82.  
  83.     void Insertar_Datos()
  84.     {
  85.         if(!Arreglo_Lleno())
  86.         {
  87.             Cont++;
  88.             Saldo[Cont] = 0;
  89.             System.out.println("Ingrese el Número de Cuenta: ");
  90.             NumCuenta[Cont] = read.nextInt();
  91.             System.out.println("Ingrese el Nombre del Cliente: ");
  92.             NomClient[Cont] = getStringInput();
  93.             System.out.println("Dirección: ");
  94.             Direccion[Cont] = getStringInput();
  95.             System.out.println("Edad: ");
  96.             Edad[Cont] = read.nextInt();
  97.         }
  98.     }
  99.  
  100.     int BuscarCuenta(int cuenta) //1234
  101.     {
  102.         for(int i = 0; i <= Cont; i++)
  103.         {
  104.             if(NumCuenta[i] == cuenta)
  105.             {
  106.                 return i;
  107.             }
  108.         }
  109.         return -2;
  110.     }
  111.  
  112.     void Ingresar_Efectivo(int cuenta)
  113.     {
  114.         if(!Arreglo_Lleno())
  115.         {
  116.             if(BuscarCuenta(cuenta) >= 0) {
  117.                 System.out.println("");
  118.                 System.out.println("Ingrese la cantidad que desea Depositar: ");
  119.                 Saldo[BuscarCuenta(cuenta)] += read.nextFloat();
  120.             }
  121.             else
  122.             {
  123.                 System.out.println("No se encuentra la cuenta.");
  124.             }
  125.         }
  126.     }
  127.  
  128.     void Listar_Arreglo()
  129.     {
  130.         for(int i = 0; i <= Cont; i++)
  131.         {
  132.             System.out.println("============================================");
  133.             System.out.println("Numero de Cuenta.........."+ (i+1) + ": " + NumCuenta[i]);
  134.             System.out.println("Nombre del Cliente........" + (i+1) + ": " + NomClient[i]);
  135.             System.out.println("Saldo....................."+ (i+1) + ": $" + Saldo[i]);
  136.             System.out.println("Direccion................." + (i+1) + ": " + Direccion[i]);
  137.             System.out.println("Edad......................" + (i+1) + ": " + Edad[i]);
  138.         }
  139.     }
  140.  
  141.     boolean GrupoVacio()
  142.     {
  143.         if(Cont == -1)
  144.         {
  145.             return true;
  146.         }
  147.         else
  148.         {
  149.             return false;
  150.         }
  151.     }
  152.  
  153.     int Busqueda_Secuencial()
  154.     {
  155.         if(Arreglo_Vacio())
  156.         {
  157.             return -1;
  158.         }
  159.         else
  160.         {
  161.             for(int i = 0; i <= Cont; i++)
  162.             {
  163.                 if(Dato == NumCuenta[i])
  164.                 {
  165.                     return i;
  166.                 }
  167.             }
  168.         }
  169.         System.out.println("LA CUENTA: " + Dato + " NO SE ENCUENTRA EN EL SISTEMA.");
  170.         return -2;
  171.     }
  172.  
  173.     String getStringInput()
  174.     {
  175.         Scanner scanner = new Scanner(System.in);
  176.         return scanner.nextLine();
  177.     }
  178.  
  179.     void Eliminar_Dato()
  180.     {
  181.         int Buscar = Busqueda_Secuencial();
  182.         int i=0;
  183.         if(Buscar > -1)
  184.         {
  185.             for(i = Buscar; i < Cont; i++)
  186.             {
  187.                 Saldo[i] = Saldo[i+1];
  188.                 NomClient[i] = NomClient[i+1];
  189.                 NumCuenta[i] = NumCuenta[i+1];
  190.                 Direccion[i] = Direccion[i+1];
  191.                 Edad[i] = Edad[i+1];
  192.             }
  193.             Cont--;
  194.         }
  195.     }
  196.  
  197.     void DesplegarAlumno(int i)
  198.     {
  199.         System.out.println("============================================");
  200.         System.out.println("Numero de Cuenta.........."+ (i+1) + ": $" + NumCuenta[i]);
  201.         System.out.println("Nombre del Cliente........" + (i+1) + ": " + NomClient[i]);
  202.         System.out.println("Saldo....................."+ (i+1) + ": " + Saldo[i]);
  203.         System.out.println("Direccion................." + (i+1) + ": " + Direccion[i]);
  204.         System.out.println("Edad......................" + (i+1) + ": " + Edad[i]);
  205.     }
  206.  
  207.     void Modificar_Dato()
  208.     {
  209.         int Buscar = Busqueda_Secuencial();
  210.  
  211.         if(Buscar > -1)
  212.         {
  213.             int op = 0;
  214.  
  215.             do
  216.             {
  217.                 DesplegarAlumno(Buscar);
  218.                 System.out.println("Dato a Modificar: ");
  219.                 System.out.println("    1.- Nombre del cliente.");
  220.                 System.out.println("    2.- Dirección.");
  221.                 System.out.println("    3.- Edad.");
  222.                 System.out.println(" ¿Qué dato desea modificar?");
  223.                 op = read.nextInt();
  224.  
  225.                 switch(op)
  226.                 {
  227.                     case 1:
  228.                     {
  229.                         System.out.println("Nombre del cliente: ");
  230.                         NomClient[Buscar] = getStringInput();
  231.                         break;
  232.                     }
  233.                     case 2:
  234.                     {
  235.                         System.out.println("Dirección: ");
  236.                         Direccion[Buscar] = getStringInput();
  237.                         break;
  238.                     }
  239.                     case 3:
  240.                     {
  241.                         System.out.println("Edad:");
  242.                         Edad[Buscar] = read.nextInt();
  243.                     }
  244.                 }
  245.             }while(op <= 3);
  246.         }
  247.     }
  248.  
  249.     void RetirarCuenta(int cuenta)
  250.     {
  251.         System.out.println("Ingrese la cantidad que desea retirar: ");
  252.         float dinero = read.nextFloat();
  253.  
  254.         if (dinero > 0)
  255.         {
  256.             if(BuscarCuenta(cuenta) >= 0)
  257.             {
  258.                 if(cuenta == NumCuenta[BuscarCuenta(cuenta)])
  259.                 {
  260.                     if (dinero <= Saldo[BuscarCuenta(cuenta)])
  261.                     {
  262.                         Saldo[BuscarCuenta(cuenta)] -= dinero;
  263.                     }
  264.                     else
  265.                     {
  266.                         System.out.println("No tienes suficiente Saldo.");
  267.                     }
  268.                 }
  269.                 else
  270.                 {
  271.                     System.out.println("La cuenta no se encuentra.");
  272.                 }
  273.             }
  274.         }
  275.         else
  276.         {
  277.             System.out.println("La cantidad debe ser mayor a 0.");
  278.         }
  279.     }
  280.  
  281.     void MenuGestion()
  282.     {
  283.         int op = 0;
  284.         do
  285.         {
  286.             System.out.println("");
  287.             System.out.println("=======================");
  288.             System.out.println("1.- Crear nueva cuenta");
  289.             System.out.println("0) regresaar");
  290.             op = read.nextInt();
  291.  
  292.             switch(op)
  293.             {
  294.                 case 1:
  295.                 {
  296.                     Insertar_Datos();
  297.                     break;
  298.                 }
  299.             }
  300.  
  301.         } while(op > 0);
  302.     }
  303.  
  304.     void pagarServicio(int cuenta)
  305.     {
  306.         System.out.println("Ingrese la Cantidad a Pagar: ");
  307.         float Cant = read.nextFloat();
  308.         if(Cant > 0)
  309.         {
  310.             if (Saldo[BuscarCuenta(cuenta)] >= Cant)
  311.             {
  312.                 Saldo[BuscarCuenta(cuenta)] -= Cant;
  313.                 System.out.println("Cantidad Pagada: " + Cant);
  314.             }
  315.             else
  316.             {
  317.                 System.out.println("No tiene suficiente saldo.");
  318.             }
  319.         }
  320.         else
  321.         {
  322.             System.out.println("La cantidad debe ser mayor a 0.");
  323.         }
  324.     }
  325.     void menuServicios(int cuenta)
  326.     {
  327.         int op=0;
  328.         do
  329.         {
  330.             System.out.println("");
  331.             System.out.println("    1) Servicio de Luz");
  332.             System.out.println("    2) Servicio de Agua");
  333.             op = read.nextInt();
  334.             switch(op)
  335.             {
  336.                 case 1:
  337.                 {
  338.                     pagarServicio(cuenta);
  339.                     break;
  340.                 }
  341.             }
  342.  
  343.         }while(op > 0);
  344.     }
  345.  
  346.     void MenuOpciones()
  347.     {
  348.         int op=0;
  349.         do
  350.         {
  351.             System.out.println("==============================");
  352.             System.out.println("    Menu de Opciones    ");
  353.             System.out.println("1.- Datos de cuentas.");
  354.             System.out.println("2.- Depositar efectivo.");
  355.             System.out.println("3.- Retirar efectivo");
  356.             System.out.println("4.- Pago de servicios");
  357.             System.out.println("5.- Ver todas las cuentas");
  358.             System.out.println("");
  359.  
  360.             op = read.nextInt();
  361.  
  362.             switch(op)
  363.             {
  364.                 case 1:
  365.                 {
  366.                     System.out.println("Ingrese un N° de cuenta:");
  367.                     Dato = read.nextInt();
  368.                     DesplegarAlumno(Dato);
  369.                     break;
  370.                 }
  371.                 case 2:
  372.                 {
  373.                     System.out.println("Ingrese un N° de cuenta: ");
  374.                     Dato = read.nextInt();
  375.                     Ingresar_Efectivo(Dato);
  376.                     break;
  377.                 }
  378.                 case 3:
  379.                 {
  380.                     System.out.println("Ingrese un N° de cuenta: ");
  381.                     Dato = read.nextInt();
  382.                     RetirarCuenta(Dato);
  383.                     break;
  384.                 }
  385.  
  386.                 case 4: //Pago de Servicios
  387.                 {
  388.                     System.out.println("Ingrese un N° de cuenta: ");
  389.                     Dato = read.nextInt();
  390.                     menuServicios(Dato);
  391.                     break;
  392.                 }
  393.                 case 5:
  394.                 {
  395.                     Listar_Arreglo();
  396.                 }
  397.             }
  398.  
  399.         } while(op > 0);
  400.     }
  401. }
  402.  
RAW Paste Data