Data commit

This commit is contained in:
Ingy döt Net 2023-07-01 11:58:00 -04:00
parent 7387c8f97b
commit cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions

View file

@ -0,0 +1,37 @@
'Simple Stack class
'uses a dynamic array of Variants to stack the values
'has read-only property "Size"
'and methods "Push", "Pop", "IsEmpty"
Private myStack()
Private myStackHeight As Integer
'method Push
Public Function Push(aValue)
'increase stack height
myStackHeight = myStackHeight + 1
ReDim Preserve myStack(myStackHeight)
myStack(myStackHeight) = aValue
End Function
'method Pop
Public Function Pop()
'check for nonempty stack
If myStackHeight > 0 Then
Pop = myStack(myStackHeight)
myStackHeight = myStackHeight - 1
Else
MsgBox "Pop: stack is empty!"
End If
End Function
'method IsEmpty
Public Function IsEmpty() As Boolean
IsEmpty = (myStackHeight = 0)
End Function
'property Size
Property Get Size() As Integer
Size = myStackHeight
End Property

View file

@ -0,0 +1,21 @@
'stack test
Public Sub stacktest()
Dim aStack As New Stack
With aStack
'push and pop some value
.Push 45
.Push 123.45
.Pop
.Push "a string"
.Push "another string"
.Pop
.Push Cos(0.75)
Debug.Print "stack size is "; .Size
While Not .IsEmpty
Debug.Print "pop: "; .Pop
Wend
Debug.Print "stack size is "; .Size
'try to continue popping
.Pop
End With
End Sub