Meu professor me passou um problema no qual eu deveria fazer uma máquina de saque, que limitasse a quantia até 1000 e disponibilizasse somente notas de 20 e 50 reais. O programa pediria como entrada o valor e daria como saida o número de notas de 20 e/ ou 50 reais. O programa daria preferência a notas de 50 reais.
Estou tentando rodar esse algoritmo no VisualAlg e no DevC ++, porém estou com problemas.
Deixarei os dois códigos abaixo:
Algoritmo em Visualg:
Algoritmo "Dimas1"
var
notas50, notas20: inteiro
valor:real
inicio
Escreva("Digite o valor que deseja Sacar: ")
Leia(valor)
notas20 <- (valor)div(20)
notas50 <- (valor)div(50)
se (notas50*50 <> valor e notas20*20 <> valor e notas50*50 +notas20*20 <> valor ) então
Escreva ("valor inválido, por favor ,digite um valor que possibilite o saque com notas de 20 e 50")
FimSe
se valor >1000 entao
escreva("Valor inválido, por favor, digite um valor entre 0 e 1000")
se (valor)mod(50) = 0 entao
escreva(notas50)
se (valor)mod(50) > 0 e ((valor)mod(50))mod 20 = 0 então
{escreva(notas20)
escreva (notas20 }
fimalgoritmo
Algoritmo em C :
<
#include <stdio.h>
int main(){
int notas50, notas20;
float valor;
printf("Digite o valor que deseja Sacar: ");
scanf("%f",&valor);
notas20 = (valor)/(20);
notas50 = (valor)/(50);
if ((notas50)*50 != valor && (notas20)*20 != valor && (notas50*50) +((notas20)*20) != valor)
printf("valor inválido, por favor ,digite um valor que possibilite o saque com notas de 20 e 50");
if (valor>1000 )
printf("Valor inválido, por favor, digite um valor entre 0 e 1000");
if ((valor)%(50) == 0 )
printf(notas50);
if ((valor)%(50) > 0 && ((valor)%(50))% 20 == 0 )
{
}
printf(notas50);
printf(notas20);
return 0;
}
>
Me ajudem por favor se puderem.