import java.io.*;
public class AplicacionArrObjeto3 {
private static Cuenta arreglo[];
// para pedir los valores de teclado de el arreglo de cuentas ya creada
public static void pide_arreglo() throws IOException{
BufferedReader in =
new BufferedReader(new InputStreamReader(System.in));
int n;
int numero;
String nombre;
double saldo;
System.out.println("�Cuantos objetos deseas crear?");
n = Integer.parseInt(in.readLine());
// creamos el arreglo de cuentas
arreglo = new Cuenta[n];
// pedimos cada valor para crear un objeto cuenta
for (int i=0; i<n; i++) {
System.out.print("Da el numero de la cuenta " + (i+1)+ " : ");
numero = Integer.parseInt(in.readLine());
System.out.print("Da el nombre de la cuenta " + (i+1)+ " : ");
nombre = in.readLine();
System.out.print("Da el saldo de la cuenta " + (i+1)+ " : ");
saldo = Double.parseDouble(in.readLine());
// se crea el objeto de la clase Cuenta como elemento del arreglo
arreglo [i] = new Cuenta(numero, nombre, saldo);
}
}
// para desplegar los datos del arreglo de cuentas
public static void despliega_arreglo() {
System.out.println("Numero Nombre Saldo");
for (Cuenta objeto : arreglo) {
System.out.println(" " + objeto.obtenNumero() + " " +
objeto.obtenNombre() + " " + objeto.obtenSaldo());
}
}
// obteniendo la suma de los saldos de todas las cuentas
public static double suma() {
double total = 0.0d;
for (Cuenta objeto : arreglo) {
total += objeto.obtenSaldo();
}
return total;
}
// para calcular el promedio de la matriz cualquiera que sea
public static double promedio() {
double total = 0.0d;
for (Cuenta objeto : arreglo) {
total += objeto.obtenSaldo();
}
return total/arreglo.length;
}
// pedir un saldo y desplegar que tienen un saldo mayor o igual
public static void despliega_saldos() throws IOException{
BufferedReader in =
new BufferedReader(new InputStreamReader(System.in));
System.out.println("�Arriba de cual saldo?");
double saldo = Double.parseDouble(in.readLine());
// buscamos en cada objeto Cuenta del arreglo
for (Cuenta objeto : arreglo) {
if (objeto.obtenSaldo() >= saldo) {
System.out.println(" Nombre " + objeto.obtenNombre() +
" Cuenta " + objeto.obtenNumero() +
" Saldo " + objeto.obtenSaldo());
}
}
}
// ordenamos el arreglo en base al numero de cuenta
public static void ordena() throws IOException{
// buscamos en cada objeto Cuenta del arreglo
for (int i=0; i < arreglo.length-1; i++ ) {
for (int j=i+1; j<arreglo.length; j++) {
if (arreglo[i].obtenNumero() > arreglo[j].obtenNumero()) {
Cuenta temp = arreglo[i];
arreglo[i] = arreglo[j];
arreglo[j] = temp;
}
}
}
}
public static void main(String[] args) throws IOException {
char opcion;
BufferedReader in =
new BufferedReader(new InputStreamReader(System.in));
arreglo = null;
opcion = ' ';
while (opcion != '7') {
System.out.println(" Menu de Cuentas");
System.out.println();
System.out.println("1. Pedir datos para crear Cuentas");
System.out.println("2. Desplegar todas las cuentas");
System.out.println("3. Desplegar Suma de los saldos");
System.out.println("4. Desplegar Promedio de los saldos");
System.out.println("5. Desplegar Cuentas arriba de un Saldo");
System.out.println("6. Ordenar el arreglo");
System.out.println("7. Fin");
System.out.println("�Opcion deseada (1-6) ?");
opcion = in.readLine().charAt(0);
switch (opcion) {
case ('1') :
System.out.println("Pidiendo datos arreglo Cuentas");
pide_arreglo();
System.out.println(" " + arreglo.length);
break;
case ('2') :
System.out.println("Desplegando arreglo de Cuentas");
despliega_arreglo();
break;
case ('3') :
System.out.println("Suma de los saldos = " + suma());
break;
case ('4') :
System.out.println("Promedio de los saldos = " + promedio());
break;
case ('5') :
System.out.println("Desplegando Cuentas arriba de saldo");
despliega_saldos();
break;
case ('6') :
System.out.println("Ordenando Cuentas por numero");
ordena();
break;
case ('7') :
System.out.println("Hasta Luego!");
break;
default:
System.out.println("Opcion debe ser de 1 a 5");
break;
};
}
}
}
sábado, 14 de julio de 2012
4.2.3. AplicacionArregloObjeto3.java
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario