创建一个方法,为c#数组中的每个值打印不同的输出

本文关键字:输出 数组 打印 一个 方法 创建 | 更新日期: 2023-09-27 18:10:30

嗨,我目前有一个数组,其中包含文本文件的所有值,当前在运行时读取文件,但我想在运行时为数组中的每个值生成输出。现在,当程序运行结束时,在所有的值都被读取回来之后,我有一个输出,但是我想在程序打印回来的每个值旁边产生一个输出列表。输出是使用训练算法创建的。下面是我的代码:

这是我定义数组和其他变量的地方:

       `double[] x = new double [3501];`
        double output = 1;
        double netSum;
        double input = 0;            
        double[] x_P = new double[3501];
        double error = input - output;
        Random r = new Random();
        double[] weights = { r.NextDouble(), r.NextDouble(), r.NextDouble() };
        double learningrate = 0.1;
        double delta;    enter code here

这是将文本文件放入数组的地方:

try
        {
            using (StreamReader sr = new StreamReader("test.txt"))
            {
                for (int y = 0; y < 3501; y++)
                {
                   String line = sr.ReadLine();
                   x[y] = Double.Parse(line);
                   Console.WriteLine(line);
                }

            }
下面是我用来创建输出的算法:
while (error != 0.01)
            {
                error = 1;
                foreach (double x_value in x)
                {
                    netSum = 0.01;
                    double i = 1;
                    for (i = 1; i < 3501; i++)
                    {
                        netSum =  x[1] * weights[1] + x[2] * weights[2];
                    }
                    x_P[2] = Sigmoid(netSum);
                    output = x_P[2];

                    if (output >= error)
                    {
                        for (i = 1; i < 3501; i++)
                        {

                            delta = x_value - output;
                            error = x[2] - x_P[2];
                            weights[(int)i] += learningrate * delta * x_value;
                            error += Math.Abs(error);

                        }
                    }
                }
                Console.WriteLine(output);
                Console.ReadLine();
            }
        }

        catch (Exception e)
        {
            // Log the exception and quit...                
            Console.WriteLine("The file could not be read:");
            Console.WriteLine(e.Message);
        }

    }
    public static double Sigmoid(double x)
    {
        return 1 / (1 + Math.Exp(-x));
    }

    public double Derivative(double x)
    {
        double s = Sigmoid(x);
        return s * (1 - s);
    }

所以我基本上想要输出x中的每个值,当这些值被打印出来时,有人能帮助我吗?

创建一个方法,为c#数组中的每个值打印不同的输出

您可以将Console.WriteLine放入foreach循环中:

foreach (double x_value in x)
{
    ...
    Console.WriteLine(output);
}
Console.ReadLine();