Calcular pagamento com a menor quantidade de cédulas possível
Publicado por Francisco Leandro Xavier Carneiro (última atualização em 22/03/2010)
[ Hits: 13.838 ]
Homepage: http://conexaotech.blogspot.com/
Bom gente, esse é meu primeiro script, é apenas para dar um start da minha participação no VOL.
Sem muita conversa, o script faz o seguinte: lê um valor, a quantidade de tipos de valores e quais são esses valores, fazendo o pagamento utilizando a menor quantidade de cédulas possível dentre as disponíveis.
// PAGAMENTO UTILIZANDO A MENOR QUANTIDADE DE CÉDULAS POSSÍVEIS
// Autor: Francisco Leandro Xavier (leandrox)
#include <stdio.h>
#include <stdio.h>
int main () {
int val, qtdtipnot;
printf("Digite o valor: ");
scanf("%d", &val);
printf("Digite a qtd. de valores de cedulas: ");
scanf("%d", &qtdtipnot);
float valnot[qtdtipnot];
int qtdvalnot[qtdtipnot];
for (int i = 1; i <= qtdtipnot; i++) {
printf("Digite qual a %da. maior nota: ", i);
scanf("%f", &valnot[i]);
}
for (int i = 1; i <= qtdtipnot; i++)
qtdvalnot[i] = 0;
int i = 1;
while (i <= qtdtipnot) {
while (val >= valnot[i]) {
val = val - valnot[i];
qtdvalnot[i] = qtdvalnot[i] + 1;
}
i++;
}
int j = 0;
for (int i = 1; i <= qtdtipnot; i++)
j = j + qtdvalnot[i];
printf("São utilizadas %d cédulas!\n", j);
for (int i = 1; i <= qtdtipnot; i++) {
if (qtdvalnot[i] != 0) {
printf("%d de R$ %0.2f\n", qtdvalnot[i], valnot[i]);
j = j + qtdvalnot[i];
}
}
return 0;
}
Linguagem C estruturada - Sistema Numérico Hexadecimal
Exemplo de gabaritos de função
Ordenando linhas e colunas de matrizes
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
O widget do Plasma 6 Área de Notificação
[Resolvido] Algo deu errado ao abrir seu perfil
Instalar Dual Boot, Linux+Windows. (12)
Problemas com o "startx&... no Slackware (10)
Conselho distribuiçao brasileira (8)
Atalho no Linux Mint não aparece menu de troca de monitores (0)









