Ir ao conteúdo
  • Cadastre-se

Código de simulação de juros compostos


Posts recomendados

Olá, pessoal. Sou novo no fórum e também novo na arte da programação e gostaria da ajuda de vocês pra fazer o seguinte código funcionar. Já tentei de tudo, pesquisei bastante e infelizmente ainda não possuo o conhecimento necessário para resolver isto. Se alguém puder corrigir e/ou apontar os erros e/ou possíveis soluções eu já ficarei muito grato.

 

OBS: Isso não é um trabalho de faculdade, não estou explorando vocês para resolverem pra mim. Desenvolvi o código desde o início sozinho e sou auto de data nessa área, estou aprendendo por mim mesmo.

 

#include <stdio.h>
#include <conio.h>

float mult (float p, float q, float h)

{
    return ((p) * ((1 + q) * h));
}

int main ()
{
    
    int Capital, Periodo, x;
    float Juros, y, w, rev, urf, orc, ju, p, q, h;
    
    printf("\n\nBem Vindo à Calculadora de Juros Compostos!");
    printf("\nLeia as Intruções Escreva o Que Se Pede e Depois Pressione enter");
    printf("\nDigite o Capital:  ");
    scanf("\n%d", &Capital);
    printf("\nDigite o numero de meses:  ");
    scanf("\n%d",&Periodo);
    printf("\nDigite os juros de forma decimal:  ");
    scanf("\n%f",&Juros);
    printf("\nSe os Juros Forem Mensais Digite 1, Se Forem Anuais Digite 2:  ");
    scanf("\n%w",&w);
    
    if (w != 2); {
    Juros = Juros;
    }
    
    if (w == 2); {
    ju = (Juros / 12);    
    Juros = ju;
    }
    
    for (x >= 1; x < Periodo; x++)
    {
        h = ((1 + Juros) * x);
        printf("\n\n  %dMes = R$%f", x , mult(Capital, Juros, h));
    }
    
    for (x >= 1; x < Periodo; x++)
    {
    if (x == Periodo);
    h = ((1 + Juros) * x);
    y = mult(Capital, Juros, h);
    urf = y - Capital;
    printf("\nTotal Pago Apenas em Juros:  %f", urf);
    }
    
    for (x >= 1; x < Periodo; x++)
    {
    if (x == Periodo);
    h = ((1 + Juros) * x);
    y = mult(Capital, Juros, h);
    orc = y / Periodo;
    printf("\nValor das Parcelas:  %f", orc); 
    }
    
    getch ();
    return (0);
}

Link para o comentário
Compartilhar em outros sites

Encontro-me na mesma situação que você, aprendo por apostilas e dicas da internet.

A fórmula para calculo de juros composto nos é conhecida como sendo: Mn = C(i + 1)n

Portanto, Mn = Montante, C = Capital Inicial, i = Juros, n = tempo(dias, meses, anos sempre função do juros...). Para escrever esta tarefa o código vai ter que que fazer a potência de  (i + 1) retornar este valor a ser multiplicado por C e finaliza exibindo o resultado Montante. Minha dica é criar a função fora do escopo de main();

fn_juros_compostos(capital, juros, tempo)
{
 ....
}

Depois chame a função dentro do main()

 

Link para o comentário
Compartilhar em outros sites

Valeu mano! Obrigado pela sua atenção. Eu já tinha feito exatamente isso que você disse, conforme está no código que enviei no post. Meu problema principal é justamente o que você disse, eu não sei como fazer a potência de (i + 1) em C. Coisa que em pseudo-código/Pascal seria "^", ou seja uma solução muito mais simples. Pelo que disse, acabei tentando transformar a potencia de: "(i + 1) ^ n-tempo-" em >> "(i + 1) * ( (i +1) * tempo) ), só que pelo visto não ta funcionando. Queria que alguém tentasse compilar meu código e ver qual o problema. Ele nem chega a executar as últimas funções "printf". 

Link para o comentário
Compartilhar em outros sites

Estou sem poder copilar estou fora do PC de casa.

Mais a potencia de um número é este mesmo número multiplicado por ele n vezes.

Por exemplo 33 e igual 3*3*3 = 27, então com loop multiplica varias vezes.

<\code>

float poten(float b /*!< Magnitude Base */, int exp /*!< Magnitute Expoente */)
{
  int i;
  float prod = b;
  for(i = 1; i < exp; i++)
  {
   prod = prod * b;
  }
  return prod;
}

Espero ter ajudado.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...