Crie um programa que receba como entrada o valor total de uma dívida (número natural maior que zero) e o valor máximo que o devedor pode pagar todo mês (número natural maior que zero). O programa deve exibir o restante da dívida antes e depois de cada pagamento mensal até que a dívida zere. Obs.: quando a dívida é menor do que o máximo que o devedor pode pagar, ele pagará exatamente quanto deve, jamais pagará um valor superior.
OBS: PODE SER FEITO EM C, C++ OU PYTHON.
Soluções para a tarefa
Resposta:
FEITO EM C
#include <stdlib.h>
#include <stdio.h>
int main(){
int divida, pagamento, restante;
printf("Digite o valor da divida: ");
scanf("%i", &divida);
printf("Digite o valor a ser pago no mes: ");
scanf("%i", &pagamento);
restante = divida - pagamento;
//restante < 0
if(restante < 0){
restante = 0;
printf("\nvalor maximo aceito no pagamento: %d\n", divida);
printf("(antes) %d\n(depois) %d\n", divida, restante);
exit(0);
}
//restante = 0
if(restante == 0){
restante = 0;
printf("(antes) %d\n(depois) %d\n", divida, restante);
exit(0);
}
printf("\n(antes) %d\n(depois) %d\n", divida, restante);
do {
printf("\nDigite o valor a ser pago no mes: ");
scanf("%i", &pagamento);
divida = restante;
restante = divida - pagamento;
//restante = 0
if(restante == 0){
restante = 0;
printf("(antes) %d\n(depois) %d\n", divida, restante);
break;
}
//restante < 0
if(restante < 0){
restante = 0;
printf("valor maximo aceito no pagamento: %d\n", divida);
printf("(antes) %d\n(depois) %d\n", divida, restante);
break;
}
printf("(antes) %d\n(depois) %d\n", divida, restante);
}while(restante > 0 || restante == 0);
return 0;
}