La plataforma de Yahoo Respuestas cerrará definitivamente el próximo 4 de mayo de 2021 y solo estará disponible en modo de lectura. Ningún otro producto de Yahoo ni tu cuenta personal se verán afectados por este cambio. Si necesitas más información sobre el cierre de Yahoo Respuestas y cómo descargar tus datos puedes acceder a esta página de ayuda.

?
Lv 5
? preguntado en Computadoras e internetDiseño y Programación · hace 1 década

¿Ayuda con este codigo C++?

Hola amigos, tengo que hacer un codigo que dado el valor de un producto, calcule el cambio (devuelto) dependiendo el billete o moneda que entregue.

tengo este codigo, pero no se si sea cuestion de librerias o de algun error en los array ya que no compila o se queda mostrando un valor basura sin fin.

les agradezco si me pueden ayudar a corregirlo, o tienen un programa que cumpla con este proposito.

#include <iostream>

#include <stdlib.h>

#include <string.h>

#include <math.h>

using namespace std;

int main(string[])

{

int bri;

bri [15]={ 50000, 20000, 10000, 5000, 2000, 1000, 500, 200, 100, 50, 20, 10};// Identificando el arreglo

int guardar;

guardar [10];// Estbleciendo el limite del nuevo arreglo

double total, pago, devuelta;//Declarandolas como reales porque puede tolerar valores decimales

int r;

cout<<"\n Programa para calcular la devuelta ideal de una compra:";

cout<<"\nIntroduzca el Total de su compra: $ ";

cin>>total;

cout<<" \nMe Pagara con un billete de :$";

cin>>pago;

devuelta = pago - total;//Operacion

r = 0;

while (devuelta != 0 && r != 10)// Ahora el bucle de la devuelta (Como fue expuesto en clase)

{

while (devuelta >= bri)

{

guardar[r]++;// El contador de la cantidad de billetes

devuelta -= bri;

}

r++;

}

for (r = 0; r < bri; r++)// El contador de los tipos de billetes

{

if (guardar[r] != 0)//Condicionante para saber que no se quedara debiendo!!

cout<<guardar<< " billetes de " << " " << bri;

}

}

muchas gracias

2 respuestas

Calificación
  • aem
    Lv 7
    hace 1 década
    Respuesta preferida

    //#include <cstdlib.h> para Dev C y usar system("CLS") en vez de clrscr() y system("PAUSE")

    #include <stdio.h> //en lugar de getch() o getche()

    #include <iostream.h>

    #include <conio.h>

    int main()

    {

    clrscr();

    //system("CLS");

    int cantidad, mone;

    float conmoneda, pagacon,precio;

    printf("Precio del Articulo: ");

    scanf("%f",&precio);

    printf("Paga con: ");

    scanf("%f",&pagacon);

    conmoneda=pagacon-precio;

    printf("VUELTO A ENTREGAR %4.2f",conmoneda);

    cantidad=conmoneda;

    mone=100*(conmoneda-cantidad);

    //empieza calculo

    printf("\nLa cantidad de billetes de %5d es %5d",1000,cantidad/1000);

    //actualizo valor de cantidad

    cantidad=cantidad%1000;

    printf("\nLa cantidad de billetes de %5d es %5d",500,cantidad/500);

    //actualizo valor de cantidad

    cantidad=cantidad%500;

    printf("\nLa cantidad de billetes de %5d es %5d",200,cantidad/200);

    //actualizo valor de cantidad

    cantidad=cantidad%200;

    //actualizo valor de cantidad

    cantidad=cantidad%1000;

    printf("\nLa cantidad de billetes de %5d es %5d",100,cantidad/100);

    //actualizo valor de cantidad

    cantidad=cantidad%100;

    printf("\nLa cantidad de billetes de %5d es %5d",50,cantidad/50);

    //actualizo valor de cantidad

    cantidad=cantidad%50;

    //actualizo valor de cantidad

    cantidad=cantidad%1000;

    printf("\nLa cantidad de billetes de %5d es %5d",20,cantidad/20);

    //actualizo valor de cantidad

    cantidad=cantidad%20;

    printf("\nLa cantidad de billetes de %5d es %5d",10,cantidad/10);

    //actualizo valor de cantidad

    cantidad=cantidad%10;

    //actualizo valor de cantidad

    printf("\nLa cantidad de billetes de %5d es %5d",5,cantidad/5);

    //actualizo valor de cantidad

    cantidad=cantidad%5;

    printf("\nLa cantidad de billetes de %5d es %5d",2,cantidad/2);

    //actualizo valor de cantidad

    cantidad=cantidad%2;

    printf("\n\nMONEDAS =============================");

    printf("\nLa cantidad de monedas de %5d es %5d",1,cantidad/1);

    //traigo los decimales

    cantidad=mone;

    printf("\nLa cantidad de monedas de %5d es %5d",50,cantidad/50);

    //actualizo valor de cantidad

    cantidad=cantidad%50;

    printf("\nLa cantidad de monedas de %5d es %5d",25,cantidad/25);

    //actualizo valor de cantidad

    cantidad=cantidad%25;

    printf("\nLa cantidad de monedas de %5d es %5d",10,cantidad/10);

    //actualizo valor de cantidad

    cantidad=cantidad%10;

    printf("\nLa cantidad de monedas de %5d es %5d",5,cantidad/5);

    //actualizo valor de cantidad

    cantidad=cantidad%5;

    printf("\nSALDO EN CENTAVOS %5d",cantidad);

    getche();

    //system("pause");

    return 0;

    }

    Fuente(s): Dios te bendiga Saludos Antonio
  • hace 4 años

    { int i, num, x, y, z, m; Console.WriteLine("Introduce un numero:"); num=Convert.ToInt32(Console.ReadLine()... for (i=a million; i<=20; i++) { if num>0 then { x=x+a million; if num<a million; and num>one hundred then { y=y+a million; if num <one hundred and num>1000 then { z=z+a million; if num < 1000 then m+a million; } } } } Console.WriteLine("Numeros totales menores a nil:", x); Console.WriteLine("Numeros totales entre a million y one hundred:", y); Console.WriteLine("Numeros totales entre one hundred and one y 1000:", z); Console.WriteLine("Numeros totales mayores a 1000:", m); } Console.ReadKey();

¿Aún tienes preguntas? Pregunta ahora para obtener respuestas.