鱼C论坛

 找回密码
 立即注册
查看: 1340|回复: 4

[已解决]代码结果不一样

[复制链接]
发表于 2021-5-25 08:45:32 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 华文杉 于 2021-5-25 08:47 编辑

我在求银行利率问题自己编写一段代码:习题 3.3 购房从银行贷了一笔款d, 准备每月还款额为p, 月利率为r, 计算多少月能还清。设d为300000元,p为6000元,r为1%。对求得的月份取小数点后一位,对第2位按四舍五入处理。
#include"stdio.h"
#include"math.h"
int main()
{
    double r = 0.01 , m ;
    int d = 3000000,p = 6000;
    m = log(p/(p-(d*r)) / log(1+r));
    printf("能还清的月数为:%f\n",m);
    return 0;
}
这是CSDN上的代码:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
    int d = 300000, p = 6000;    //定义贷款总额,每月还贷数
    double r = 0.01, m, x, y;    //定义利率,月份
    x = p / (p - d * r);
    y = 1 + r;
    m = log10(x) / log10(y);     //计算公式
    printf("m=%.2lf\n", m);
    system("pause");
    return 0;
}

前者结果是5.30,后者是60多,求问:为什么结果不一样?库函数包含的内容在哪里能够找得到?
感谢鱼油们解答!
最佳答案
2021-5-25 10:17:30
第七行m = log(p/(p-(d*r)) / log(1+r));
改为m = log(p/(p-(d*r))) / log(1+r);问题就解决了
还有,你贴代码的时候其中的d的值多了个0;我说我怎么刹车踩断了都没得出5.30的答案
最后满意的话给个最佳啊亲
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-5-25 09:35:32 | 显示全部楼层
在写头文件的那行点右键就会出现一个菜单,有个选项是打开头文件的,不过估计看不懂,想知道里面包含哪些函数直接在百度上搜具体的头文件名就行了,至于程序问题还不知道,身边没电脑,手机太不方便了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-25 09:43:15 | 显示全部楼层
一个是log10,一个是log,怎么可能一样啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-25 09:52:49 | 显示全部楼层
m = log(p/(p-(d*r)) / log(1+r));
m = log10(x) / log10(y);
表达式不一样啊   你上面括号仔细看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2021-5-25 10:17:30 | 显示全部楼层    本楼为最佳答案   
第七行m = log(p/(p-(d*r)) / log(1+r));
改为m = log(p/(p-(d*r))) / log(1+r);问题就解决了
还有,你贴代码的时候其中的d的值多了个0;我说我怎么刹车踩断了都没得出5.30的答案
最后满意的话给个最佳啊亲
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-28 06:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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