sách gpt4 ai đã đi

Chuỗi lũy thừa và giai thừa và giải thích - Stack Overflow

In lại 作者:行者123 更新时间:2023-12-02 11:36:24 28 4
mua khóa gpt4 Nike

câu hỏi:

SeriesSum 类旨在计算以下系列的总和:

câu hỏi

类名:SeriesSum

数据成员/实例变量:

x:存储整数

n:存储术语数量

sum:用于存储系列总和的双变量

成员函数:

SeriesSum(int xx, int nn):分配 x=xx 和 n=nn 的构造函数

double findfact(int m) 使用递归返回 m 的阶乘技术。

double findpower(int x, int y) :使用以下方法返回 x 的 y 次方递归技术。

voidcalculate():通过调用计算序列的总和分别是递归函数

void display( ) :显示系列的总和

(a) 指定 SeriesSum 类,给出构造函数的详细信息(int, int),double findfact(int)、double findpower(int, int)、voidcalculate() 和无效显示()。

定义main()函数来创建一个对象并调用相应的函数来启用任务。

Mã số:

class SeriesSum
{
int x,n;
double sum;
SeriesSum(int xx,int nn)
{ x=xx;
n=nn;
sum=0.0;
}
double findfact(int a)
{ return (a<2)? 1:a*findfact(a-1);
}
double findpower(int a, int b)
{ return (b==0)? 1:a*findpower(a,b-1);
}
void calculate()
{ for(int i=2;i<=n;i+=2)
sum += findpower(x,i)/findfact(i-1);
}
void display()
{ System.out.println("sum="+ sum);
}
static void main()
{ SeriesSum obj = new SeriesSum(3,8);
obj.calculate();
obj.display();
}
}

Câu hỏi của tôi:

我在理解时遇到问题,当 i= 任何奇数时(这里以 3 为例),那么通过 findfact 的值是 (i-1)=2 那么我如何得到奇数阶乘,例如3!

任何帮助或指导将不胜感激。

可选:

如果您能以某种方式解释 findpower 和 findfactorial 中发生的递归,那将会有很大帮助。

1 Câu trả lời

仔细看看循环。 Tôi 从 2 开始,每次迭代都会增加 2,因此它永远不会是奇数。它对应于 x 的连续幂,每个幂除以 i -1 的阶乘(为奇数)。

Đối vớifindfact中的递归,您只需手动解开前几次调用即可了解其工作原理:

findfact(a) = a * findfact(a -1) 
= a * (a - 1) * findfact(a -2)
= a * (a - 1) * (a - 2) * findfact(a - 3)
...
= a * (a - 1) * (a - 2) * ... * 2 * findfact(1)
= a * (a - 1) * (a - 2) * ... * 2 * 1
= a!*

同样的推理也适用于 findpower.

顺便说一句,虽然递归可能有助于教学目的,但对于计算阶乘或幂来说,递归是一个糟糕的主意。

关于java - 幂和阶乘级数和 说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48909034/

28 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com