'===========================================================================
' Subject: SIERPINSKI GASKET                  Date: 02-13-96 (22:15)       
'  Author: Kevin Krumwiede/Aaron Zabudsky     Code: QB, QBasic, PDS        
'  Origin: FidoNet QUIK_BAS Echo            Packet: EGAVGA.ABC
'===========================================================================
' Sierpinski Gasket Proggy by Kevin Krumwiede
' Rulz!
' (I took too many math courses...)

SCREEN 12
DEFINT X-Y
FOR y = 0 TO 255
  FOR x = 0 TO y
    IF (x AND (y - x)) = 0 THEN
    PSET (x + 158 - .5 * y, y + 30)
    END IF
  NEXT x
NEXT y
END

'-------8<---[ Begin Aaron Scott Zabudsky's Triangle thingy ]--->8------

RANDOMIZE TIMER
SCREEN 12
x1 = 100: y1 = 400
x2 = 500: y2 = 400
x3 = 300: y3 = 54
PSET (x1, y1), 14
PSET (x2, y2), 14
PSET (x3, y3), 14
gamex = x1
gamey = y1
WHILE c < 10000
dice = INT(RND(1) * 3)
   IF dice = 0 THEN
      gamex = gamex + (x1 - gamex) / 2
      gamey = gamey + (y1 - gamey) / 2
   ELSEIF dice = 1 THEN
      gamex = gamex + (x2 - gamex) / 2
      gamey = gamey + (y2 - gamey) / 2
   ELSEIF dice = 2 THEN
      gamex = gamex + (x3 - gamex) / 2
      gamey = gamey + (y3 - gamey) / 2
   END IF
   PSET (gamex, gamey), 15
WEND

