gpt4 book ai didi

C# Windows窗体算法计算

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:52:03 26 4
gpt4 key购买 nike

我是 C# 开发的新手。我在表单上有一个标签,显示以下序列 1,1,1,3,5,9 和一个按钮。单击按钮时,我希望它将数字序列添加到标签中。例如 :我知道上面的序列是如何工作的 1+1+1=3,3+1+1=5,5+3+1=9 ,所以它计算前 3 个数字以添加到序列中。我想要实现的是,每次单击按钮时,它必须显示 ex 中的下一个数字:9 之后,将是 17,因为 3+5+9=17 等等......它必须上升每次点击它时。您的帮助将受到高度赞赏。

最佳答案

我相信您要执行的算法是创建一个 List<int>包含 int将在标签上使用的 s。

List<int> numbers = new List<int>();

那么你正在尝试 .Add前 6 个起始数字进入列表,如下所示:

numbers.Add(1);
numbers.Add(1);
numbers.Add(1);
numbers.Add(3);
numbers.Add(5);
numbers.Add(9);

一旦用户点击按钮,将原来标签的文本信息更改为也有添加int的最后三个元素的结果。在 List<int> 内.

这可以通过使用 .Count 来完成获取 List<int> 的长度/大小按照以下方式:

int x = numbers[numbers.Count - 1];  //Last number/element in List
int y = numbers[numbers.Count - 2]; //Second to last
int z = numbers[numbers.Count - 3]; //Third to last
int result = x + y + z; //sum of last number plus second to last number plus third to last number

别忘了 .Add将最后三个元素添加到 List<int> 末尾的结果.

numbers.Add(result);

添加结果后,您可以设置标签的 .Text以下列方式连接字符串的值:

numbersLabel.Text = string.Join(", ", numbers);

下面是包含按钮和实现此算法的标签的类的示例演示。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApp1
{
public partial class LabelAlgorithm : Form
{
public List<int> numbers = new List<int>();

public LabelAlgorithm()
{
numbers.Add(1);
numbers.Add(1);
numbers.Add(1);
numbers.Add(3);
numbers.Add(5);
numbers.Add(9);

InitializeComponent();
numbersLabel.Text = string.Join(", ", numbers);
}

private void SubmissionButton_Click(object sender, EventArgs e)
{
int x = numbers[numbers.Count - 1];
int y = numbers[numbers.Count - 2];
int z = numbers[numbers.Count - 3];

int result = x + y + z;

numbers.Add(result);

numbersLabel.Text = string.Join(", ", numbers);


}
}
}

输出到标签:

1, 3, 5, 9, 17, 31, 57, 105, 193, 355, 653, 1201, 2209, 4063...

关于C# Windows窗体算法计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47726083/

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