fork download
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. class Program
  6. {
  7. static void Main()
  8. {
  9. List<int> data = new List<int> { 123456, 125678, 127899, 130000, 132345 };
  10.  
  11. int n = data.Count;
  12. double sumX = 0, sumY = 0, sumXY = 0, sumXX = 0;
  13.  
  14. for (int i = 0; i < n; i++)
  15. {
  16. double x = i + 1;
  17. double y = data[i];
  18. sumX += x;
  19. sumY += y;
  20. sumXY += x * y;
  21. sumXX += x * x;
  22. }
  23.  
  24. double slope = (n * sumXY - sumX * sumY) / (n * sumXX - sumX * sumX);
  25. double intercept = (sumY - slope * sumX) / n;
  26.  
  27. double nextX = n + 1;
  28. double predicted = slope * nextX + intercept;
  29.  
  30. Console.WriteLine($"ค่าคาดการณ์ถัดไป: {predicted:000000}");
  31. }
  32. }
  33.  
Success #stdin #stdout 0.03s 25924KB
stdin
Standard input is empty
stdout
using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        List<int> data = new List<int> { 123456, 125678, 127899, 130000, 132345 };

        int n = data.Count;
        double sumX = 0, sumY = 0, sumXY = 0, sumXX = 0;

        for (int i = 0; i < n; i++)
        {
            double x = i + 1;
            double y = data[i];
            sumX += x;
            sumY += y;
            sumXY += x * y;
            sumXX += x * x;
        }

        double slope = (n * sumXY - sumX * sumY) / (n * sumXX - sumX * sumX);
        double intercept = (sumY - slope * sumX) / n;

        double nextX = n + 1;
        double predicted = slope * nextX + intercept;

        Console.WriteLine($"ค่าคาดการณ์ถัดไป: {predicted:000000}");
    }
}