Calculando juros compostos com inteiros. Modifique o programa da Figura 4.6 de modo que ele use apenas inteiros para calcular os juros compostos. [Dica: trate todos os valores monetários como números inteiros de centavos. Depois ‘quebre’ o resultado em sua parte de real e em sua parte de centavos usando as operações de divisão e módulo, respectivamente. Insira uma vírgula.]

Passo 1

Fala Galera!!! Tudo certo? Espero que sim!!! Bora para mais um exercício.

Vamos escrever um programa que seja capaz de retornar os juros composto para um valor determinado dentro de 10 anos. O programa irá fazer os tratamentos dos valores monetário como números inteiros de centavos e quebrar o valor em sua parte real e a parte de centavos usando as operações de divisão e modulo.

Para calcular os juros composto devemos lembrar da formula:

v f = v p 1 + t n

v p = v a l o r   p r i n c i p a l

t = t a x a   d e   j u r o s

n = n ú m e r o   d e   a n o s

v f = é   o   v a l o r   d o   d e p ó s i t o   a o   f i n a l   d o   n - é s i m o   a n o

Passo 2

Escrevendo o programa:

#include

#include

int main( void )

{

int year; /* contador de anos */

int amount; /* valor em depósito */

int dollars;

/* valor */

int cents;

/* centavos do valor */

int principal = 100000;

/* capital inicial ($1000) */

double rate = .05;

/* taxa de juro */

/* exibe os cabeçalhos da tabela */

printf("%s%21s\n", "Ano", "Valor depositado");

/* loop 10 vezes */

for ( year = 1; year

/* determina a nova quantia (em centavos) */

amount = principal * pow( 1.0 + rate, year );

/* determina a parte do valor em centavos (últimos dois dígitos) */

cents = amount % 100;

/* determina a parte em dólares do valor */

/* divisão inteira trunca casas decimais */

dollars = amount / 100;

/* exibe ano, parte em dólar seguida de ponto */

printf( "%4d%18d.", year, dollars );

/* exibe a parte dos centavos */

/* se os centavos tiverem apenas 1 dígito, insira 0 */

if ( cents

printf("0%d\n", cents);

}

else {

printf("%d\n", cents);

}

}

return 0;

}

Passo 3

A saída será:

E assim finalizamos o exercício!!! Até o próximo galera!!!

Resposta

#include

#include

int main( void )

{

int year; /* contador de anos */

int amount; /* valor em depósito */

int dollars;

/* valor */

int cents;

/* centavos do valor */

int principal = 100000;

/* capital inicial ($1000) */

double rate = .05;

/* taxa de juro */

/* exibe os cabeçalhos da tabela */

printf("%s%21s\n", "Ano", "Valor depositado");

/* loop 10 vezes */

for ( year = 1; year

/* determina a nova quantia (em centavos) */

amount = principal * pow( 1.0 + rate, year );

/* determina a parte do valor em centavos (últimos dois dígitos) */

cents = amount % 100;

/* determina a parte em dólares do valor */

/* divisão inteira trunca casas decimais */

dollars = amount / 100;

/* exibe ano, parte em dólar seguida de ponto */

printf( "%4d%18d.", year, dollars );

/* exibe a parte dos centavos */

/* se os centavos tiverem apenas 1 dígito, insira 0 */

if ( cents

printf("0%d\n", cents);

}

else {

printf("%d\n", cents);

}

}

return 0;

}