- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我是 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/
对于一个科学实验,我写了一个turtle.py ,它会打开一个 800x480 的窗口并绘制一个缓慢增长的黑点。 turtle.py以 C:\Users\kaza>python C:\Users\ka
我开发了一个 swing 应用程序,但每次运行应用程序时都会打开一个新窗口。我希望如果一个窗口已经打开,则其他窗口不允许打开。 最佳答案 Here是一个 Java 单一应用实例的例子: A singl
有没有办法检测主进程中 Electron 的结构? process.platform 似乎也在 x64 机器上返回 win32,我没有在文档中找到任何获取架构的选项。 最佳答案 你试过 process
public short[] HanningWindow(short[] signal_in ,int pos ,int size) { for (int i= pos; i < pos+si
我有一个具有这些属性的 Electron 窗口: mainWindow = new BrowserWindow({ width: 800, height: 600, title: "Aqu
我有一个 Ubuntu 工作站,我正在尝试引导一个 Windows 节点。 Windows 节点在端口 2222 上打开了 ssh。我一直在关注 http://docs.opscode.com/plu
我是一名优秀的程序员,十分优秀!