Ir ao conteúdo

Ajuda com algoritmos de contagem de cedula e moedas


Vic_Regia

Posts recomendados

Postado

Estou com esse problema...ja tentei solucionar de varias maneiras...mas nao consigo...estou a tres dias tentando resolver e nao tenho mais nenhuma ideia de como fazer...

Me ajudem por favor....

=D

Bom o enunciado é assim:

Escreva um algoritmo que calcule o numero de notas e de moedas que deve ser dado de troco para um pagamento efetuado. O algoritmo deve ler o valor a ser pago (valor a conta) e o valor efetivamente pago (dinheiro dado). Supor que o troco seja dado em notas de 50, 20, 10, 5 e 2 e moedas de 1real, 0,50, 0,25, 0,10, 0,05 e 0,01.

Se alguem puder me dar ums dica de como eu posso ir no rumo da resolução agradeçoo desde ja!!

Xeruh

Victoria ^_^

Postado
Estou com esse problema...ja tentei solucionar de varias maneiras...mas nao consigo...estou a tres dias tentando resolver e nao tenho mais nenhuma ideia de como fazer...

Me ajudem por favor....

=D

Bom o enunciado é assim:

Escreva um algoritmo que calcule o numero de notas e de moedas que deve ser dado de troco para um pagamento efetuado. O algoritmo deve ler o valor a ser pago (valor a conta) e o valor efetivamente pago (dinheiro dado). Supor que o troco seja dado em notas de 50, 20, 10, 5 e 2 e moedas de 1real, 0,50, 0,25, 0,10, 0,05 e 0,01.

Se alguem puder me dar ums dica de como eu posso ir no rumo da resolução agradeçoo desde ja!!

Xeruh

Victoria ^_^

Usando divisão e módulo.

Exemplo:

Se sua conta for de RS 76,50

e se o pagamento for de RS 100,00

faz-se:


//Implementado em Linguagem C

//multiplica os valores por 100, para ter valores inteiros.

void mostrarTroco(int conta,int pagamento){

//Exemplo com conta = 7650 e pagamento = 10000
//int conta = 7650;
//int pagamento = 10000;
int trocoTemp = pagamento - conta;
// o valor de trocoTemp é 2350;

int notaDe50 = trocoTemp / 5000;

trocoTemp = trocoTemp % 5000;

/*
mostrando os valores que irá ficar:

notaDe50 = (10000 - 7650) / 5000;
notaDe50 = 2350 / 5000;
notaDe50 = 0;

trocoTemp = 2350 % 5000;
trocoTemp = 2350;

pois so resultados são inteiros

*/

int notaDe20 = trocoTemp / 2000;

trocoTemp = trocoTemp % 2000;

int notaDe10 = trocoTemp / 1000;

trocoTemp = trocoTemp % 1000;

int notaDe5 = trocoTemp / 500;

trocoTemp = trocoTemp % 500;

int notaDe2 = trocoTemp / 200;

trocoTemp = trocoTemp % 200;

int notaDe1 = trocoTemp / 100;

trocoTemp = trocoTemp % 100;

int moedaDe50 = trocoTemp / 50;

trocoTemp = trocoTemp % 50;

int moedaDe25 = trocoTemp / 25;

trocoTemp = trocoTemp % 25;

int moedaDe10 = trocoTemp / 10;

trocoTemp = trocoTemp % 10;

int moedaDe5 = trocoTemp / 5;

trocoTemp = trocoTemp % 5;

int moedaDe1 = trocoTemp;

printf("Notas de RS 50 = %d\n",notaDe50);
printf("Notas de RS 20 = %d\n",notaDe20);
printf("Notas de RS 10 = %d\n",notaDe10);
printf("Notas de RS 5 = %d\n",notaDe5);
printf("Notas de RS 2 = %d\n",notaDe2);
printf("Notas de RS 1 = %d\n",notaDe1);
printf("Moedas de RS 0,50 = %d\n",moedaDe50);
printf("Moedas de RS 0,25 = %d\n",moedaDe25);
printf("Moedas de RS 0,10 = %d\n",moedaDe10);
printf("Moedas de RS 0,05 = %d\n",moedaDe5);
printf("Moedas de RS 0,01 = %d\n",moedaDe1);

}

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!