老师,有道题目想请您指点一下,谢谢!

老师,有道题目想请您指点一下,谢谢!

问题描述:

老师这是一道咱们自带的递归算法练习题

小慕入职新公司,月薪一万元。工资每年涨幅5%。补充代码,计算出小慕工作20年后,月薪为多少?

问题描述:

我写这段代码就是想下来计算一下第2年的工资,但是不知道那里写出了错误,导致无法运行,所以想请您帮帮忙,谢谢!!!

相关代码:

function fun(n){
   var result;
   var a=12;
   var sum=fun(n)*a;
   if(sum==12000){
     result=sum*0.05+sum;
     return result;
   }
}
fun(10000);
console.log(result);


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕星星 2021-11-06 13:58:33

同学你好,工资每年涨幅5%,是月薪涨幅,不是年薪哦,所以一年后月薪还是10000 。从第二年开始计算涨幅,输出的也是月薪,代码没问题。

自己再理解下。

好帮手慕星星 2021-11-06 09:57:29

同学你好,如果想通过年数计算值,建议将年数作为函数参数,参考:

https://img1.sycdn.imooc.com//climg/6185e0ad094362ef05610427.jpg

在fun函数中,如果year为1,直接返回10000;如果year不为1,返回递归调用fun乘以(本金+涨幅) 。

自己测试下,祝学习愉快!

  • 提问者 慕粉1924517932 #1

    老师您这使用if语句来进行判断不应该是这样吗if(year==1)return 120000

    因为题目是小慕的月薪为10000元,不是年薪为10000,所以我们不应该先进行口算出第一年的年薪吗?

    2021-11-06 13:46:55
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师