Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // define os valores de um parcelamento
- #include <stdio.h> // printf/scanf
- #include <stdlib.h> // malloc/free
- int main() {
- long centavos, numero, iterador, atual, *parcelas;
- double reais;
- // pede um valor do total em reais
- printf("Valor total em reais: ");
- scanf("%lf", &reais);
- centavos = reais * 100; // calcular em centavos é "redondo"
- // pede o número de parcelas
- printf("Número de parcelas: ");
- scanf("%ld", &numero);
- // aloca o número de parcelas
- parcelas = (long *) malloc(numero * sizeof(long));
- // determina o valor de cada parcela, sempre deduzindo do total o que já foi calculado
- for(iterador = numero - 1; iterador >= 0; iterador--) {
- atual = centavos / (iterador + 1); // o valor atual é a parte inteira da divisão
- parcelas[iterador] = atual;
- centavos -= atual; // aqui, na última iteração, será exatamente a quantidade que faltava
- }
- // imprime cada parcela
- for(iterador = 0; iterador < numero; iterador++) {
- printf("Parcela %d: R$ %.2f.\n", iterador + 1, ((double) parcelas[iterador]) / 100.0);
- }
- // libera a memória e sai do programa com o código 0 (sucesso)
- free(parcelas);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment