鱼C论坛

 找回密码
 立即注册
查看: 1598|回复: 16

为什么差几毛钱

[复制链接]
发表于 2023-3-23 19:50:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
@小甲鱼
运行结果:
================房贷计算================
请输入单价(元/平方) :6000
请输入面积:120
请输入按揭成数:7
请输入按揭年数:20
请输入当前基准年利率:5.4

================报告结果================
房款总额: 720000.00元
贷款总额: 504000.00元
首期付款: 216000.00元
月均还款: 3438.53元
还款总额: 825248.38元
支付利息: 321248.38元

================小甲鱼方案================
请输入单价(元/平方) :6000
请输入面积:120
请输入按揭成数:7
请输入按揭年数:20
请输入当前基准年利率:5.4
========== 报告结果 ==========
房款总额:720000.00元
首期付款:216000.02元
贷款总额:504000.00元
还款总额:825248.44元
支付利息:321248.44元
月均还款:3438.54元





  1. /*
  2. 0. “买房难,难于上青天……”(算了,不吐槽了o(╯□╰)o)
  3. 请根据下边的提示,写一个等额本息的还款计算器。
  4. 小知识:
  5. 等额本息还款法,也称定期付息,即借款人每月按相等的金额偿还贷款本息,
  6. 其中每月贷款利息按月初剩余贷款本金计算并逐月结清。
  7. 月均还款 = 贷款本金 * (月利率 * (1 + 月利率)^还款月数) / ((1 + 月利率)^还款月数 - 1)
  8. 总利息 = 还款月数 * 月均还款 - 贷款本金
  9. 贷款本金 = 房款总额 * 按揭成数

  10. 程序要求用户输入房屋单价、面积、按揭成数、按揭年数以及基准利率,
  11. 然后计算并显示等额本息还款法需要偿还的房款总额、首期付款、贷款总额、支付利息以及每月需要还款多少各项数据。)?
  12. 注1:// 后边的内容是注释部分,即写给你看的,程序编译时不会理会;
  13. 注2:按揭成数用户输入的是 7,其实表示的应该是 70%,即 0.7;
  14. 注3:用户输入的是还款年数,但程序中计算的是还款月数,所以要进行必要的转换;
  15. 注4:用户输入的年利率是 5.4,其实表示的是 5.4%,在程序中记得去掉百分号(除以 100),月利率 = 年利率 / 12
  16. */

  17. #include <stdio.h>
  18. #include <math.h>
  19. void count_fangzi();
  20. int main(){

  21.         count_fangzi();

  22. }

  23. void count_fangzi() {
  24.     printf("\n================房贷计算================\n");
  25.     float price, area, yir, mir; //单价,面积,年利率,月利率
  26.     float interest, Loan; //利息,贷款总额
  27.     float ave_repay, down_payment; //月均还款,首期付款
  28.     float total_price, total_repay; //房款总额,还款总额
  29.     int ratio, time; //按揭成数、按揭年数
  30.     printf("请输入单价(元/平方) : ");
  31.     scanf("%f", &price);
  32.     getchar();
  33.     printf("请输入面积:");
  34.     scanf("%f", &area);
  35.     getchar();
  36.     printf("请输入按揭成数: ");
  37.     scanf("%d", &ratio);
  38.     getchar();
  39.     printf("请输入按揭年数: ");
  40.     scanf("%d", &time);
  41.     getchar();
  42.     printf("请输入当前基准年利率: ");
  43.     scanf("%f", &yir);
  44.     getchar();

  45. /*
  46.     月均还款 = 贷款本金 * (月利率 * (1 + 月利率)^还款月数) / ((1 + 月利率)^还款月数 - 1)
  47.     总利息 = 还款月数 * 月均还款 - 贷款本金
  48.     贷款本金 = 房款总额 * 按揭成数
  49. */

  50.     printf("\n================报告结果================\n");

  51.     total_price = price * area;//房款总额 = 单价 * 面积
  52.     printf("房款总额: %.2f元\n", total_price);

  53.     Loan = total_price * (ratio / 10.0);//贷款总额=房款总额*按揭成数((7成=70%)最高7成)
  54.     printf("贷款总额: %.2f元\n", Loan);

  55.     down_payment = total_price - Loan;  //首期付款=房款总额-贷款总额
  56.     printf("首期付款: %.2f元\n", down_payment);

  57.     ///////////////////////////////////////////////////////////////////////
  58.     //用户输入的年利率是 5.4,其实表示的是 5.4%,在程序中记得去掉百分号(除以 100),月利率 = 年利率 / 12
  59.     mir = yir / 100.0 / 12.0;//月利率=(基准年利率/100)/12
  60.     //月利率=年利率/100%百分制(5.4=0.054)/12个月
  61.     // 月均还款 = (贷款本金 * (月利率 * (1 + 月利率)^还款月数)) / ((1 + 月利率)^还款月数 - 1)
  62.     ave_repay = (Loan * (mir * pow(1 + mir, time * 12))) / (pow(1 + mir, time * 12 )-1);
  63.     printf("月均还款: %.2f元\n", ave_repay);
  64. /////////////////////////////////////////////////////////////////////////////

  65.     total_repay = ave_repay * time * 12.0;//还款总额=月均还款*月数
  66.     printf("还款总额: %.2f元\n", total_repay);

  67.     interest = total_repay - Loan;//支付利息=还款总额-贷款总额
  68.     printf("支付利息: %.2f元\n", interest);


  69.     printf("\n================小甲鱼方案================\n");

  70.     printf("请输入单价(元/平方) : ");
  71.     scanf("%f", &price);
  72.     getchar();
  73.     printf("请输入面积:");
  74.     scanf("%f", &area);
  75.     getchar();
  76.     printf("请输入按揭成数: ");
  77.     scanf("%d", &ratio);
  78.     getchar();
  79.     printf("请输入按揭年数: ");
  80.     scanf("%d", &time);
  81.     getchar();
  82.     printf("请输入当前基准年利率: ");
  83.     scanf("%f", &yir);
  84.     getchar();


  85.     mir = yir / 100 / 12; // 年利率需要除以100得到,因为用户输入是5.4(%),而不是0.054
  86.     time = time * 12;
  87.     total_price = price * area;
  88.     Loan = total_price * ratio / 10; // 这里不能写成(ratio / 10),否则结果会变成0
  89.     ave_repay = Loan * mir * pow((1 + mir), time) / (pow((1 + mir), time) - 1);
  90.     interest = ave_repay * time - Loan;
  91.     total_repay = Loan + interest;
  92.     down_payment = total_price * (1 - (float)ratio / 10); // 强制转换ratio为浮点型

  93.     printf("========== 报告结果 ==========\n");
  94.     printf("房款总额:%.2f元\n", total_price);
  95.     printf("首期付款:%.2f元\n", down_payment);
  96.     printf("贷款总额:%.2f元\n", Loan);
  97.     printf("还款总额:%.2f元\n", total_repay);
  98.     printf("支付利息:%.2f元\n", interest);
  99.     printf("月均还款:%.2f元\n", ave_repay);





  100. }
  101. /*
  102. 请输入单价(元/平方) : 6000
  103. 请输入面积: 120
  104. 请输入按揭成数: 7
  105. 请输入按揭年数: 20
  106. 请输入当前基准年利率:5.4
  107. ========= 报告结果========
  108. 房款总额: 720000.00元
  109. 首期付款: 216000.00元
  110. 贷款总额: 504000.00元
  111. 还款总额: 825251.50元
  112. 支付利息: 321251.53元
  113. 月均还款: 3438.55元
  114. */
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-3-23 19:51:50 | 显示全部楼层
@高山 帮忙at下小甲鱼
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-23 19:55:56 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-23 19:57:46 | 显示全部楼层

不是,假的at似乎不能发送消息
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-23 20:12:37 | 显示全部楼层
歌者文明清理员 发表于 2023-3-23 19:57
不是,假的at似乎不能发送消息

不是的,你发个链接和我的对比一下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-23 20:16:24 | 显示全部楼层
sfqxx 发表于 2023-3-23 20:12
不是的,你发个链接和我的对比一下
  1. [url=home.php?mod=space&uid=1153159]@高山[/url] 帮忙at下小甲鱼
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-23 20:21:15 | 显示全部楼层
我说你用链接@小甲鱼,来验证我这是不是真的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-23 20:40:19 From FishC Mobile | 显示全部楼层
sfqxx 发表于 2023-3-23 20:21
我说你用链接@小甲鱼,来验证我这是不是真的

不行的,前人验证过了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-23 20:40:49 From FishC Mobile | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-23 20:46:12 | 显示全部楼层
高山 发表于 2023-3-23 20:40
@小甲鱼 @不二如是

你看,你@的和我的是一样的,下面都有下划线
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-23 20:46:47 | 显示全部楼层
@歌者文明清理员 Screenshot_2023-03-23-20-46-30-71.jpg 看到了吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-24 07:18:07 From FishC Mobile | 显示全部楼层
sfqxx 发表于 2023-3-23 20:46
@歌者文明清理员看到了吗

哇 你也有? 我也有的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-24 07:38:46 | 显示全部楼层
高山 发表于 2023-3-24 07:18
哇 你也有? 我也有的

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-3-24 08:11:43 From FishC Mobile | 显示全部楼层
emmmm,所以说了这么多,还是没能解决为什么差几毛钱
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-31 00:56:53 | 显示全部楼层
浮点数精度问题
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-31 08:01:13 | 显示全部楼层
就几毛钱而已
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-3-31 13:43:46 | 显示全部楼层

详细说说
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-22 19:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表