
怎样用VB编一个求数列和的软件
数列和N可以随便使用者添,不知道可以不可以实现这种功能?我要的是可以任意数列的是除了等差和等比通项公式是让用户写的可以不?...
数列和N可以随便使用者添,不知道可以不可以实现这种功能?
我要的是可以任意数列的 是除了等差和等比
通项公式是让用户写的 可以 不 ? 展开
我要的是可以任意数列的 是除了等差和等比
通项公式是让用户写的 可以 不 ? 展开
展开全部
如果你只需要数列和,而不需要输出数列的话,这个可以一个循环直接实现,还是蛮简单的,不考虑数据类型上下界的话
伪代码
sum = 0;
read(n);
while(n>0){read(x); sum = sum + x; n = n - 1;}
print(sum);
伪代码
sum = 0;
read(n);
while(n>0){read(x); sum = sum + x; n = n - 1;}
print(sum);
更多追问追答
追问
谢谢你的答复 ,我是新手 ,要上课了 ,下次我试试,等等
追答
你的补充可以做如下回答:
在我给你的伪代码中,替换read(x)为通项公式即可;(这一步是读取数列中的一个数,你可以手工输入,也可以用函数计算输入,即这是由你怎么实现read决定的,PS. 我给的是伪代码,你理解思路就行,具体语言编码的细节调整,语法调整请自行完成)
展开全部
使用数列求和公式即可完成:
如果一个数列从第二项起,每一项与它的前一项的差等于同一个常数,这个数列就叫做等差数列,这个常数叫做等差数列的公差,公差常用字母d表示。
等差数列的通项公式为:an=a1+(n-1)d (1)
前n项和公式为:Sn=na1+n(n-1)d/2或Sn=n(a1+an)/2 (2)
以上n均属于正整数。
如果一个数列从第2项起,每一项与它的前一项的比等于同一个常数,这个数列就叫做等比数列。这个常数叫做等比数列的公比,公比通常用字母q表示(q≠0)。
(1)等比数列的通项公式是:An=A1*q^(n-1)
若通项公式变形为an=a1/q*q^n(n∈N*),当q>0时,则可把an看作自变量n的函数,点(n,an)是曲线y=a1/q*q^x上的一群孤立的点。
(2)求和公式:Sn=nA1(q=1)
Sn=A1(1-q^n)/(1-q)
=(a1-a1q^n)/(1-q)
=a1/(1-q)-a1/(1-q)*q^n ( 即A-Aq^n)
(前提:q不等于 1)
等差序列程序:
private function CountSum(dim a1 as double,dim an as double,dim n as double ,d as double) as double
Countsum=n*(a1+an)/2
end function
等比序列程序:
private function CountSumNum(dim A1 as double,dim q as double,dim n as double ) as double
CountSumNum= A1*(1-q^n)/(1-q)
end function
以上两程序中的变量我用了double类型,如果你不需要这么高的精度,可以改为integer 或者long类型
如果一个数列从第二项起,每一项与它的前一项的差等于同一个常数,这个数列就叫做等差数列,这个常数叫做等差数列的公差,公差常用字母d表示。
等差数列的通项公式为:an=a1+(n-1)d (1)
前n项和公式为:Sn=na1+n(n-1)d/2或Sn=n(a1+an)/2 (2)
以上n均属于正整数。
如果一个数列从第2项起,每一项与它的前一项的比等于同一个常数,这个数列就叫做等比数列。这个常数叫做等比数列的公比,公比通常用字母q表示(q≠0)。
(1)等比数列的通项公式是:An=A1*q^(n-1)
若通项公式变形为an=a1/q*q^n(n∈N*),当q>0时,则可把an看作自变量n的函数,点(n,an)是曲线y=a1/q*q^x上的一群孤立的点。
(2)求和公式:Sn=nA1(q=1)
Sn=A1(1-q^n)/(1-q)
=(a1-a1q^n)/(1-q)
=a1/(1-q)-a1/(1-q)*q^n ( 即A-Aq^n)
(前提:q不等于 1)
等差序列程序:
private function CountSum(dim a1 as double,dim an as double,dim n as double ,d as double) as double
Countsum=n*(a1+an)/2
end function
等比序列程序:
private function CountSumNum(dim A1 as double,dim q as double,dim n as double ) as double
CountSumNum= A1*(1-q^n)/(1-q)
end function
以上两程序中的变量我用了double类型,如果你不需要这么高的精度,可以改为integer 或者long类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询