46 lines
710 B
Plaintext
46 lines
710 B
Plaintext
PROGRAM CLASS_DEMO
|
|
|
|
CLASS QUEUE
|
|
|
|
LOCAL SP
|
|
LOCAL DIM STACK[100]
|
|
|
|
FUNCTION ISEMPTY()
|
|
ISEMPTY=(SP=0)
|
|
END FUNCTION
|
|
|
|
PROCEDURE INIT
|
|
SP=0
|
|
END PROCEDURE
|
|
|
|
PROCEDURE POP(->XX)
|
|
XX=STACK[SP]
|
|
SP=SP-1
|
|
END PROCEDURE
|
|
|
|
PROCEDURE PUSH(XX)
|
|
SP=SP+1
|
|
STACK[SP]=XX
|
|
END PROCEDURE
|
|
|
|
END CLASS
|
|
|
|
NEW PILA:QUEUE
|
|
|
|
BEGIN
|
|
PILA_INIT ! constructor
|
|
FOR N=1 TO 4 DO ! push 4 numbers
|
|
PRINT("Push";N)
|
|
PILA_PUSH(N)
|
|
END FOR
|
|
FOR I=1 TO 5 DO ! pop 5 numbers
|
|
IF NOT PILA_ISEMPTY() THEN
|
|
PILA_POP(->N)
|
|
PRINT("Pop";N)
|
|
ELSE
|
|
PRINT("Queue is empty!")
|
|
END IF
|
|
END FOR
|
|
PRINT("* End *")
|
|
END PROGRAM
|