Solução por João Guilherme
Primeiro nós devemos ler o nosso n. Em seguida nós salvamos uma variável com a parte inteira do nosso número. Em seguida nós decompomos essa parte em múltiplos de cada valor de nota. Por fim fazemos o mesmo para sua parte fracionária usando o valor das moedas, depois imprimimos.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <iostream> | |
#include <cstdio> | |
#include <cstdlib> | |
#include <cmath> | |
using namespace std; | |
int main() { | |
int cem, cinq,vinte,dez,cinco,dois, um, cinqcent, centvinte, centdez, centcinco, centum; | |
double totall; | |
scanf ("%lf", &totall); | |
int total=floor(totall); | |
int total2=(totall-total)*100; | |
cem=(total-(total%100))/100; //contar o numero de cedulas de 100 | |
total=total-cem*100; //remover as cedulas de 100 | |
cinq=(total-(total%50))/50; //contar o numero de cedulas de 50 | |
total=total-50*cinq; ////remover as cedulas de 50 | |
vinte=(total-(total%20))/20; //contar o numero de cedulas de 20 | |
total=total-20*vinte; //remover as cedulas de 20 | |
dez=(total-(total%10))/10; //contar o numero de cedulas de 10 | |
total=total-10*dez; //remover as cedulas de 10 | |
cinco=(total-(total%5))/5; //contar o numero de cedulas de 5 | |
total=total-5*cinco; //remover as cedulas de 5 | |
//e assim segue | |
dois=(total-(total%2))/2; | |
um=total%2; | |
cinqcent=(total2-(total2%50))/50; | |
total2=total2-50*cinqcent; | |
centvinte=(total2-(total2%25))/25; | |
total2=total2-25*centvinte; | |
centdez=(total2-(total2%10))/10; | |
total2=total2-10*centdez; | |
centcinco=(total2-(total2%5))/5; | |
total2=total2-5*centcinco; | |
centum=total2; | |
printf("NOTAS:\n%d nota(s) de R$ 100.00\n%d nota(s) de R$ 50.00\n%d nota(s) de R$ 20.00\n%d nota(s) de R$ 10.00\n%d nota(s) de R$ 5.00\n%d nota(s) de R$ 2.00\nMOEDAS:\n%d moeda(s) de R$ 1.00\n%d moeda(s) de R$ 0.50\n%d moeda(s) de R$ 0.25\n%d moeda(s) de R$ 0.10\n%d moeda(s) de R$ 0.05\n%d moeda(s) de R$ 0.01\n", cem, cinq, vinte, dez, cinco, dois, um, cinqcent, centvinte, centdez, centcinco, centum); | |
return 0; | |
} |