Переменные в цикле не определяются - C#
Формулировка задачи:
Доброго времени суток. Пишу прогу на метод наименьших квадратов, вроде все норм, но переменные Syy, Sxx, Sxy в цикле не определяются, и при компиляции пишет, что значение переменных не задано.
Что не так?
Листинг программы
- class Program
- {
- static void Main(string[] args)
- {
- List<double> X = new List<double>();
- List<double> Y = new List<double>();
- double A, B, C, D, R, delta_A;
- double n = X.Count;
- double Sy, Sx, Syy, Sxx, Sxy;
- System.IO.StreamReader data = new System.IO.StreamReader("D:\\BAHR_Lon.dat");
- string line = data.ReadLine();
- while (line != null)
- {
- var substrings = line.Split(new char[2] { '\t', ' ' }, StringSplitOptions.RemoveEmptyEntries);
- X.Add(Convert.ToDouble(substrings[0]));
- Y.Add(Convert.ToDouble(substrings[1]));
- line = data.ReadLine();
- }
- data.Close();
- Sy = X.Sum();
- Sx = Y.Sum();
- // в цикле ниже переменные не определяются
- for (int i = 0; i < n - 1; i++)
- {
- Sxy =+ (X[i] * Y[i]);
- Sxx =+ (X[i] * X[i]);
- Syy =+ (Y[i] * Y[i]);
- Console.WriteLine(Syy + " " + Sxx);
- }
- A = (n * Sxy - Sx * Sy) / (n * Sxx - Sx * Sx);
- B = (Sy - A * Sx) / n;
- C = (n - 1) * Sxy / (n * Syy - Sy * Sy);
- D = (Sy - C * Sx) / n;
- R = Math.Abs(A * C);
- delta_A = Math.Sqrt((Syy - A*Sxy)/(n-2)*(Sxx-Sx*Sx/n));
- Console.WriteLine("A = " + A + "; B = " + B + "\n" + "C = " + C + "; D = " + D + "\n" + "коэффициент корелляции " + R + "; критерий Стьюдента " + delta_A);
- Console.ReadKey();
- }
- }
Решение задачи: «Переменные в цикле не определяются»
textual
Листинг программы
- for (int i = 0; i < n - 1; i++)
- {
- Sxy =+ (X[i] * Y[i]);
- Sxx =+ (X[i] * X[i]);
- Syy = 10;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д