❶ c語言 銀行貸款的月利率 簡單代碼
#include<stdio.h>
#include<math.h>
main()
{
doublemoney,capital;
doublerate[4]={0.009,0.01,0.0111,0.012};
intn;
printf("請輸入本金和期限(年) ");
scanf("%lf%d",&capital,&n);
if(n>3)
money=capital*pow((1+rate[3]),12*n);
else
money=capital*pow((1+rate[n-1]),12*n);
printf("%d年後本金和利息合計為:%.2lf ",n,money);
}
❷ c語言這個問題 能幫幫忙嘛 謝謝
//希望我的回答對你的學習有幫助
#include<stdio.h>
#include<math.h>
intmain()
{
doublemoney,capital;
doublerate[4]={0.009,0.01,0.0111,0.012};
intn,m;
scanf("%lf%d",&capital,&n);
m=n/12;
if(n!=12*m){
m++;
}
if(m>3)
money=capital*pow((1+rate[3]),12*m);
else
money=capital*pow((1+rate[m-1]),12*m);
printf("%.2lf ",money);
return0;
}
❸ 關於C語言中「分期付款計算」的問題
今天的1元錢,在k個月以後就變成(1+R)^k元錢了,這是一個未來價值或期值/現值的概念。套用到這里來,就是說,把所有還掉的錢的價值統一到同一個時間點上,它們的總和,與貸款在這個時間點的價值是相同的。根據這個關系來列關系式:
考慮第0個月貸款D元,從第一個月起,每個月還款P元,第M個月還清,則有貸款在第M個月的價值為:D(1+R)^M,第n個月還款在第M個月的價值為:P(1+R)^(M-n),特別的,第M月的還款在第M個月的價值就是它的現值P元
所以有等式:P(1+R)^(M-1)+P(1+R)^(M-2)+……+P(1+R)^2+P(1+R)+P=D(1+R)^M
利用等比數列求和公式:
P*((1+R)^M-1)/R=D(1+R)^M
化簡得:P/(P-DR)=(1+R)^M
兩邊取(1+R)的對數得:log_(1+R)(P/(P-DR))=M
化簡:M=log(P/(P-DR))/log(1+R)=(logP-log(P-DR))/1og(1+R)
(這里的log可以是自然對數或科學對數)
你給的公式好像少了一對括弧
❹ C語言計算貸款還款額怎麼做
#include<stdio.h>
#include<math.h>
intmain(){
inttotal,year;
doublerate_year;
scanf("%d%d",&total,&year);
if(year<=1)
rate_year=0.03;
elseif(year<=5)
rate_year=0.04;
elseif(year<=10)
rate_year=0.05;
else
rate_year=0.06;
doublerate=rate_year/12;
printf("%lf ",total*pow(rate+1,year*12)*rate/(pow(rate+1,year*12)-1));
return0;
}
❺ C++ C語言程序設計 題目:貸款計算器
/*
* main.c
*
* Created on: 2011-6-8
* Author: icelights
*/
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <math.h>
#define APR1 0.0747 /*<1年(含1年)年利率*/
#define APR2 0.0756 /*1-3年(含3年)年利率*/
#define APR3 0.0774 /*3-5年(含5年)年利率*/
#define APR4 0.0783 /*5年以上年利率*/
#define A_TO_M 1/12 /*月利率 = 年利率 / 12*/
#define RTP 12 /*Reimbursement total periods還款總期數 =年限*12*/
#define LENGTH 80
struct LoanInfo
{
/*姓名*/
char name[LENGTH];
/*貸款總額*/
double LoanAmount;
/*貸款年限*/
double LoanYear;
/*月付*/
double MonthlyPayment;
/*總利息*/
double TotalInterest;
/*還款總額*/
double ReimbursementAmount;
/*年利率*/
double apr;
struct LoanInfo * next;
};
void CalcShow(struct LoanInfo * cur, struct LoanInfo * hd,
struct LoanInfo * prv);
int main(void)
{
int temp;
struct LoanInfo * head = NULL;
struct LoanInfo * prev, * current;
current = (struct LoanInfo *)malloc(sizeof(struct LoanInfo));
if (NULL == head)
{
head = current;
}
else
{
prev->next = current;
}/*End of if (NULL == head)*/
puts("請輸入姓名");
gets(current->name);
fflush(stdin);
puts("請輸入貸款數額(單位:萬元)");
scanf("%lf", ¤t->LoanAmount);
fflush(stdin);
puts("請輸入貸款年限");
scanf("%lf", ¤t->LoanYear);
fflush(stdin);
printf("姓名:%s,貸款年限:%lf, 貸款數額%lf",
current->name, current->LoanYear, current->LoanAmount);
prev = current;
puts("請確認Y/N");
temp = getchar();
switch(toupper(temp))
{
case 'Y' : CalcShow(current, head, prev);
break;
case 'N' : free(current);
main();
break;
default : puts("輸入錯誤");
free(current);
break;
}
return 0;
}
void CalcShow(struct LoanInfo * cur, struct LoanInfo * hd,
struct LoanInfo * prv)
{
char lcv_temp;
if (cur->LoanYear <= 1)
cur->apr = APR1;
else if (cur->LoanYear <= 3)
cur->apr = APR2;
else if (cur->LoanYear <= 5)
cur->apr = APR3;
else
cur->apr = APR4;
/*End of if (year <= 1)*/
cur->LoanAmount = 10000 * cur->LoanAmount;
cur->ReimbursementAmount = cur->LoanAmount * pow((1 + cur->apr), cur->LoanYear);
cur->MonthlyPayment = cur->ReimbursementAmount / (cur->LoanYear * RTP);
cur->TotalInterest = cur->ReimbursementAmount - cur->LoanAmount;
printf("姓名:%s 貸款年限:%.0lf\n"
"貸款數額:%.2lf 每月還款額:%.2lf\n"
"利息合計:%.2lf 還款總額:%.2lf\n",
cur->name, cur->LoanYear, cur->LoanAmount,
cur->MonthlyPayment, cur->TotalInterest, cur->ReimbursementAmount);
puts("是否繼續計算Y/N");
lcv_temp = getchar();
switch(toupper(lcv_temp))
{
case 'Y' : free(cur);
main();
break;
case 'N' : free(cur);
exit(0);
default : puts("輸入錯誤");
free(cur);
main();
break;
}
system("pause");
}
❻ C語言問題
本金加利息=本金*(1+月利率)^月數
在c里有一個乘方函數pow()
pow(a,b) 等於a的b次方
#include<stdio.h>
#include<math.h>
main()
{
doublemoney,capital;
doublerate[4]={0.009,0.01,0.0111,0.012};
intn;
printf("請輸入本金和期限(年) ");
scanf("%lf%d",&capital,&n);
if(n>3)
money=capital*pow((1+rate[3]),12*n);
else
money=capital*pow((1+rate[n-1]),12*n);
printf("%d年後本金和利息合計為:%.2lf ",n,money);
}
❼ c語言 銀行貸款問題(急求)
lz ,這個問題其實是個數學公式,編程求解的話,也就是起到一個計算器的作用(如果不具備公式的話,那就只能通過枚舉來一個個嘗試了,那就失去針對性了)
剛我算了一下,思路:
1. 年利率為i ,則第一年的利息是 s * i ,第二年是 (s - 12x) * i ,其中x是每月還款額,第三年 (s - 24x) * i ... ... ,第n年的利息是 [ s - 12(n-1)x ] * i ,該等差數列之和為 [s - 6(n-1)x ] * n * i ,這就是n年所產生的總利息了。
2.通過等式 :
(總利息 + 本金)/ 年數 / 12 = 每月還款額
{ [s - 6(n-1)x ] * n * i + s } / 12n = x
解得x = ( nis + s ) / [ 12n + 6(n-1) ni ]
假設房貸 300000 按揭10年 ,利率5% ,每月還3061 ,差不多
❽ C語言編程 從銀行貸款d,每月還款額為p,月利率為r,算多少月能還清。設d為300000,p為6000,r為1%.
#include <stdio.h>
#include <math.h>
int main()
{float d=300000,p=6000,r=0.01,m;
m=log10(p/(p-d*r))/log10(1+r);
printf("m=%6.2f\n",m);
return 0;
}
望採納,謝謝
❾ 有關銀行貸款還貸的c語言程序
這個沒有必要。各家國有銀行的網銀和網站上都有現實利率的貸款計算器。利率隨時更新。很方便的。
❿ 跪求C語言編程 從銀行貸款d,每月還款額為p,月利率為r,算多少月能還清。設d為3000000,p為6000,r為1%
log10(a)/log10(b)=loga(b)
直接用c語言的庫函數輸出的時候用%.2f就可以了吧