递归求1*1+2*2+3*3+……+n*n
时间: 1ms 内存:128M
描述:
定义一个递归函数sum,函数声明如下:int sum(int n); //函数声明,返回12+22+32+……+n2的和在下面代码的基础上完成,提交时只提交sum的函数定义。#include <iostream>#include <cmath>using namespace std;int sum(int n); //函数声明,求12+22+32+……+n2的和int main(){int n,s;cin>>n;s= sum(n) ; //函数调用cout<<s<<endl;return 0;}注意:sum为递归函数
输入:
正整数n的值
输出:
12+22+32+……+n2的和
示例输入:
5
示例输出:
55
提示:
参考答案(内存最优[552]):
program p1000(Input,Output);
var
a,b,i:integer;
begin
read(a);
for i:=1 to a do
b :=b+ i*i;
writeln(b);
end.
参考答案(时间最优[0]):
#include <iostream>
#include <cmath>
using namespace std;
int sum(int n); //函数声明,求12+22+32+……+n2的和
int main()
{
int n,s;
cin>>n;
s= sum(n) ; //函数调用
cout<<s<<endl;
return 0;
}
int sum(int n) //函数d定义,求12+22+32+……+n2的和
{
if(n==1)
return 1;
if(n>1)
return sum(n-1)+n*n;
}
题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。
