求Sn=m+mm+mmm+...+mm..mmm(有n个m)的值
2023-12-13 05:06:16
题目:求?的值?
一、做这个题我们其实可以直接一个for求解:
a,aa,aaa...我们很容易知道它们后一项与前一项的关系就是;
public static void Sum(int m,int n)
{
long sum = 0L;
long curAn = 0;
for (int i = 0; i < n; i++)
{
curAn = m+ 10* curAn;// An=m+10*A(n-1)
sum+= curAn;// 求和
}
Console.WriteLine(sum);
}
二、其实也可以用高中学的数列来做
现已知,下面我们具体来求解:
第一步转换:
;
第二步去括号求解K:
9K=m
解得K=?
第三步,将K=?带入?? 式子就可变成:
??
第四步,求解:
?
不难发现数列{?} 以?为首项,q=10为公比的等比数列;
那么?从而得到:
???得解!
接下来我们利用数学归纳法求解?:
①式子:
②式子:
我们知道q=10,于是得到③式子:
③-①:
?;
所以:
用代码表示:
public static void Sum2(int m, int n)
{
double result = 10 / (double)81 * (Math.Pow(10, n) - 1) * m - n / (double)9;
long sum = (long)result;
Console.WriteLine(sum);
}
总结:方法二要求数据功底较深,用到高中数学归纳法求解求和公式;方法一只需要每次迭代当前?,再求和。
文章来源:https://blog.csdn.net/ftfmatlab/article/details/134889620
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!