alguien me puede ayudar con este programa

Iniciado por MrC4RL4NG4S, 2 Mayo 2010, 00:23 AM

0 Miembros y 3 Visitantes están viendo este tema.

MrC4RL4NG4S

he estado creando este ejercicio q es sobre un banco, este nos da un numero de cuenta por defecto y nosotros podamos retirar consignar pero me aparecen algunos problemas q no he podido arreglar..



//fichero Cuenta1.java
import java.io.*;
public class Cuenta1 extends Object
{
private int numero;
protected String cliente;
public double saldo;
public int i;
public Cuenta1()
{
numero=0; cliente=" ";
saldo=0;
}
public Cuenta1(int n,String c,double s)
{
numero=n; cliente=c;
saldo=s;
}
public static void main(String args[])
{
String c; int n,i,opc; double s,retirar,consignar;
Cuenta Cuent2[]= new Cuenta[4];
InputStreamReader leer=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader (leer); //convertir en br hasta que el ususario presione enter
   try
   {
   for (i=0;i<=3;i++)
   {
   System.out.println("ingrese el nombre del cliente: ");
   c=br.readLine();
                Cuent2=new Cuenta(n,c,s);
   }
   for (i=0;i<=3;i++)
   {
   System.out.println("el cliente es"+" "+c);
   System.out.println("el saldo es"+" "+s);
   n=50702+i;
   }// fin for
   System.out.println("presione 1 para retirar 2 para consignar: ");
   if (opc==1)
   {
   System.out.println("digite el valor a consignar: ");
   consignar=br.readLine();
   s=s+consignar;
   System.out.println("el numero de cuenta es: "+" "+n);
   System.out.println("el cliente es: "+" "+c);
   System.out.println("el saldo es: "+" "+s);
   System.out.println("el valor consignado es: "+" "+consignar);
   }//fin if
   else if (opc==2)
   {
   System.out.println("digite el valor a retirar: ");
   retirar=br.readLine();
   s=s+retirar;
   System.out.println("el numero de cuenta es: "+" "+n);
   System.out.println("el cliente es: "+" "+c);
   System.out.println("el saldo es: "+" "+s);
   System.out.println("el valor retirado es: "+" "+retirar);
   }// fin if
   else
   {
   System.out.println("Lo sentimos su transaccion es invalida");
   }//cierra else
   }// cierra try   
   catch(Exception e)
         {
         e.printStackTrace();
         } //cierra catch
   } //cierra main
   } // cierra class

Darvein

Mmm... hay muchos errores de sintaxis amigo =)
Haber podrias enunciar el ejercicio completo?
¿Ilusión o realidad?

MrC4RL4NG4S

bueno la idea esq es una cuenta de banco y nosotros podemos introducir el cliente y el banco nos da el numero de cuenta por defecto, a esta cuenta le podemos consignar, retirar,mas no midificar.

Darvein

Supongo que cuando dices que al saldo de la cuenta del cliente X, debemos mostrarle la opcion de retirar o consignar esto supone que la variable saldo va a ser modificada dependiendo si vamos a retirar o consignar.
Cierto?, esperame voy a hacer tu tarea =p, dame 5 min.
¿Ilusión o realidad?

Darvein

Fijate, son 3 archivos

  • La clase banco
  • El main
  • La clase leer, una clase que tengo para lectura de datos xD
Recuerda, son 3 archivos: Main.java , banco.java y Leer.java

Código (java) [Seleccionar]

public class Main {
    public static void main(String[] args) {
        banco C[] = new banco[100]; 
        int op;
        //creando objetos para cada posicion del vector
        for (int i=0;i<=99;i++){
            banco aux = new banco();
            C[i] = aux;
        }
        // agregando clientes en el vector C
        for (int i=0;i<=2;i++){
            C[i].leer();
        }
        System.out.println("Mostrando clientes :");
        //mostando datos
        for (int i=0;i<=2;i++){
            C[i].mostrar();
        }

        // pedir nombre de un cliente y retirar/consignar
        for (int i=0;i<=2;i++){
            // aqui yo le pongo pepito, si se quiere leer un nombre desde el teclado
            // entonces creas una variable y lees el nombre de cliente
            if (C[i].getCliente().compareTo("pepito")==0){
                System.out.println("Presione 1 para consignar o 2 para retirar");
                op = Leer.datoInt();
                if(op==1)
                    C[i].consignar();
                if(op==2)
                    C[i].retirar();
                System.out.println("Datos actuales de "+C[i].getCliente());
                C[i].mostrar();
            }
        }
       
    }

}


Código (java) [Seleccionar]
public class banco {
    private String cliente;
    private int nrocuenta;
    private double saldo;

    public banco (){
        cliente = "";
        nrocuenta = 0;
        saldo = 0;
    }
    public banco(String a, int b, int c){
        cliente = a;
        nrocuenta = b;
        saldo = c;
    }
    public void leer(){
        System.out.print("Ingrese nombre de cliente: ");
        cliente = Leer.dato();
        System.out.print("Ingrese nro cuenta de cliente: ");
        nrocuenta = Leer.datoInt();
        System.out.print("Ingrese saldo de cliente: ");
        saldo = Leer.datoDouble();
    }
    public void mostrar(){
        System.out.println("\tCliente="+cliente+"\n\tNro. cuenta="+nrocuenta+"\n\tSaldo="+saldo);
    }
    public String getCliente(){
        return cliente;
    }

    public void consignar(){
        double monto;
        System.out.print("Ingrese el monto a consignar: ");
        monto = Leer.datoDouble();
        saldo = saldo + monto;
    }
    public void retirar(){
        double monto;
        System.out.print("Ingrese el monto a retirar: ");
        monto = Leer.datoDouble();
        saldo = saldo - monto;
    }
}


Código (java) [Seleccionar]

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Leer
{   public static String dato()
    {   String Cadena = "";
try
{   /*InputStreamReader isr = new InputStreamReader(System.in);
    BufferedReader Entrada = new BufferedReader(isr);
    Cadena = Entrada.readLine();*/

    // Otra alternativa para declarar la Entrada de Datos
    BufferedReader Entrada = new BufferedReader(new InputStreamReader(System.in));
    Cadena = Entrada.readLine( );
}
catch(IOException e)
{   System.err.println("Error : " + e.getMessage());
}
return Cadena;
    }

    public static short datoShort()
    {   try
{   return Short.parseShort(dato());
}
catch(NumberFormatException e)
{   return Short.MIN_VALUE;
}
    }

    public static int datoInt()
    {   try
{   return Integer.parseInt(dato());
}
catch(NumberFormatException e)
{   return Integer.MIN_VALUE;
}
    }

    public static long datoLong()
    {   try
{   return Long.parseLong(dato());
}
catch(NumberFormatException e)
{   return Long.MIN_VALUE;
}
    }

    public static float datoFloat()
    {   try
{   Float f = new Float(dato());
    return f.floatValue();
}
catch(NumberFormatException e)
{   return Float.NaN;
}
    }

    public static double datoDouble()
    {   try
{   Double d = new Double(dato());
    return d.doubleValue();
}
catch(NumberFormatException e)
{   return Double.NaN;
}
    }
}
¿Ilusión o realidad?

MrC4RL4NG4S

#5
muchas gracias esta super

Darvein

¿Ilusión o realidad?

MrC4RL4NG4S

las plantillas compilan muy bien pero no corre el programa...xD

Leyer