Advertisement
Fhernd

AplicacionArrObjeto1.java

Jul 28th, 2012
369
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.63 KB | None | 0 0
  1. package etc;
  2.  
  3. import java.io.*;
  4.  
  5. public class AplicacionArrObjeto1
  6. {
  7.         private static Cuenta arreglo[];
  8.  
  9.         // para pedir los valores de teclado de el arreglo de cuentas ya creada
  10.         public static void pide_arreglo() throws IOException
  11.         {
  12.                 BufferedReader in =
  13.                 new BufferedReader(new InputStreamReader(System.in));
  14.                 int n;
  15.                 int numero;
  16.                 String nombre;
  17.                 double saldo;
  18.                 System.out.println( "¿Cuantos objetos deseas crear?" );
  19.                 n = Integer.parseInt(in.readLine());
  20.                        
  21.                 // creamos el arreglo de cuentas
  22.                 arreglo = new Cuenta[n];
  23.                        
  24.                 // pedimos cada valor para crear un objeto cuenta
  25.                 for (int i=0; i<n; i++)
  26.                 {
  27.                         System.out.print("Da el numero de la cuenta " + (i+1)+ " : ");
  28.                         numero = Integer.parseInt(in.readLine());
  29.                         System.out.print("Da el nombre de la cuenta " + (i+1)+ " : ");
  30.                         nombre = in.readLine();
  31.                         System.out.print("Da el saldo de la cuenta " + (i+1)+ " : ");
  32.                         saldo = Double.parseDouble(in.readLine());
  33.                        
  34.                         // se crea el objeto de la clase Cuenta como elemento del arreglo
  35.                         arreglo [i] = new Cuenta(numero, nombre, saldo);
  36.                 }                              
  37.         }
  38.  
  39.         // para desplegar los datos del arreglo de cuentas
  40.         public static void despliega_arreglo()
  41.         {
  42.                 System.out.println("Numero     Nombre           Saldo");
  43.                 for (Cuenta objeto : arreglo)
  44.                 {
  45.                         System.out.println(" " + objeto.obtenNumero() + " " +
  46.                         objeto.obtenNombre()  + " " + objeto.obtenSaldo());
  47.                 }
  48.         }
  49.  
  50.         // obteniendo la suma de los saldos de todas las cuentas
  51.         public static double suma()
  52.         {
  53.                 double total = 0.0d;
  54.                 for (int i = 0; i < arreglo.length; i++)
  55.                 {
  56.                         Cuenta objeto = arreglo[i];
  57.                         total += objeto.obtenSaldo();
  58.                 }
  59.                 return total;
  60.         }
  61.  
  62.         // para calcular el promedio de la matriz cualquiera que sea
  63.         public static double promedio()
  64.         {
  65.                 double total = 0.0d;
  66.                 for (int i = 0; i < arreglo.length; i++)
  67.                 {
  68.                         Cuenta objeto = arreglo[i];
  69.                         total += objeto.obtenSaldo();
  70.                 }
  71.                 return total / arreglo.length;
  72.         }
  73.        
  74.         /**
  75.          * Muestra las cuentas que superan un saldo específico.
  76.          */
  77.         public static void mostrarCuentasConSaldoMayor()
  78.         {
  79.             InputStreamReader isr = new InputStreamReader( System.in );
  80.             BufferedReader br = new BufferedReader( isr );
  81.            
  82.             double saldo = 0.0;
  83.            
  84.             try
  85.             {
  86.                
  87.                 System.out.print( "Dígite el saldo: " );
  88.                 saldo = Double.parseDouble( br.readLine() );
  89.             }
  90.             catch( NumberFormatException nfe )
  91.             {
  92.                 nfe.printStackTrace();
  93.             }
  94.             catch( IOException ioe )
  95.             {
  96.                 ioe.printStackTrace();
  97.             }
  98.            
  99.             System.out.println();
  100.            
  101.             System.out.printf( "%20s%20s%20s\n", "Nombre", "Número", "Saldo" );
  102.            
  103.             for( Cuenta cuenta : arreglo )
  104.             {
  105.                 if( cuenta.obtenSaldo() > saldo )
  106.                 {
  107.                     System.out.printf( "%20s%20s%20s\n", cuenta.obtenNombre(), cuenta.obtenNumero(), cuenta.obtenSaldo() );
  108.                 }
  109.             }
  110.         } // fin del método mostrarCuentasConSaldoMayor
  111.        
  112.         /**
  113.          * Muestra las cuentas que superan un saldo específico.
  114.          */
  115.         public static void mostrarCuentasConSaldoMenor()
  116.         {
  117.             InputStreamReader isr = new InputStreamReader( System.in );
  118.             BufferedReader br = new BufferedReader( isr );
  119.            
  120.             double saldo = 0.0;
  121.            
  122.             try
  123.             {
  124.                
  125.                 System.out.print( "Dígite el saldo: " );
  126.                 saldo = Double.parseDouble( br.readLine() );
  127.             }
  128.             catch( NumberFormatException nfe )
  129.             {
  130.                 nfe.printStackTrace();
  131.             }
  132.             catch( IOException ioe )
  133.             {
  134.                 ioe.printStackTrace();
  135.             }
  136.            
  137.             System.out.println();
  138.            
  139.             System.out.printf( "%20s%20s%20s\n", "Nombre", "Número", "Saldo" );
  140.            
  141.             for( Cuenta cuenta : arreglo )
  142.             {
  143.                 if( cuenta.obtenSaldo() < saldo )
  144.                 {
  145.                     System.out.printf( "%20s%20s%20s\n", cuenta.obtenNombre(), cuenta.obtenNumero(), cuenta.obtenSaldo() );
  146.                 }
  147.             }
  148.         } // fin del método mostrarCuentasConSaldoMayor
  149.  
  150.         public static void main(String[] args) throws IOException
  151.         {
  152.                 char opcion;
  153.                 BufferedReader in =
  154.                 new BufferedReader(new InputStreamReader(System.in));
  155.                 arreglo = null;
  156.                 opcion = ' ';
  157.                
  158.                 while (opcion != '5')
  159.                 {
  160.                     System.out.println(" Menu de Cuentas ");
  161.                     System.out.println();
  162.                     System.out.println("1. Pedir datos para crear Cuentas");
  163.                     System.out.println("2. Desplegar todas las cuentas");
  164.                     System.out.println("3. Desplegar Suma de los saldos");
  165.                     System.out.println("4. Desplegar Promedio de los saldos");
  166.                     System.out.println("5. Desplegar la cuenta o cuentas con mayor saldo");
  167.                     System.out.println("6. Desplegar la cuenta o cuentas con menor saldo");
  168.                     System.out.println("7. Fin");
  169.                     System.out.println("¿Opcion deseada (1-7) ?");
  170.                    
  171.                     opcion = in.readLine().charAt(0);
  172.                     switch (opcion)
  173.                     {
  174.                         case ('1') :
  175.                             System.out.println("Pidiendo datos arreglo Cuentas");
  176.                             pide_arreglo();
  177.                             System.out.println(" " + arreglo.length);
  178.                             break;
  179.                        
  180.                         case ('2') :
  181.                             System.out.println("Desplegando arreglo de Cuentas");
  182.                             despliega_arreglo();
  183.                             break;
  184.                         case ('3') :
  185.                             System.out.println("Suma de los saldos = " + suma());
  186.                             break;
  187.                         case ('4') :
  188.                             System.out.println("Promedio de los saldos = " + promedio());
  189.                             break;
  190.                         case ('5') :
  191.                             mostrarCuentasConSaldoMayor();
  192.                             break;
  193.                         case ('6') :
  194.                             mostrarCuentasConSaldoMenor();
  195.                             break;
  196.                         case ('7') :
  197.                             System.out.println("Hasta Luego!");
  198.                             break;
  199.                         default:
  200.                             System.out.println("Opcion debe ser de 1 a 6");
  201.                             break;
  202.                     };
  203.                  }
  204.         }
  205. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement