首页 > 代码库 > 计算a+aa+aaa+aaaa+...+a...a(n个a) 的和,求解!
计算a+aa+aaa+aaaa+...+a...a(n个a) 的和,求解!
这是CSDN上的一个题
题目详情:
给定a和n,计算a+aa+aaa+aaaa+...+a...a(n个a) 的和。
输入描述:
测试数据有多组,以文件结尾。每行输入a,n(1<=a,n<=1000000)。
输出描述:
由于结果可能比较大,所以请输出答案mod 1000000007。
答题说明:
输入样例:
1 10
输出样例:
234567893
我的最终结果是:
#include
#include
int main(void)
{
int a,n,i;
while(scanf("%d %d",&a,&n)!=EOF)
{
int sum=0,s=0;
for(i=1;i<=n;i++)
{
s=s+a*pow(10,(i-1));
sum=sum+s;
sum=sum00000007;
}
printf("%d ",sum);
}
return 0;
}
在VC6.0里面运行:
中间走了好多弯路:循环语句用了两个,循环中有循环,后来查找了一下方法发现一个for循环就可以搞定;搞完后又发现题目要求多组测试数据,并以文件结尾,于是添加“ while(scanf("%d %d",&a,&n)!=EOF)”,结果输出的结果不正确,远比正确值大,分析了一下,觉得是sum和s的赋值语句位置问题,于是将sum=0,s=0放入while的循环体中,输出结果才正确。之前的在线测试发现错误后我都能找到更正,但做完最后编译结果出错后,
头都大了,找不到头绪。我觉得有两种可能:1,输出完毕后没有立即终止程序;2,对题目的解读还存在错误。希望能有大神指点,感激不尽!
计算a+aa+aaa+aaaa+...+a...a(n个a) 的和,求解!
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。