Cajero en C - Electronik-Pro, Informatica, Noticas,Wordpress,Facebook,Hacking,Programas,Hosting,Dominios


Estoy en un curso basico\medio de C y queria cuestionar lo siguiente, estoy con el tema control de flujo, con los bucles etc, y el punto es que me mandaron a hacer un "cajero".

Mi idea logica es la siguiente ya que estuve estudiandolos un poco.

Que al iniciar el programa CARGUE VALORES para cada billete 100 - 50 -20 blabla hasta La moneda peso. Que seria lo que el cajero segun el blindado le da al banco y bueno... seria lo que tiene disponible.

Entonces luego se ingresa un importe a retirar por ej $1200 y que el cajero entonces diga tantos billetes de 100 , tantos de 50 y asi hasta llegar al importe, en este caso 12 billetes de 100 serian. osea se entiende?
Y despues Tire la maxima y minima operacion..

Algunas ideas son bienvenidas. Tengo tiempo para hacerlo estaria bueno que me ayuden porque la verdad estoy en bolas perdon por la mala expresion ultima.
Muchas gracias y saludos.
Fijate a ver que onda.

[div style=\"margin:0px 0px 0px 0px\"]
[div class=\"smallfont\" style=\"margin-bottom:0px\"]
[input type=\"button\" value=\"Mostrar\" style=\"width:75px;font-size:10px;margin:0px;padding:0px;\" onclick=\"if (this.parentNode.parentNode.getElementsByTagName(\'div\')[1].getElementsByTagName(\'div\')[0].style.display != \'\') { this.parentNode.parentNode.getElementsByTagName(\'div\')[1].getElementsByTagName(\'div\')[0].style.display = \'\';this.innerText = \'\'; this.value = \'Esconder\'; } else { this.parentNode.parentNode.getElementsByTagName(\'div\')[1].getElementsByTagName(\'div\')[0].style.display = \'none\'; this.innerText = \'\'; this.value = \'Mostrar\'; }\"]

[div style=\"margin: 0px; padding: 0px; border: 0px inset;\"]
[div style=\"display: none;\"]
Código:
/*
Name:
Copyright:
Author: Confused
Date: 15/01/08 13:44
Description: Intento de cajero :P, carga valor inicial para que el cajero se informe
de cuantos billetes tiene. (con cero finaliza el programa).

Luego se ingresa un Importe a retirar. Si quedan billetes, el cajero da tantos billetes
dependiendo el importe, y dice cuantos restantes quedan. (mas que nada para informarme
que funciona bien).

Tambien el cajero sino tiene billetes de 100, va entregando lo que resta con billetes de abajo, es decir
50, sino tiene 20, sino 10 y asi hasta los que queden. En caso que no tenga mas te tira un printf que
no tiene billetes suficientes para el importe a retirar cargado.

Al final del programa cuando se aplica el 0, puse unas banderas para que digan
cual fue la operacion maxima y minima.

Nose borralo de ultima :P

Saludos. Cualquier cosa postea en el foro y te respondo.

*/

#include
#include

int main (void)
{

int billete100;
int billete50;
int billete20;
int billete10;
int billete5;
int billete2;
int billete1;
int importe;
int valor;
int contador100;
int contador50;
int contador20;
int contador10;
int contador5;
int contador2;
int contador1;
int max;
int min;
bool banderamax = true;
bool banderamin = true;

printf("Presione 0 para salir\n");

printf("Cargue valor 100: ");
scanf("%d",&billete100);
printf("Cargue valor 50: ");
scanf("%d",&billete50);
printf("Cargue valor 20: ");
scanf("%d",&billete20);
printf("Cargue valor 10: ");
scanf("%d",&billete10);
printf("Cargue valor 5: ");
scanf("%d",&billete5);
printf("Cargue valor 2: ");
scanf("%d",&billete2);
printf("Cargue valor 1: ");
scanf("%d",&billete1);


importe = (billete100*100)+
(billete50*50)+
(billete20*20)+
(billete10*10)+
(billete5*5)+
(billete2*2)+
(billete1*1);

printf ("Ingrese un valor: ");
scanf ("%d",&valor);
while (valor != 0 )
{

if(valor <= importe)
{
if(banderamax == true) //bandera max
{
banderamax = false;
max = valor;
}
else
{
if (valor > max)
{
max = valor;
}
}
if(banderamin == true)
{
banderamin = false;
min = valor;
}
else
{
if (valor < min)
{
min = valor;
}
}
importe = importe - valor;
contador100 = 0; //contador 100.

while (valor >= 100 && billete100 > 0)
{
valor = valor - 100;
contador100++;
billete100--;
}
contador50 = 0; //contador 50
while (valor >= 50 && billete50 > 0)
{
valor = valor - 50;
contador50++;
billete50--;
}
contador20 = 0; //contador 20
while (valor >= 20 && billete20 > 0)
{
valor = valor - 20;
contador20++;
billete20--;
}
contador10 = 0; //contador 10
while (valor >= 10 && billete10 > 0)
{
valor = valor - 10;
contador10++;
billete10--;
}
contador5 = 0; //contador 5
while (valor >= 5 && billete5 > 0)
{
valor = valor - 5;
contador5++;
billete5--;
}
contador2 = 0; //contador 2
while (valor >= 2 && billete2 > 0)
{
valor = valor - 2;
contador2++;
billete2--;
}
contador1= 0;
while (valor >= 1 && billete1 > 0) //contador 1
{
valor = valor - 1;
contador1++;
billete1--;
}


printf ("CANTIDAD DE BILLETES DE 100: %d RESTANTES %d\n",contador100,billete100);
printf ("CANTIDAD DE BILLETES DE 50: %d RESTANTES %d\n",contador50,billete50);
printf ("CANTIDAD DE BILLETES DE 20: %d RESTANTES %d\n",contador20,billete20);
printf ("CANTIDAD DE BILLETES DE 10:%d RESTANTES %d\n",contador10,billete10);
printf ("CANTIDAD DE BILLETES DE 5: %d RESTANTES %d\n",contador5,billete5);
printf ("CANTIDAD DE BILLETES DE 2: %d RESTANTES %d\n",contador2,billete2);
printf ("CANTIDAD DE BILLETES DE 1: %d RESTANTES %d\n",contador1,billete1);
}
else
{
printf ("NO QUEDAN BILLETES PARA COMPLETAR EL IMPORTE!\n\n");

}
printf ("Ingrese un valor: ");
scanf ("%d",&valor);
}
printf ("LA MAXIMA OPERACION FUE: %d\n",max);
printf ("LA MINIMA OPERACION FUE: %d\n",min);
printf (":D\n\n\n");
system("pause");

}




Confu edite el post , acostumbrense a usar el spoiler para los codigos largos asi se lee bien el post.

Salu2 y perdon.

0 comentarios:

Publicar un comentario

 
Top