jueves, 1 de diciembre de 2011

CAJERO AUTOMATICO


ESTE PROGRAMA SIMULA UN CAJERO AUTOMATICO

CALSE PRINCIPAL
import java.io.*;
public class Principal {
public static InputStreamReader Leer = new InputStreamReader(System.in);
public static BufferedReader Teclado = new BufferedReader(Leer);
public static void main(String[] args)throws IOException  {
int a=0;
x [] b = new x[4];
b[0]=new cuenta(4000,"luis");
b[1]=new cuenta(5000,"omar");
b[2]=new cuenta(5000,"dario");
b[3]=new cuenta(5000,"fabio");
x [] e = new poli[4];
c [0]=new transferencia(0,"luis");
c [1]=new transferencia(0,"omar");
c [2]=new transferencia(0,"dario");
c [3]=new transferencia(0,"fabio");
int d=0;
int [] c=new int [5];
e[0]=1111;e[1]=2222;e[2]=3333;e[3]=4444;e[4]=5555;
int [] l=new int [5];
l[0]=111;l[1]=222;l[2]=333;l[3]=444;l[4]=555;
int f=0;boolean f=false;
do{
try{ v=false;
 do{
System.out.println(" Escriba su Contraseña");
int urser=Integer.parseInt(Teclado.readLine());
for(int i=0;i<5;i++){
if(urser==c[i])
{k=i;
System.out.println(" Banco Pichincha les da la bienvenida   ");
d=1;
f=4;
b[i].info();}}
if(d==0)
System.out.println("La comtraseña es Incorrecta  ");
if(f!=4){
System.out.println(" Digiteel Numero 3 para Regresar");
f=Integer.parseInt(Teclado.readLine());    
}}while(f==3);}
catch(NumberFormatException e ){f=true;
System.out.println(" Contraseña incorrecta"+"Digite solo Numero "+e);
}
}while(f);
if(d==1){int op; 
do{
System.out.println("Que Accion Desea Realizar 1:Transferencia de Dinero - 2:Retiro de Dinero -3:Consulta de su Cuenta - 4:Cambiar su Contraseña  ");
op=Integer.parseInt(Teclado.readLine());
switch (op) {
case 1:boolean g=false;boolean veri,hh;
do{
try{conf=false;
System.out.println(" Ingrese el Numero de su Cuenta");
int urser=Integer.parseInt(Teclado.readLine());
do{
try{q=false;
for(int i=0;i<5;i++){
if(urser==a[i]){h=true;
System.out.println(" Ingrese la Cantidad a Retirar");
int can=Integer.parseInt(Teclado.readLine());
int k=b[k].set();
if(cantid<=j){
b[k].transaccion(cantid);
c[i].transaccion(cantid);
c[i].info();
}else System.out.println(" No Cuenta con Suficiente Dinero");
}}}
catch(NumberFormatException e){q=true;
System.out.println(" Error Ingrese solo Numero"+ e);
}}while(q);
}catch(NumberFormatException e){veri=true;
System.out.println("Error Ingrese solo Numero "+ e);
}}while(conf);
if(h==false)
System.out.println(" El Numero de Cuenta que Ingreso no es Correcto");
int las=b[k].set();
System.out.println("Usted tiene Un Saldo de "+las);
break;
case 2:boolean m;
do{m=false;
try{
System.out.println(" Ingrese la cantidad de Dinero");
int n=Integer.parseInt(Teclado.readLine());
if(n<=b[k].set()){
b[k].retirar(cantid);
}else System.out.println("No Cuenta con Suficiente Dinero ");
int saldo=b[k].set();
System.out.println("Usted tiene Un Saldo de "+saldo);
}catch(NumberFormatException e ){m=true;
System.out.println("Error Ingrese solo Numero "+e);
}}while(m);
break;
case 3:
b[k].info();
break;
case 4:boolean o,l=true,u=true;
do{
try{o=false;
do{
System.out.println("Escriba su Contraseña ");
int z=Integer.parseInt(Teclado.readLine());
if(z==e[k]){t=false;
do{
System.out.println("Escriba su Nueva Contraseña ");
z=Integer.parseInt(Teclado.readLine());
System.out.println("Vuelva a Escriba su Nueva Contraseña ");
int jj=Integer.parseInt(Teclado.readLine());
if(z==jj){n=false;
System.out.println("Ha Cambiado su Contraseña con Exito");
e[k]=z;
}else  System.out.println(" No coincida la Contraseña");
}while(u);
}else System.out.println("Error Vuelva a Escriba su  Contraseña ");
}while(t);
}catch(NumberFormatException e ){o=true;
System.out.println(" Error"+"Ingrese solo Numero  "+e);
}}while(o);
}}while(op<5); }}}
CLASE CAJERO
public class cajero extends x implements interface {
public static int a=5;
public cajero(int b,String nom) {
super(b,nom);
 //this.c=d;
}
@Override
public int set() {
return this.b;
}
@Override
public int transaccion( int c) {
if(c>5){
int e=(c*f)/100 ;
this.b-=c+e;
}else System.out.println("No Puede Hacer Retiro Inferior a $5");   return this.saldo;}
@Override
public int consul() {
return this.a;
}
@Override
public void retiro(int r) {
if(r>5){
int o=(r*in)/100 ;
this.saldo-=r+o;
}else System.out.println("No Puede Hacer Retiro Inferior a $5 "); 
}
@Override
public void info() {
System.out.println("Saludos   "+this.nombre);
System.out.println("El Saldo de su Cuenta es de:   "+consulta());
}
}
CLASE INTERFACE
public interface interface {
public  int consul();
public int r=12;
}
CLASE POLIMORFISMO
public abstract class polimorfismo {
protected int b;
protected String nom;
public poli(int b,String nom) {
this.b =b;
this.nom=nom;
}
public abstract int set();
public abstract int trans(int c);
public abstract void retiro(int y);
public abstract void info();
}
CLASE TRANSFERIR
public class transfer  extends polimorfismo  {
public static int a=5;
public transfer(int b, String nom) {
 super(b, nom);
}
@Override
public void retirar(int y) {
if(y>5){
int o=(y*a)/100 ;
this.saldo-=y+e;
}else System.out.println("No Puede Hacer Retiro Inferior a $5 ");
}
@Override
public int set() {
return this.b;   
}
@Override
public void info() {
System.out.println("El valor que acaba de Transferir es de" +this.saldo);
}
@Override
public int trans( int c) {
return this.saldo+=c;
}