gpt4 book ai didi

c - 在屏幕上显示进程的 n 元素

转载 作者:行者123 更新时间:2023-11-30 15:21:55 25 4
gpt4 key购买 nike

我的任务是

Show on the screen n-element of the progression {xi}.

Xi = Xi-1 - 3Xi-2
X0 = 0
X1 = 2
i = [2,n]

到这里就完成了,但是我不太理解这个主题,所以我需要一些帮助。我的代码(不起作用):

void __fastcall TForm1::Button1Click(TObject *Sender)
{
int n = Edit1->Text.ToInt();
int i, x;
if(n==0){
i=0;
Label1->Caption = IntToStr(i);
}
if(n==1){
i=2;
Label1->Caption = IntToStr(i);
}
else {
for(i=2;i<=n;i++){
x=(i-1)-3*(i-2);
Label1->Caption = IntToStr(x);
}
}
}

没有必要在C++ Builder中编写代码

最佳答案

您误解了级数公式。 Xi-1Xi-2 指的是您的进度中计算的先前元素。

因此您需要两个变量,它们将携带您刚刚计算的先前值。在任何给定的循环中,您可以使用通用级数公式计算当前的 Xi 值,然后将 Xi-1 的值复制到 Xi-2 中,抛出 Xi-2 的先前值。然后将 Xi 的值(到目前为止的当前值)复制到 Xi-1 中。

void __fastcall TForm1::Button1Click(TObject *Sender)
{
int n = Edit1->Text.ToInt();
int i, x;
int xim1, xim2
if(n==0){
i=0;
Label1->Caption = IntToStr(i);
}
if(n==1){
i=2;
Label1->Caption = IntToStr(i);
}
else {
xim1 = 2;
xim2 = 0;
for(i=2;i<=n;i++){
x = xim1-3*xim2;
xim2 = xim1;
xim1 = x;
}
Label1->Caption = IntToStr(x);
}
}

关于c - 在屏幕上显示进程的 n 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29433435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com