hola soy nuevo en este foro díganme si me olvido de algo :).
Este es el código que hice en C++, consta en dar una cierta cantidad de dinero y después fraccionarla en diferentes tipos de monedas que son 20,10,5,1. Y si no se puede fraccionar mas, que el resultado de 0.
ejemplo:
entrada
Cantidad de dinero a fraccionar: 59
salida
Monedas de 20: 2
Monedas de 10: 1
Monedas de 5: 1
Monedas de 1: 4
Bueno, hasta ahí todo bien pero a la hora de poner cualquier numero al azar empiezo a tener problemas en los resultados, como por ejemplo: me salen números negativos, no sale la cifra correcta etc.
Me gustaría que me ayudaran a corregirlo por favor ya que soy nuevo en esto.
aquí les dejo el código que yo hice:
#include <iostream>
using namespace std;
int main(){
int diez,dinero, veinte,s1,s2,s3,cinco,uno;
cout<<"cantidad de dinero a fraccionar: "<<endl;
cin>>dinero;
veinte=dinero/20;
cout<<"monedas de 20: "<<veinte<<endl;
s1=dinero-(veinte*20);
diez=s1/10;
cout<<"monedas de 10: "<<diez<<endl;
s2=s1-10;
cinco=s2/5;
cout<<"modedas de 5 : "<<cinco<<endl;
s3=s2-5;
uno=s3/1;
cout<<"monedas de 1 : "<<uno<<endl;
system("pause");
return 0;
}
Gracias :)
Hola jose_00
Primero el codigo lo tienes que meter en las etiquetas code/geshi, es decir, dejas marcado GeSHi, pulsas el boton insertar codigo, y el cursor se va automaticamente dentro para que empieces a escribir todo el codigo.
Segundo, el codigo te va bien en ese caso, porque al hacer las resta de las monedas de 10 y 5, lo haces mal, indicando 1 sola vez, de esa manera todo ejemplo que introduzcas que solo necesite 1 moneda de 10 y una de 5, te ira perfecto pero en el resto te daran mal.
Fijate en la operacion que haces en s1 y veras que no es la misma que en s2 y s3, tienes que hacer en s2 y s3 lo mismo que haces en s1.
Una vez eso este arreglado, deberia irte bien con cualquier cantidad.
Un saludo.