Algoritmo para sacar valores como 11, 00, 13, 00 reais em C
Como faço para que o código abaixo, entenda que se o cliente pedir um valor como por exemplo R$11,00 reais ele deve fornecer uma cédula de R$5,00 e três cédulas de R$ 2,00 até completar o R$11,00 ?
#include <stdio.h>
#include <stdlib.h>
int main()
{
// Declaracao das variaveis
int notas_1 = 0, notas_2 = 0, notas_5 = 0, notas_10 = 0, notas_20 = 0, notas_50 = 0, notas_100 = 0, valor = 0, valor_sacado = 0;
// Recebe o valor do saque
printf("Qual eh o valor que deseja sacar ? ");
scanf("%d", &valor);
valor_sacado = valor;
if((valor >= 10) && (valor <= 800))
{
printf("Seja Bem-Vindo ao Tabajara Bank\\\\\\\\n");
printf("Saque Autorizado:\\\\\\\\n");
}
// Verifica se o valor solicitado é menor ou maior que o mínimo e máximo permitido neste terminal
if ((valor % 2 != 0) || (valor < 10) || (valor > 800))
{
printf("\\\\\\\\nObserve os Limites de Saque Neste Terminal:\\\\\\\\n");
printf("\\\\\\\\nValor Minimo p/Saque R$ 10,00 Max R$ 800,00\\\\\\\\n");
}
// Verifica as notas de 100
while (valor >= 100)
{
valor = valor - 100;
notas_100++;
}
// Verifica as notas de 50
while (valor >= 50)
{
valor = valor - 50;
notas_50++;
}
// Verifica as notas de 20
while (valor >= 20)
{
valor = valor - 20;
notas_20++;
}
// Verifica as notas de 10
while (valor >= 10)
{
valor = valor - 10;
notas_10++;
}
// Verifica as notas de 5. Verifica tambem se o resto que sobrou
// e divisivel por 2, ja que nao temos notas de 1
while (valor >= 5 && (valor - 5 % 2 != 0))
{
valor = valor - 5;
notas_5++;
}
// Verifica as notas de 2
while (valor >= 2)
{
valor = valor - 2;
notas_2++;
}
// Exibe o resultado
printf("\\\\\\\\n\\\\\\\\nValor sacado: %d\\\\\\\\n", valor_sacado);
printf("Notas de 100: %d\\\\\\\\n", notas_100);
printf("Notas de 50: %d\\\\\\\\n", notas_50);
printf("Notas de 20: %d\\\\\\\\n", notas_20);
printf("Notas de 10: %d\\\\\\\\n", notas_10);
printf("Notas de 5: %d\\\\\\\\n", notas_5);
printf("Notas de 2: %d\\\\\\\\n", notas_2);
return 0;
}
Conto com a ajuda de vocês. Obrigado!
#include <stdio.h>
#include <stdlib.h>
int main()
{
// Declaracao das variaveis
int notas_1 = 0, notas_2 = 0, notas_5 = 0, notas_10 = 0, notas_20 = 0, notas_50 = 0, notas_100 = 0, valor = 0, valor_sacado = 0;
// Recebe o valor do saque
printf("Qual eh o valor que deseja sacar ? ");
scanf("%d", &valor);
valor_sacado = valor;
if((valor >= 10) && (valor <= 800))
{
printf("Seja Bem-Vindo ao Tabajara Bank\\\\\\\\n");
printf("Saque Autorizado:\\\\\\\\n");
}
// Verifica se o valor solicitado é menor ou maior que o mínimo e máximo permitido neste terminal
if ((valor % 2 != 0) || (valor < 10) || (valor > 800))
{
printf("\\\\\\\\nObserve os Limites de Saque Neste Terminal:\\\\\\\\n");
printf("\\\\\\\\nValor Minimo p/Saque R$ 10,00 Max R$ 800,00\\\\\\\\n");
}
// Verifica as notas de 100
while (valor >= 100)
{
valor = valor - 100;
notas_100++;
}
// Verifica as notas de 50
while (valor >= 50)
{
valor = valor - 50;
notas_50++;
}
// Verifica as notas de 20
while (valor >= 20)
{
valor = valor - 20;
notas_20++;
}
// Verifica as notas de 10
while (valor >= 10)
{
valor = valor - 10;
notas_10++;
}
// Verifica as notas de 5. Verifica tambem se o resto que sobrou
// e divisivel por 2, ja que nao temos notas de 1
while (valor >= 5 && (valor - 5 % 2 != 0))
{
valor = valor - 5;
notas_5++;
}
// Verifica as notas de 2
while (valor >= 2)
{
valor = valor - 2;
notas_2++;
}
// Exibe o resultado
printf("\\\\\\\\n\\\\\\\\nValor sacado: %d\\\\\\\\n", valor_sacado);
printf("Notas de 100: %d\\\\\\\\n", notas_100);
printf("Notas de 50: %d\\\\\\\\n", notas_50);
printf("Notas de 20: %d\\\\\\\\n", notas_20);
printf("Notas de 10: %d\\\\\\\\n", notas_10);
printf("Notas de 5: %d\\\\\\\\n", notas_5);
printf("Notas de 2: %d\\\\\\\\n", notas_2);
return 0;
}
Conto com a ajuda de vocês. Obrigado!
Arieviloagarf
Curtidas 0