home *** CD-ROM | disk | FTP | other *** search
- VERSION 5.00
- Begin VB.Form StatsForm
- Caption = "Simple Statistics"
- ClientHeight = 3990
- ClientLeft = 60
- ClientTop = 345
- ClientWidth = 5880
- LinkTopic = "Form1"
- ScaleHeight = 3990
- ScaleWidth = 5880
- StartUpPosition = 3 'Windows Default
- Begin VB.ListBox List1
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 2580
- Left = 150
- TabIndex = 1
- Top = 480
- Width = 2550
- End
- Begin VB.CommandButton Command1
- Caption = "Show Statistics"
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 700
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 435
- Left = 3900
- TabIndex = 0
- Top = 3360
- Width = 1800
- End
- Begin VB.Label Label1
- Caption = "Random Data Sample"
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 285
- Left = 120
- TabIndex = 10
- Top = 150
- Width = 2040
- End
- Begin VB.Label lblSTATS
- BorderStyle = 1 'Fixed Single
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 315
- Index = 3
- Left = 3030
- TabIndex = 9
- Top = 2745
- Width = 2610
- End
- Begin VB.Label lblMAX
- Caption = "Max Value"
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 225
- Left = 3030
- TabIndex = 8
- Top = 2475
- Width = 1260
- End
- Begin VB.Label lblSTATS
- BorderStyle = 1 'Fixed Single
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 315
- Index = 2
- Left = 3030
- TabIndex = 7
- Top = 1995
- Width = 2610
- End
- Begin VB.Label lblMEAN
- Caption = "Min Value"
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 225
- Left = 3030
- TabIndex = 6
- Top = 1725
- Width = 1260
- End
- Begin VB.Label lblSTATS
- BorderStyle = 1 'Fixed Single
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 315
- Index = 1
- Left = 3030
- TabIndex = 5
- Top = 1245
- Width = 2610
- End
- Begin VB.Label lblSTDDEV
- Caption = "Deviation"
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 225
- Left = 3030
- TabIndex = 4
- Top = 975
- Width = 1260
- End
- Begin VB.Label lblSTATS
- BorderStyle = 1 'Fixed Single
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 315
- Index = 0
- Left = 3030
- TabIndex = 3
- Top = 540
- Width = 2610
- End
- Begin VB.Label lblAVG
- Caption = "Average"
- BeginProperty Font
- Name = "Verdana"
- Size = 9
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 225
- Left = 3030
- TabIndex = 2
- Top = 270
- Width = 1260
- End
- Attribute VB_Name = "StatsForm"
- Attribute VB_GlobalNameSpace = False
- Attribute VB_Creatable = False
- Attribute VB_PredeclaredId = True
- Attribute VB_Exposed = False
- Option Base 1
- Private Sub Command1_Click()
- Dim SData(99) As Double
- Dim Stats() As Double
- List1.Clear
- For i = 1 To 99
- SData(i) = Rnd() * 10000
- List1.AddItem SData(i)
- Stats() = ArrayStats(SData())
- For i = 1 To 4
- lblSTATS(i - 1).Caption = Stats(i)
- End Sub
- Function ArrayStats(DataArray() As Double) As Double()
- Dim Res(4) As Double
- Sum = 0
- SumSquares = 0
- DCount = 0
- DataMin = 999999
- DataMax = -999999
- For i = LBound(DataArray) To UBound(DataArray)
- Sum = Sum + DataArray(i)
- SumSquares = SumSquares + DataArray(i) ^ 2
- If DataArray(i) > DataMax Then DataMax = DataArray(i)
- If DataArray(i) < DataMin Then DataMin = DataArray(i)
- DCount = DCount + 1
- Avg = Sum / DCount
- StdDev = Sqr(SumSquares / DCount - Avg ^ 2)
- Res(1) = Avg
- Res(2) = StdDev
- Res(3) = DataMin
- Res(4) = DataMax
- ArrayStats = Res
- End Function
-