-5

我不是程序员,但我正在学习 C# 来构建一个外汇交易系统,而数组正在努力……</p>

我遇到的问题如下……</p>

我有一个一维数组,比方说,其中有 100 个元素。

现在我需要基于第一个数组构建另一个具有 10 个元素滚动平均值的一维数组。

换句话说,我需要从第一个数组中获取从 i = 0 到 i = 9 的元素并对它们进行平均并将平均值保存在一个新数组中。比向前迈出一步,从原始数组中取 i = 1 到 i = 10 并对它们进行平均并将结果保存在新数组中……等等……在 Excel 中,这将非常容易……。

我需要数组中的数据是因为稍后我需要将最后 10 个元素的滚动平均值与历史数据进行比较……。

请问,任何人都可以构建一个我可以使用的示例代码吗?

非常感谢保罗

4

1 回答 1

0

也许这样的事情可以工作......在我的mac上用崇高的文字做了这个,所以你仍然需要使用。应该明白这一点。

 public class Foo 
 {
    List<int> main = new List<int>(100);
    List<int> rollingAverages = new List<int>(100);

    public void Add(int score)
    {
        main.Add(score);
        if(main.Count > 10)
        {
            int rollingAverage = AverageLast10();
            rollingAverages.Add(rollingAverage);
        }
    }

    public int AverageLast10()
    {
        int sum = 0;
        for(int i = main.Count - 10; i < 10; i++)
        {
            sum += main[i];
        }
        return sum / 10;
    }
 }   


Somewhere else in the code

Foo foo = new Foo();
foo.Add(94);
foo.Add(94);
...
 yadda yadda yadda
于 2013-08-16T01:35:00.227 回答