Foros del Web » Programación para mayores de 30 ;) » C/C++ »

[SOLUCIONADO] Desglose de Moneda

Estas en el tema de Desglose de Moneda en el foro de C/C++ en Foros del Web. Puxa disculpa a todos por molestar por este tema pero entre a estudiar y no caxo de como hacer un problema que me pusieron si ...
  #1 (permalink)  
Antiguo 31/03/2014, 16:22
Avatar de Rodrigo_Arenas  
Fecha de Ingreso: junio-2011
Mensajes: 44
Antigüedad: 12 años, 10 meses
Puntos: 0
Desglose de Moneda

Puxa disculpa a todos por molestar por este tema pero entre a estudiar y no caxo de como hacer un problema que me pusieron si alguein me puede guiar ya que para programar en C++ soy ultra nulo se los agradeceria en el alma, es lo siguiente

Realiza un programa que proporcione el desglose en billetes y monedas de una cantidad exacta de euros. Hay billetes de 500, 200, 100, 50, 20, 10 y 5 euros y monedas de 1 y 2 euros. Por ejemplo, si deseamos conocer el desglose de 434 euros, el programa mostrara por pantalla el siguiente resultado:

2 billetes de 200 euros .
1 billete de 20 euros .
1 billete de 10 euros .
2 monedas de 2 euros .

Observa que la palabra billete y moneda concuerda en numero con la cantidad de billetes o monedas y que si no hay piezas de un determinado tipo (en el ejemplo, de 1 euro), no muestra el mensaje correspondiente

gracias a todos
  #2 (permalink)  
Antiguo 31/03/2014, 18:43
 
Fecha de Ingreso: enero-2012
Ubicación: Buenos Aires
Mensajes: 745
Antigüedad: 12 años, 3 meses
Puntos: 35
Respuesta: Desglose de Moneda

Hola. Antes de que te lo digan los demás, intenta hacer al menos una mínima porción de código para que podamos ayudarte.
  #3 (permalink)  
Antiguo 31/03/2014, 19:11
Avatar de Rodrigo_Arenas  
Fecha de Ingreso: junio-2011
Mensajes: 44
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Desglose de Moneda

no si tengo un codigo es que no lo pude cargar como keria pero aka lo copio para que lo vean

Código C++:
Ver original
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main(){
  5.     int euros;
  6.     cout << "Ingresse cantidad a desglosar: "; cout << endl;
  7.     cin >> euros;
  8.    
  9.  
  10.     if (euros / 500 == 1 ){
  11.         cout << euros / 500 << " billete de 500 euros." << endl;
  12.     } else {
  13.             cout << euros / 500 << " billetes de 500 euros." << endl;
  14.     }
  15.     euros %= 500;
  16.  
  17.     if (euros / 200 == 1 ){
  18.         cout << euros / 200 << " billete de 200 euros." << endl;
  19.     } else {
  20.             cout << euros / 200 << " billetes de 200 euros." << endl;
  21.     }
  22.     euros %= 200;
  23.  
  24.     if (euros / 100 == 1 ){
  25.         cout << euros / 100 << " billete de 100 euros." << endl;
  26.     } else {
  27.             cout << euros / 100 << " billetes de 100 euros." << endl;
  28.     }
  29.     euros %= 100;
  30.  
  31.     if (euros / 50 == 1 ){
  32.         cout << euros / 50 << " billete de 50 euros." << endl;
  33.     } else {
  34.             cout << euros / 50 << " billetes de 50 euros." << endl;
  35.     }
  36.     euros %= 50;
  37.  
  38.     if (euros / 20 == 1 ){
  39.         cout << euros / 20 << " billete de 20 euros." << endl;
  40.     } else {
  41.             cout << euros / 20 << " billetes de 20 euros." << endl;
  42.     }
  43.     euros %= 20;
  44.  
  45.     if (euros / 10 == 1 ){
  46.         cout << euros / 10 << " billete de 10 euros." << endl;
  47.     } else {
  48.             cout << euros / 10 << " billetes de 10 euros" << endl;
  49.     }
  50.     euros %= 10;
  51.  
  52.     if (euros / 5 == 1 ){
  53.         cout << euros / 5 << " billete de 5 euros." << endl;
  54.     } else {
  55.             cout << euros / 5 << " billete de 5 euros." << endl;
  56.     }
  57.     euros %= 5;
  58.  
  59.     if (euros / 2 == 1 ){
  60.         cout << euros / 2 << " moneda de 2 euros." << endl;
  61.     } else {
  62.             cout << euros / 2 << " monedas de 2 euros." << endl;
  63.     }
  64.     euros %= 2;
  65.  
  66.     if (euros / 1 == 1 ){
  67.         cout << euros / 1 << " moneda de 1 euro." << endl;
  68.     } else {
  69.             cout << euros / 1 << " monedas de 1 euro." << endl;
  70.     }
  71.     euros %= 1;
  72. }

pero cuando pongo el valor me aparecen = los que estan en 0 y no deberian aparecer me parece que es algo con los IF pero no estoy seguro
  #4 (permalink)  
Antiguo 31/03/2014, 22:57
Avatar de vangodp  
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 10 años, 6 meses
Puntos: 38
Respuesta: Desglose de Moneda

no entiendo el código de arriba XD
Creo que seria así:
Código C++:
Ver original
  1. //Si existen billetes mayores o iguales al de 500 entonces hacemos el calculo para 500 caso contrario saltamos al siguiente que es el de 200.
  2.        if ( euros >= 500)
  3.         cout << "De 500:" << euros/500 << endl;
  4. //Hasta aquí realmente no lo habíamos tocado al valor, ahora le quitamos todo lo que sea mayor a 999, si antes teníamos 10999 nos quedamos con el 999 XD
  5.         euros = euros%500;
  6.  
  7. //Aquí abajo lo mismo pero para 200

Código C++:
Ver original
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main() {
  5.  
  6.     int euros = 173;
  7.    
  8.     if ( euros >= 500 ) {
  9.         cout << "De 500:" << euros / 500 << endl;
  10.     }
  11.    
  12.     euros = euros % 500;
  13.    
  14.     //200
  15.     if ( euros >= 200 ) {
  16.         cout << "De 200:" << euros / 200 << endl;
  17.     }
  18.    
  19.     euros = euros % 200;
  20.    
  21.     //100
  22.     if ( euros >= 100 ) {
  23.         cout << "De 100:" << euros / 100 << endl;
  24.     }
  25.    
  26.     euros = euros % 100;
  27.    
  28.     //50
  29.     if ( euros >= 50 ) {
  30.         cout << "De 50:" << euros / 50 << endl;
  31.     }
  32.    
  33.     euros = euros % 50;
  34.    
  35.     //20
  36.     if ( euros >= 20 ) {
  37.         cout << "De 20:" << euros / 20 << endl;
  38.     }
  39.    
  40.     euros = euros % 20;
  41.    
  42.     //10
  43.     if ( euros >= 10 ) {
  44.         cout << "De 10:" << euros / 10 << endl;
  45.     }
  46.    
  47.     euros = euros % 10;
  48.    
  49.     //5
  50.     if ( euros >= 5 ) {
  51.         cout << "De 5:" << euros / 5 << endl;
  52.     }
  53.    
  54.     euros = euros % 5;
  55.    
  56.     //2
  57.     if ( euros >= 2 ) {
  58.         cout << "De 2:" << euros / 2 << endl;
  59.     }
  60.    
  61.     euros = euros % 2;
  62.    
  63.     //1
  64.     if ( euros >= 1 ) {
  65.         cout << "De 5:" << euros / 1 << endl;
  66.     }
  67.    
  68.     euros = euros % 1;
  69. }

si no hay billetes mayores al valor que quieres calcular no hay calculo. Se pasa al siguiente valor.
De tu forma estabas diciendo con los if que si existía al menos un billete se imprimía y con los else que se imprimiera si no existía.
O sea...le has dicho que imprima si o si XDDD

otra cosa que tenias fallo era en el desglose.No le decías que guardara el valor después de desglosar:
euros % 2;
Debes guardarla:
euros = euros % 2;

Última edición por vangodp; 31/03/2014 a las 23:04

Etiquetas: moneda, numero, programa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:43.