<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
</style>
</head>
<body class='hmmessage'>
Buenas tardes como puedo terminar este programa por favor su ayuda<BR>
El saldo debe ser mayor a 500 y no se puede retirar canidades mayor al saldo<BR>
<BR>
<BR>
Saludos cordiales<BR><BR>Gabriel Galeas<BR><BR>#include<stdio.h><BR>#include<conio.h><BR>typedef struct registro<BR>{int num_cta;<BR> char nombre[50];<BR> float saldo;<BR> char estado;<BR>};<BR>
void ingreso();<BR>void deposito();<BR>void retiro();<BR>void consultar();<BR>void salir();<BR>
FILE *ptr;<BR>registro reg;<BR>long tam=sizeof(registro);<BR>
void main()<BR>{clrscr();<BR> int op;<BR> do<BR> {<BR> printf("\n\n\t M E N U D E O P C I O N E S \n");<BR> printf("\n");<BR> printf("\n\t1.-A¥ADIR NUEVA CUENTA ");<BR> printf("\n\t2.-DEPOSITO");<BR> printf("\n\t3.-RETIRO");<BR> printf("\n\t4.-CONSULTAR");<BR> printf("\n\t5.-SALIR");<BR> printf("\n\n");<BR> printf("\n\t INGRESE OPCION : ");<BR> scanf("%d",&op);<BR> clrscr();<BR> switch(op)<BR> {case 1:<BR> ingreso();break;<BR> case 2:<BR> deposito();break;<BR> /* case 3:<BR> retiro();break;<BR> case 4:<BR> consultar();break;<BR> case 5:<BR> salir();break;*/<BR> }<BR> }while(op!=2);<BR> getch();<BR>}<BR>
void ingreso()<BR>{<BR> int num_cta_reg;<BR> ptr=fopen("person201.dat","ab");<BR> if(ptr==NULL)<BR> {<BR> printf("\nERROR DE APERTURA");<BR> getch();<BR> return;<BR> }<BR> clrscr();<BR> printf("\n\n\tINGRESO DE CUENTA\n");<BR>
//CALCULO DE REG.NUM<BR>
fseek(ptr,0,SEEK_END);<BR> num_cta_reg=ftell(ptr)/tam;<BR> reg.num_cta=num_cta_reg+1;<BR>
printf("\n\n\t CUENTA # : %d",reg.num_cta);<BR> fflush(stdin);<BR> printf("\n\n\t INGRESE NOMBRE : ");<BR> gets(reg.nombre);<BR>
reg.estado='A';<BR> fwrite(®,tam,1,ptr);<BR> if(ferror(ptr)==0)<BR> printf("\n\n\t ESCRITURA OK");<BR> else<BR> printf("\n\n\t ERROR DE ESCRITURA");<BR> fclose(ptr);<BR> getch();<BR> clrscr();<BR>}<BR>
void deposito()<BR>{<BR> float ing=0;<BR> int num_cta_reg,saldo;<BR> ptr=fopen("person201.dat","ab");<BR> if(ptr==NULL)<BR> {<BR> printf("\nERROR DE APERTURA");<BR> getch();<BR> return;<BR> }<BR> clrscr();<BR> printf("\n\n\t *** DEPOSITO ***");<BR> do<BR> {<BR> printf("\n Ingrese la cantidad que desea depositar:");<BR> scanf("%f",&ing);<BR> }while(ing<=0);<BR> saldo+=ing;<BR> printf("\n Su saldo es:%.2f",saldo);<BR>}<BR>
void consulta()<BR>{<BR> ptr=fopen("person200.dat","rb");<BR> if(ptr==NULL)<BR> {printf("\n\n\t NO EXISTE ARCHIVO");<BR> getch();<BR> return;<BR> }<BR> clrscr();<BR> printf("\n\n\t CONTENIDO DEL ARCHIVO\n");<BR> printf("\n\n\t NUMERO\tNOMBRE\tEDAD\n");<BR> fread(®,tam,1,ptr);<BR> while(!feof(ptr))<BR> {if(reg.estado=='A')<BR> printf("\n\t%d\t%s\t%d",reg.num_cta,reg.nombre);<BR> fread(®,tam,1,ptr);<BR> }<BR> fclose(ptr);<BR> getch();<BR> clrscr();<BR>}<BR>
/*void modificar()<BR>{<BR> int num_cta_reg,valor;<BR> consulta();<BR> ptr=fopen("person200.dat","r+b");<BR> if(ptr==NULL)<BR> {<BR> printf("\n Archivo No Existe: ");<BR> getch();<BR> return;<BR> }<BR>
fseek(ptr,0,SEEK_END);<BR> num_cta_reg=ftell(ptr)/tam;<BR> do<BR> {<BR> printf("\n Ingrese N£mero de Registro a Modificar (1-%d):",num_cta_reg);<BR> scanf("%d",&valor);<BR> }while(valor<1 || valor>num_cta_reg);<BR>
fseek(ptr,(valor-1)*tam,SEEK_SET); //MUEVE EL PUNTERO AL INICIO DEL REGISTRO<BR> fread(®,tam,1,ptr);<BR> printf("\n Informacion Actual");<BR> printf("\n Nombre =%s",reg.nombre);<BR> printf("\n Edad =%d",reg.edad);<BR> printf("\n Ingrese Nueva Informacion: \n ");fflush(stdin);<BR> printf("\n Ingrese Nuevo Nombre: \n ");gets(reg.nombre);<BR> printf("\n Ingrese Nueva Edad: \n "); scanf("%d",®.edad);<BR> fseek(ptr,-tam,SEEK_CUR);<BR> fwrite(®,tam,1,ptr);<BR>
if(ferror(ptr)==0)<BR> printf("\n\n REGISTRO MODIFICADO CON EXITO");<BR>
fclose(ptr);<BR> getch();<BR> clrscr();<BR>}<BR>
*/<BR>/*void eliminar()<BR>{<BR> int num_cta_reg,valor;char op;<BR> consulta();<BR> ptr=fopen("person200.dat","r+b");<BR> if(ptr==NULL)<BR> {<BR> printf("\n Archivo No Existe: ");<BR> getch();<BR> return;<BR> }<BR>
fseek(ptr,0,SEEK_END);<BR> num_cta_reg=ftell(ptr)/tam;<BR>
do<BR> {<BR> printf("\n Ingrese N£mero de Registro a eliminar (1-%d):",num_cta_reg);<BR> scanf("%d",&valor);<BR> }while(valor<1 || valor>num_cta_reg);<BR>
<BR> fseek(ptr,(valor-1)*tam,SEEK_SET); // Del registro que se quiere eliminar<BR>
fread(®,tam,1,ptr);<BR>
printf("\n REGISTRO :\n");<BR> printf("\n Nombre=%s",reg.nombre);<BR> printf("\n Edad=%d",reg.edad);<BR>
<BR> fflush(stdin);<BR> printf("\n DESEA ELIMINAR EL REGISTRO: ");<BR> scanf("%c",&op);<BR> if(op=='S' || op=='s')<BR> {<BR> reg.estado='I';<BR> fseek(ptr,-tam,SEEK_CUR);<BR> fwrite(®,tam,1,ptr);<BR> if(ferror(ptr)==0)<BR> printf("\n REGISTRO ELIMINADO OK");<BR> }<BR> fclose(ptr);<BR> getch();<BR> clrscr();<BR>}<BR>
void salir()<BR>{<BR> clrscr();<BR> printf("\n\n\t Gracias por su visita");<BR>
}<BR>*/<BR>
<BR><br /><hr />¿Tu fondo de escritorio es aburrido? <a href=' http://search.live.com/results.aspx?q=imagenes+fondos+de+escritorio&mkt=es-ES&setlang=es-ES&FORM=W5WA&mkt=es-es' target='_new'>Anímalo con las imágenes más espectaculares</a></body>
</html>