c#求和1!+2!+3!+4!+.....n!的和?
用c#语言做有点难哦n!这个表达式不知道怎么写usingSystem;classjia{staticvoidMain(){inti;intsum=0;intt=1;int...
用c#语言做 有点难哦 n!这个表达式不知道怎么写
using System;
class jia
{
static void Main()
{
int i;
int sum = 0;
int t = 1;
int n = Console.Read();
for (i = 1; i <= n; i++)
{
t = t * i;
sum = sum + t;
Console.WriteLine(sum);
}
}
}
运行vs2005调试下会不停地循环下去大家也试试看 需要用什么语言来限制一下啊 展开
using System;
class jia
{
static void Main()
{
int i;
int sum = 0;
int t = 1;
int n = Console.Read();
for (i = 1; i <= n; i++)
{
t = t * i;
sum = sum + t;
Console.WriteLine(sum);
}
}
}
运行vs2005调试下会不停地循环下去大家也试试看 需要用什么语言来限制一下啊 展开
7个回答
2010-04-08
展开全部
很简单用递归就行了
自己写方法测试一下,你应该看的懂
public int CalculateSum(int n)
{
int sum = 0;
for (int i = 1; i <= n; i++)
{
sum += CalculateClass(n);
}
return sum;
}
private int CalculateClass(int n)
{
if (n <= 1) return 1;
return n * CalculateClass(n - 1);
}
这里有个BUG数字不能太大,超出Int.max就会出异常,你可以把int换成decimal
自己写方法测试一下,你应该看的懂
public int CalculateSum(int n)
{
int sum = 0;
for (int i = 1; i <= n; i++)
{
sum += CalculateClass(n);
}
return sum;
}
private int CalculateClass(int n)
{
if (n <= 1) return 1;
return n * CalculateClass(n - 1);
}
这里有个BUG数字不能太大,超出Int.max就会出异常,你可以把int换成decimal
参考资料: 我自己
展开全部
int sum=0;
int k=1;
for(int i=1;i<=n;i++)
{
k=k*i;
sum+=k;
}
return sum;
int k=1;
for(int i=1;i<=n;i++)
{
k=k*i;
sum+=k;
}
return sum;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Console.Read();
读取的是ASCII码值,要把n-48才可以。
要算48+的阶乘,你要把电脑累死啊 - -!
读取的是ASCII码值,要把n-48才可以。
要算48+的阶乘,你要把电脑累死啊 - -!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
s=0
a=1
i=1
DO
a=a*i
s=s+a
i=i+1
UNTIL i>n
END
PRINT s
主体没问题,连接词可能有些不同,自己调试下
a=1
i=1
DO
a=a*i
s=s+a
i=i+1
UNTIL i>n
END
PRINT s
主体没问题,连接词可能有些不同,自己调试下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
(2+1/3)+(4+1/9)+...+(2n+1/3的n次方)
=(2+4+...2n)+(1/3+1/9+...+1/3的n次方)
=n*(n+1)+1/3*(1-1/3的n次方)/((1-1/3)
=n*(n+1)+(1-1/3的n次方)/2
=n²+n+1/2-1/(2*3的n次方)
=(2+4+...2n)+(1/3+1/9+...+1/3的n次方)
=n*(n+1)+1/3*(1-1/3的n次方)/((1-1/3)
=n*(n+1)+(1-1/3的n次方)/2
=n²+n+1/2-1/(2*3的n次方)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
很简单用递归就行了
自己写方法测试一下,你应该看的懂
public
int
CalculateSum(int
n)
{
int
sum
=
0;
for
(int
i
=
1;
i
<=
n;
i++)
{
sum
+=
CalculateClass(n);
}
return
sum;
}
private
int
CalculateClass(int
n)
{
if
(n
<=
1)
return
1;
return
n
*
CalculateClass(n
-
1);
}
这里有个BUG数字不能太大,超出Int.max就会出异常,你可以把int换成decimal
自己写方法测试一下,你应该看的懂
public
int
CalculateSum(int
n)
{
int
sum
=
0;
for
(int
i
=
1;
i
<=
n;
i++)
{
sum
+=
CalculateClass(n);
}
return
sum;
}
private
int
CalculateClass(int
n)
{
if
(n
<=
1)
return
1;
return
n
*
CalculateClass(n
-
1);
}
这里有个BUG数字不能太大,超出Int.max就会出异常,你可以把int换成decimal
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询