PROGRAMA EN C

Iniciado por gmojon, 13 Diciembre 2013, 01:57 AM

0 Miembros y 1 Visitante están viendo este tema.

gmojon

Que tal! Saludos! Tengo un proyecto para la universidad y es hacer un programa ("cajero automatico"), junto con otros 2, aqui esta la info, y lo que llevo, debo hacer el analisis completo
1 Análisis (Datos de entrada, Datos de salida) 
2 Diseño (proceso y construcción del algoritmo) 
3 Verificación del algoritmo 
4 Tabla de variables y constantes
5 Herramientas de programacion (Diagrama de Flujo y pseudocódigo)
6 Codificación (programa en lenguaje C)
------------------------------------------------------------------------------------
Un cajero automático tiene billetes de las siguientes denominaciones
 100 billetes de $50.00
 100 billetes de $100.00
 100 billetes de $200.00

1. El cajero tiene almacenados las cuentas, password, saldo y nombre de 4 clientes.

2. El saldo inicial del cajero se obtiene a partir de la cantidad de billetes de cada denominación.

3. El programa empieza pidiendo la cuenta y password del cliente.

Considera las siguientes validaciones y mensajes.

a) Durante la captura del password debe verse en pantalla un * por cada carácter que teclees.
b) El password siempre debe tener una longitud de 6 caracteres.
c) Los caracteres permitidos en el password son letras mayúsculas o minúsculas, dígitos y el
guion bajo.
d) Se tienen 3 oportunidades para teclear el password correctamente. Si en tres oportunidades
no dan el password correcto, terminar el programa.
e) Considera todas las situaciones en las que pudieras imprimir estos mensajes.
"La cuenta no existe"
"La cuenta existe pero password incorrecto"
"Error el password tiene caracteres inválidos"
"Error el password tiene una longitud diferente de 6 caracteres"
"Bienvenido (nombre del cliente) al Sistema"
"Agotaste el límite permitido de intentos para ingresar al sistema. ADIOS"


Una vez ingresando al sistema presentar las opciones 1. Retirar 2. Depositar 3. Salir

Retirar. Solicitar una cantidad a retirar, la cual se debe VALIDAR que sea múltiplo de 50 y no exceda los
4000 pesos, preguntar repetidas veces hasta que de una cantidad correcta. La cantidad a retirar debe
ser menor o igual al saldo del cajero de no ser así imprime el mensaje "el cajero no tiene fondos",
también la cantidad debe ser menor o igual al saldo del cliente, de no ser así imprime el mensaje "saldo
insuficiente en la cuenta". Imprimir el total de billetes que se entrega de cada denominación para cubrir
el retiro, el saldo del cliente y el saldo del cajero. Al finalizar exitosamente o no el retiro, permitir al
cliente decidir que quiere hacer 1. Retirar 2. Depositar 3. Salir (No se está pidiendo la validación contra
el número de billetes existentes de cada denominación)

Depositar. Pedir la cantidad a depositar. Imprimir el nombre del cliente su saldo anterior y su saldo
actualizado, permitir al cliente decidir que quiere hacer 1. Retirar 2. Depositar 3. Salir

...
esto es lo que llevo... ojala me pudieran ayudar! gracias de antemano!

#include <stdio.h>
#include <stdlib.h>
#define NOM 30

int main()
{

int billetes[2][3];
int clientes[4][4];
int b, n, op, ret, dep;
char pass, nom[NOM];
char nom1;


b=0

printf("\nDAME USUARIO\n");
scanf("V[nom]", nom);
printf("\nDAME PASSWORD\n");
scanf("%S", pass);
while(a!=4)
{
   if(nomn1=clientes[a][2])
   {
      b=1
      if(pass=clientes[a][4])
      {
         n=a;
         a=4;
      }
      else
      {
         printf("\nCONTRASEÑA INCORRECTA");
      }
   }
   if(b=0)
   {
      printf(\n"EL USUARIO NO EXISTE\n");
   }
   else
   {
      printf("\nBIENVENIDO %s", nom1);
      printf("\nTU SALDO ACTUAL ES DE %d", clientes[n][3]);
   }
   while(op!=3)
   {
      printf("\n¿QUE DESEAS HACER? 1]RETIRO 2]DEPOSITAR 3]SALIR");
      scanf("%d", &op);
      switch (op)
      {
         case 1: printf("\nCUANTO RETIRAS?");
            scanf("%d", ret);
            if(cleintes[n][3]!<ret)
            {
               x=clientes[n][3];
               cambio(x-ret);
               clientes[n][3]-=ret;
            }
            break;
            
      
         case 2: printf("\nCUANTO VAS A DEPOSITAR");
            scanf("%d", dep);
            if((dep%50)=0)
            {
               clientes[n][3]+=dep;
            }
            break;
      }
   }
}
}

main cambio(int y, int z)
int b
{
   b=3
   while(b!=0)
   {
      if(ret=billetes[ b ][0])
      {
         billetes[ b ][2]+=1;
      }
   }
   b--;
   while(b!=3)
   {
      printf("\nTIENES %d BILLETES DE%d", billetes[ b ][3], billetes[ b ][0]);