jhylands

line of best fit

Feb 14th, 2012
173
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 1.31 KB | None | 0 0
  1. Module Module1
  2.     Public Structure training
  3.         Dim y As Single
  4.         Dim x As Single
  5.     End Structure
  6.     Sub Main()
  7.         Console.ReadLine()
  8.         Dim derivitive(1) As Single
  9.         Dim training(10000) As training
  10.         For i = 0 To 10000
  11.             training(i).y = 0.5 * i + 0.3
  12.             training(i).x = i
  13.         Next
  14.         derivitive(1) = AverageGradient(training)
  15.         derivitive(0) = AverageConstant(derivitive(1), training)
  16.         Console.WriteLine(derivitive(1) & "x+" & derivitive(0))
  17.         Console.ReadLine()
  18.     End Sub
  19.     Function AverageGradient(ByVal training() As training) As Single
  20.         Dim totalGraidient As Single = 0
  21.         Dim miss As Integer = 0
  22.         For i = 0 To training.GetLength(0) - 2
  23.             totalGraidient = totalGraidient + (training(i).y - training(i + 1).y) / (training(i).x - training(i + 1).x)
  24.             miss = miss + 1
  25.         Next
  26.         AverageGradient = totalGraidient / miss
  27.     End Function
  28.     Function AverageConstant(ByVal gradient As Single, ByVal trainting() As training) As Single
  29.         Dim totalConstant As Single
  30.         For i = 0 To trainting.GetLength(0) - 1
  31.             totalConstant = totalConstant + (trainting(i).y - gradient * i)
  32.         Next
  33.         AverageConstant = totalConstant / (trainting.GetLength(0))
  34.     End Function
  35. End Module
Advertisement
Add Comment
Please, Sign In to add comment