Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/03/2016, 10:51
morbo198
 
Fecha de Ingreso: febrero-2011
Mensajes: 41
Antigüedad: 13 años, 3 meses
Puntos: 1
Validar entrada de datos

hola amigos tengo este codigo que me arroja este resultado
Proporciona el numero de boletos que desea comprar: 5
total a pagar: 225
monto a pagar: 200

el monto a pagar debe de ser mayor o igual al total a pagar: 150
el monto a pagar debe de ser mayor o igual al total a pagar: 1
el monto a pagar debe de ser mayor o igual al total a pagar: 355

su cambio es 130
1 billete de $100
1 billete de $20
1 moneda de $10

const int precio = 45;

int main()
{
int nBoletos,total,pago,cambio;
printf("************ Venta de Boletos CineESAD ************\n\n");

/*Datos de entrada*/
printf("Proporciona el numero de boletos que desea comprar:\t");
scanf("%d",&nBoletos);

/*Calcula el total de la venta e mostramos el total en pantalla*/
total = nBoletos * precio;
printf("El monto a pagar es: %d\n",total);

/*Lee el pago*/
printf("Indique el monto a pagar: ");

do
{
scanf("%d",&pago);
if (pago <=total)
printf("\n El monto a pagar debe de ser mayor o igual al total: ");
} while(pago <= total);

/*Calculo del cambio*/
cambio = pago - total;
printf("\n\n El monto de su cambio es %d\n",cambio);

if ((cambio/200)>=1)
{
printf("\n\t%d billetes de $200", cambio/200);
cambio = cambio % 200;/*calculando el residuo*/
}

if ((cambio/100)>=1)
{
printf("\n\t%d billetes de $100", cambio/100);
cambio = cambio % 100;/*calculando el residuo*/
}

if ((cambio/50)>=1)
{
printf("\n\t%d billetes de $50", cambio/50);
cambio = cambio % 50;/*calculando el residuo*/
}

if ((cambio/20)>=1)
{
printf("\n\t%d billetes de $20", cambio/20);
cambio = cambio % 20;/*calculando el residuo*/
}

if ((cambio/10)>=1)
{
printf("\n\t%d monedas de $10", cambio/10);
cambio = cambio % 10;/*calculando el residuo*/
}


if ((cambio/5)>=1)
{
printf("\n\t%d monedas de $5", cambio/5);
cambio = cambio % 5;/*calculando el residuo*/
}

if ((cambio/2)>=1)
{
printf("\n\t%d monedas de $2", cambio/2);
cambio = cambio % 2;/*calculando el residuo*/
}

if ((cambio/1)>=1)
{
printf("\n\t%d monedas de $1", cambio/1);
cambio = cambio % 1;/*calculando el residuo*/
}
printf("\n");
system("pause");
return 0;
}

y lo que quiero realizar es que no me escribe varias veces que deba de ingresar un monto mayor o igual al total

que si la primera vez ingrese un numero menor me diga que ingrese un monto mayor a pagar y si vuelvo a ingresar un monto menor que solo me pide el monto y no me vuelta a escribir la leyenda que ingrese un monto mayor al total, no se si me podrian dar una idea gracias