Ir para conteúdo
Fórum Script Brasil
  • 0

Finalizar programa calculo financiamento


Programa Financiamento C

Pergunta

Boa tarde galera, preciso da ajuda de vocês pra finalizar um trabalho de faculdade. tenho o programa quase pronto, mas para finaliza-lo preciso arrumar um "problema". o programa roda certinho. esse programa ele pergunta se o objetivo é carro ou moto, ano, marca, modelo, valor entrada e parcela. eu preciso que ele faça a seguinte condição automática e já mostre o valor da parcela: se o valor da entrada for >= que valor do veiculo multiplique por 60%. preciso que o valor total divida automaticamente por 12! so que não está fazendo automático, estou tendo que digitar o valor da parcela pra ele fazer o calculo. segue o programa em anexo.

#include <stdio.h>

#include <stdlib.h>
#include <conio.h>
main()
{
int ano,esc,parcela; // Ano do Carro
float valordoveiculo,valordaentrada,saldo,vf,vsj,valortotal,taxa;//valores totais
char MD,MC;// Modelo do carro
do{
printf("\n1-Carro 2- Moto\n");
scanf("%d",&esc);
}
while(esc < 1 || esc > 2);
do{
printf("ANO DO VEICULO \n");
scanf("%d",&ano);
}
while(ano < 2004 || ano > 2015);
fflush(stdin);
printf("MARCA DO VEICULO\n");
scanf("%c",&MD);
fflush(stdin);
printf("MODELO DO VEICULO\n");
scanf("%c",&MC);
fflush(stdin);
printf("VALOR DO VEICULO A SER FINANCIADO\n");
scanf("%f",&valordoveiculo);
printf("VALOR DA ENTRADA\n");
scanf("%f",&valordaentrada);
printf("QUANTIDADE DE PARCELAS\n");
scanf("%d",&parcela);
saldo=(valordoveiculo-valordaentrada); // valor a ser financiado.
if(esc==1)//carro
{
if(ano >=2004 || ano<=2009)
{
if(parcela==24)
{
vsj=saldo/24;
vf=(saldo/24)*0.012+vsj;
valortotal=(24*vf)+valordaentrada;
fflush(stdin);
printf(" O VALOR DA PARCELA E %f \n",vf);
fflush(stdin);
printf(" O VALOR TOTAL E %f \n",valortotal);
system("pause");
}
if(parcela==36)
{
vsj=saldo/36;
vf=(saldo/36)*0.0125+vsj;
valortotal=(36*vf)+valordaentrada;
}
if(parcela==48)
{
vsj=saldo/48;
vf=(saldo/48)*0.0145+vsj;
valortotal=(48*vf)+valordaentrada;
}
{
if(ano >=2010 || ano<=2014)
{
if(parcela==24)
{
vsj=saldo/24;
vf=(saldo/24)*0.001+vsj;
valortotal=(24*vf)+valordaentrada;
}
if(parcela==36)
{
vsj=saldo/36;
vf=(saldo/36)*0.0115+vsj;
valortotal=(36*vf)+valordaentrada;
}
if(parcela==48)
{
vsj=saldo/48;
vf=(saldo/48)*0.0135+vsj;
valortotal=(48*vf)+valordaentrada;
}
if(ano ==2015)
{
if(parcela==24)
{
vsj=saldo/24;
vf=(saldo/24)*0.0059+vsj;
valortotal=(24*vf)+valordaentrada;
}
if(parcela==36)
{
vsj=saldo/36;
vf=(saldo/36)*0.0079+vsj;
valortotal=(36*vf)+valordaentrada;
}
if(parcela==48)
{
vsj=saldo/48;
vf=(saldo/48)*0.0099+vsj;
valortotal=(48*vf)+valordaentrada;
}
if(valordaentrada>=valordoveiculo*0.6)
{
vf=(saldo/12);
valortotal=(12*vf)+valordaentrada;
printf(" O VALOR DA PARCELA E\n %f\n",vf);
printf(" O VALOR TOTAL E\n %f\n",valortotal);
}
{
if(parcela==24 || parcela== 36 || parcela == 48)
printf(" O VALOR DA PARCELA E\n %f\n",vf);
printf(" O VALOR TOTAL E\n %f\n",valortotal);
system("pause");
}
}
if(esc==2)//moto
if(ano >=2004 || ano<=2009)
{
if(parcela==24)
{
vsj=saldo/24;
vf=(saldo/24)*0.013+vsj;
valortotal=(24*vf)+valordaentrada;
}
if(parcela==36)
{
vsj=saldo/36;
vf=(saldo/36)*0.0135+vsj;
valortotal=(36*vf)+valordaentrada;
}
if(parcela=48)
{
vsj=saldo/48;
vf=(saldo/48)*0.0166+vsj;
valortotal=(48*vf)+valordaentrada;
}
{
if(ano >=2010 || ano<=2014)
{
if(parcela==24)
{
vsj=saldo/24;
vf=(saldo/24)*0.012+vsj;
valortotal=(24*vf)+valordaentrada;
}
if(parcela==36)
{
vsj=saldo/36;
vf=(saldo/36)*0.013+vsj;
valortotal=(36*vf)+valordaentrada;
}
if(parcela=48)
{
vsj=saldo/48;
vf=(saldo/48)*0.014+vsj;
valortotal=(48*vf)+valordaentrada;
}
if(ano ==2015)
{
if(parcela==24)
{
vsj=saldo/24;
vf=(saldo/24)*0.0079+vsj;
valortotal=(24*vf)+valordaentrada;
}
if(parcela==36)
{
vsj=saldo/36;
vf=(saldo/36)*0.0099+vsj;
valortotal=(36*vf)+valordaentrada;
}
if(parcela=48)
{
vsj=saldo/48;
vf=(saldo/48)*0.0105+vsj;
valortotal=(48*vf)+valordaentrada;
{
if(parcela=24 || 36 || 48)
printf(" O VALOR DA PARCELA E\n %f\n",vf);
printf(" O VALOR TOTAL E\n %f\n",valortotal);
system("pause");
}
}}}}}}}}}}
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Olá!

Olha eu sou iniciante em programação e não vou mentir sou pessimo em matematica, então não vou ser util neste programa!

Eu ainda não dei uma boa olha no codigo e por isso não o compreendi muito bem, mas com relação a funçao fflush(stdin); tanto no linux quanto no windows, parece estar causando algum problema na execução do programa, (pelo menos aqui está) não sei se é o seu caso mas de todo modo tente não utiliza-la, pois já li em muitos forums que ela pode apresentar um comportamento indefinido em certos momentos, por isso tente substitui-la por outra função de limpeza de buffer ou mesmo utilizar algum codigo de formatação na função scanf() que faça a limpeza.

Leia este tópico: https://www.scriptbrasil.com.br/forum/topic/179317-ajuda-em-urna-eletronica-em-c/

Tambem vi alguns fflush(stdin); antes de um dos printf() se o objetivo era limpar a tela tente system ("cls");

Tambem tem em alguns ifs (if parcela = 48 ), a não ser que está parte realize alguma tarefa especifica que eu não compreenda, acho que deveria ser if ( parcela == 48 )

Nesta Parte deveria mesmo ser isso? if ( parcela = 24 || 36 || 48 )

Aqui o Compilador deu um Alerta de que a Variavel "taxa" não está sendo utilizada em nenhuma parte do programa.

Bom só posso ir ate aqui por hora, vou tentar dar uma olhada no codigo e caso eu consiga algum resultado, posto amanha!

E se possivel poste alguns dados de como os resultados devem ser mostrados pelo programa, não testei nas exatas condições que você especificou, mas:

carro = 1

ano = 2008

marca = f

modelo = p

valor do financiamento = 25.000

valor da entrada = 500.00

quantidade de parcela = 24

O valor da parcela é - 20.029165

valor total é 19.300034

Acima e Abaixo usando e não usando ( . ) pelo usuario na declaração dos valores, foi falta de atenção minha . . .

O valor da parcela é = 1033

valor total é = 25294

e com relação a moto com os mesmos dados o programa finaliza apos a entrada do numero de parcelas . . .

Ubuntu 14.04 GNU GCC 4.8 Codeblocks 13.12

Espero ter Ajudado ! ! !

Editado por Felipe-Petrópolis
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...