Um ejemplo de como realizar un cajero automaticoen java

import java.io.*;

public class cajero{
public static void main( String args[] ){
InputStreamReader isr;
isr = new InputStreamReader(System.in);
BufferedReader br;
br = new BufferedReader(isr);
double dSaldoInicial, dCant;
int iOpcn;

if ( args.length == 0 ){
System.out.println("ERROR!, debe proporcionar argumentos!");
System.out.println("Uso: java cajero ");
return;
}
Double d = new Double( args[0] );
dSaldoInicial = d.doubleValue();
if ( dSaldoInicial <= 0 ){
System.out.println("ERROR!, el saldo debe ser al menos de 1.00");
System.out.println("Uso: java cajero ");
return;
}
_Cajero miCajero = new _Cajero( dSaldoInicial );
iOpcn = -1;
do{
try{
System.out.println("-----------------------------------");
System.out.println("- CAJERO AUTOMATICO BANCO FELIZ -");
System.out.println("-----------------------------------");
System.out.println(" 1. Consultar saldo");
System.out.println(" 2. Depositar");
System.out.println(" 3. Retirar");
System.out.println(" 0. Terminar");
System.out.println("-----------------------------------");
System.out.print("Teclea el numero de la opcion que desee: ");
iOpcn = Integer.parseInt( br.readLine() );
System.out.println("\n\n\n");
System.out.println("\n*----------------------------------------------*");
switch ( iOpcn ){
case 1: // Consultar saldo
System.out.println("* CONSULTA DE SALDO *");
System.out.println("*----------------------------------------------*");
System.out.println("El saldo de la cuenta es: " + miCajero.Saldo() );
break;
case 2: // Hacer un deposito
System.out.println("* DEPOSITAR EN LA CUENTA *");
System.out.println("*----------------------------------------------*");
System.out.print("Escriba la cantidad a depositar: " );
d = new Double( br.readLine() );
dCant = d.doubleValue();
miCajero.Deposita( dCant );
break;
case 3: // Hacer un retiro
System.out.println("* RETIRAR DE LA CUENTA *");
System.out.println("*----------------------------------------------*");
System.out.print("El saldo de la cuenta es: " + miCajero.Saldo() +
"\nEscriba la cantidad a retirar:" );
d = new Double( br.readLine() );
dCant = d.doubleValue();
miCajero.Retira( dCant );
break;
case 0:
System.out.println("*----------------------------------------*");
System.out.println("* Gracias por visitar al cajero feliz :) *");
System.out.println("*----------------------------------------*");
System.out.println("\n\n\n");
return;
} // fin del switch
System.out.println("*----------------------------------------------*");
System.out.println("Presiona Enter para continuar...");
br.readLine();
} // fin del try
catch( Exception ex ){
System.out.println("\n\n\n");
System.out.println( "--o--o--o--o--o--o--o--o--o--");
System.out.println( "- Error! Numero incorrecto -");
System.out.println( "--o--o-A-o--o--o--o--o--o--o--");
System.out.println("\n\n\n");
} // fin del catch
}while( iOpcn != 0 );
} // fin de main
} // fin de la clase cajero

class _Cajero{
double saldo;

public _Cajero( double sal_ini ){
this.saldo = sal_ini;
} // fin del constructor

public double Saldo(){
return this.saldo;
}

public void Deposita( double d ){
if ( d <= 0 ){
System.out.println( "No existen pesos negativos... no se hizo nada" );
return;
}
this.saldo += d;
System.out.println( "El saldo de la cuenta es: " + this.saldo );
}

public void Retira( double r ){
if ( r <= 0 ){
System.out.println( "No existen pesos negativos... no se hizo nada" );
return;
}
if ( this.saldo < r ){
System.out.println( "La cantidad a retirar es mayor que el saldo disponible... no se hizo nada" );
return;
}
this.saldo -= r;
System.out.println( "El saldo de la cuenta es: " + this.saldo );
}
} // fin de la clase _Cajero

24 comentarios:

Anónimo dijo...

Muchas gracias por publicarlo, me ha servido mucho... :D

Anónimo dijo...

Q tal amigo, graciaas x el codigo pero me podrias ayudar por q lo quiero para un trabajo en la escuela.
martk1_25@hotmail.com

Anónimo dijo...

hola sta kido ese codigo esta muy pare pero tengo un pequeño problema cuando compilo el programa xke me dice ke le tengo ke proporcionar argumento pero en donde los tengo ke poner????

Anónimo dijo...

y si tambein quiero anexar pagos de agua, luz, telefono, gas e internet? gracias

Edwin dijo...

hola disculpe la molestia pero cuando compilo me sale: ERRROR!, debe proporcionar argumentos!
Uso: java cajero, MM LO ESTOY ABRIENDO CON EL jcreator con la opcion basic java application, y disculpe la ignorancia de antemano muchas gracias.

Edwin dijo...

hola disculpe la molestia pero cuando compilo me sale: ERRROR!, debe proporcionar argumentos!
Uso: java cajero, MM LO ESTOY ABRIENDO CON EL jcreator con la opcion basic java application, y disculpe la ignorancia de antemano muchas gracias.

Edwin dijo...

hola disculpe la molestia pero cuando compilo me sale: ERRROR!, debe proporcionar argumentos!
Uso: java cajero, MM LO ESTOY ABRIENDO CON EL jcreator con la opcion basic java application, y disculpe la ignorancia de antemano muchas gracias.

Anónimo dijo...

mira para poder meter el argumento que te pide : lo que tienes que hacer es entrar al menu "run" despues "set projet configuration" y por ultimo "costomize" te saldra una ventana y en el apartado donde dice "arguments" ahi pones la cantidad de donero para poder ejecutar el programa: es algo asi como menos de 1 espero lo ejecutes

Anónimo dijo...

ya intente con varas cantidades en arguments y me sigue diciendo lo mismo,que pasara?

Anónimo dijo...

Para pasar los args, a aquellos que no sabian como, eso se hace en netbeans, jcreator no trae esa opcion en el run, al menos la busque y no la encontre, lo que hay que hacer es quitar

if ( args.length == 0 ){
System.out.println("ERROR!, debe proporcionar argumentos!");
System.out.println("Uso: java cajero ");
return;
}

y esta linea cambiarla
Double d = new Double( args[0] );

en su lugar poner

Double d = new Double( 100.00 );

pueden poner otra cantidad esa cantidad sera el saldo inicial en el cajero, asi corre sin problemas en jcreator.....les saluda oscar2575

Anónimo dijo...

tienes uno con ambiente grafico?

Anónimo dijo...

me gustaria que me ayudaran con un programa de cajero automatico para antes del 10 de diciembre con una estructura ya sea en arreglos, listas,colas, plilas o arboles. por favor:-)

Anónimo dijo...

soy el mismo que le pide ayuda con el codigo de cajero automatico correo es jsg_100790@hotmail.com
por favor.

Anónimo dijo...

olle:
donde pon go esos codigos y como hago para que quede asi :D

j-j dijo...

NO ME SALE AL COMIENSO
InputStreamReader isr;
isr = new InputStreamReader(System.in);
BufferedReader br;

br = new BufferedReader(isr);
double dSaldoInicial, dCant;

ESTE TODO ME SALE SUBRAYADO

Anónimo dijo...

gracias por publicarlo

Anónimo dijo...

holaaaa muchas gracias por el codigo pero necesito este cajero hecho con pilas y colas y comvertirlo en un archivo plano por favor ayudemen

gracias

Kevinrengifo dijo...

Buen post...voy a probarlo!:.. muchas gracias de antemano

Kevinrengifo dijo...

Muhcas gracias por el post...voy a probarlo...Gracias de antemano

Anónimo dijo...

buen aporte..
gracias me sirvio de muxo....

Alvaro dijo...

Muchas gracias loko me acabas de salvar de un trabajo que habia que entregar y no tenia ni idea como hacerlo GRAX

Anónimo dijo...

gracias a todos por sus comentarios me servio de mucho el programa corre y corre muy bien solo hay que modificarlo y hacerlo mas sofisticado cuando acabe lo agrego ok espero que puedan hacerlo correr si no echenme un gritito ok bye

Anónimo dijo...

jajajajaja realmente patetico

Anónimo dijo...

hola mi correo es shallcl03@hotmail.com como hago para hacer pantallas que incluyan minimizar cerrar y todo eso ademas con color y poder cambiarle la letra gracias en este cajero exelente este ejemplo, nesecito entregar este trabajo