home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / PCBOARD / VOTE207.ZIP / VOTEGRAF.PPE (.txt) < prev   
PCBoard Programming Language Executable  |  1994-02-27  |  6KB  |  261 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Integer  TINTEGER001(16)
  20.     Integer  INTEGER002
  21.     Integer  INTEGER003
  22.     Integer  INTEGER004
  23.     Integer  INTEGER005
  24.     Integer  INTEGER006
  25.     Integer  INTEGER007
  26.     Integer  INTEGER008
  27.     Integer  INTEGER009
  28.     Integer  INTEGER010
  29.     Integer  INTEGER011
  30.     Integer  INTEGER012
  31.     Integer  INTEGER013
  32.     String   STRING001
  33.     String   TSTRING002(7)
  34.     String   TSTRING003(16)
  35.     String   STRING004
  36.     String   STRING005
  37.     String   STRING006
  38.     String   STRING007
  39.     String   TSTRING008(16)
  40.     String   STRING009
  41.     String   STRING010
  42.  
  43. ;------------------------------------------------------------------------------
  44.  
  45.     FOpen 1, PPEPath() + "vote.CFG", 0, 0
  46.     For INTEGER010 = 1 To 7
  47.         FGet 1, TSTRING002(INTEGER010)
  48.         TSTRING002(INTEGER010) = RTrim(Left(TSTRING002(INTEGER010), 29), " ")
  49.     Next
  50.     FClose 1
  51.     For INTEGER013 = 1 To TSTRING002(1)
  52.         STRING010 = INTEGER013
  53.         STRING009 = PPEPath() + "vote" + STRING010 + ".ans"
  54.         If (Exist(STRING009)) Continue
  55.         FCreate 1, STRING009, 1, 0
  56.         FClose 1
  57.     Next
  58.     PrintLn "@X10┌─────────────────────────────────────────────────────────────────────────────@X19┐@X0F"
  59.     PrintLn "@X10│··@X1EVoter++@X10······@X1AInitializing @X1EVoter++@X1A Bulletin Generator@X10··@X1A-@X10··@X1APlease wait....@X10···@X19│@X0F"
  60.     PrintLn "@X10└@X19─────────────────────────────────────────────────────────────────────────────┘@X0F"
  61.     Delete TSTRING002(7)
  62.     INTEGER012 = 6
  63.     For INTEGER011 = 1 To TSTRING002(1)
  64.         Inc INTEGER012
  65.         STRING001 = INTEGER011
  66.         FOpen 4, TSTRING002(INTEGER012), 1, 0
  67.         FDefOut 4
  68.         INTEGER004 = 0
  69.         INTEGER005 = 0
  70.         INTEGER006 = 0
  71.         INTEGER010 = 0
  72.         INTEGER002 = 0
  73.         INTEGER005 = 0
  74.         INTEGER006 = 0
  75.         INTEGER007 = 1
  76.         FOpen 5, PPEPath() + "vote" + STRING001 + ".ans", 0, 0
  77.         :LABEL001
  78.         If (Ferr(5)) Goto LABEL002
  79.         Inc INTEGER005
  80.         FGet 5, STRING007
  81.         Goto LABEL001
  82.         :LABEL002
  83.         FClose 5
  84.         INTEGER005 = INTEGER005 - 1
  85.         STRING004 = PPEPath() + "vote" + STRING001 + ".ans"
  86.         STRING005 = PPEPath() + "vote" + STRING001 + ".que"
  87.         STRING006 = ReadLine(STRING005, 1)
  88.         FOpen 2, STRING005, 0, 0
  89.         :LABEL003
  90.         If (Ferr(2)) Goto LABEL004
  91.         Inc INTEGER006
  92.         FGet 2, TSTRING008(INTEGER006)
  93.         TSTRING008(INTEGER006) = Left(TSTRING008(INTEGER006), 49)
  94.         Goto LABEL003
  95.         :LABEL004
  96.         FClose 2
  97.         FOpen 4, TSTRING002(7), 1, 0
  98.         FDefOut 4
  99.         FDPut "@CLS@"
  100.         FDPutLn "@X04Q#@X09 ", INTEGER011, "@X04:@X0A ", STRING006
  101.         FDPutLn 
  102.         FDPutLn "@X0EPossible Answers:                                    @X0C0    25   50   75  100"
  103.         FDPutLn "                                                     @X04├┬┬┬┬┼┬┬┬┬┼┬┬┬┬┼┬┬┬┬┤@X0E"
  104.         For INTEGER003 = 1 To INTEGER005
  105.             If (INTEGER003 > 16) Break
  106.             TINTEGER001(INTEGER003) = ReadLine(STRING004, INTEGER003)
  107.             INTEGER004 = INTEGER004 + TINTEGER001(INTEGER003)
  108.             If (TINTEGER001(INTEGER003) == "") TINTEGER001(INTEGER003) = "0"
  109.             Inc INTEGER002
  110.         Next
  111.         For INTEGER003 = 1 To INTEGER002
  112.             If (INTEGER003 > 16) Goto LABEL005
  113.             If (INTEGER003 > INTEGER002) Goto LABEL005
  114.             TINTEGER001(INTEGER003) = (TINTEGER001(INTEGER003) * 100) / INTEGER004
  115.             :LABEL005
  116.             If (TINTEGER001(INTEGER003) == 0) Then
  117.                 TSTRING003(0) = "@X09■@X0A····················"
  118.                 Goto LABEL006
  119.             ElseIf (TINTEGER001(INTEGER003) <= 5) Then
  120.                 TSTRING003(0) = "@X09■@X0A■···················"
  121.                 Goto LABEL006
  122.             ElseIf (TINTEGER001(INTEGER003) <= 10) Then
  123.                 TSTRING003(0) = "@X09■@X0A■■··················"
  124.                 Goto LABEL006
  125.             ElseIf (TINTEGER001(INTEGER003) <= 15) Then
  126.                 TSTRING003(0) = "@X09■@X0A■■■·················"
  127.                 Goto LABEL006
  128.             ElseIf (TINTEGER001(INTEGER003) <= 20) Then
  129.                 TSTRING003(0) = "@X09■@X0A■■■■················"
  130.                 Goto LABEL006
  131.             ElseIf (TINTEGER001(INTEGER003) <= 25) Then
  132.                 TSTRING003(0) = "@X09■@X0A■■■■■···············"
  133.                 Goto LABEL006
  134.             ElseIf (TINTEGER001(INTEGER003) <= 30) Then
  135.                 TSTRING003(0) = "@X09■@X0A■■■■■■··············"
  136.                 Goto LABEL006
  137.             ElseIf (TINTEGER001(INTEGER003) <= 35) Then
  138.                 TSTRING003(0) = "@X09■@X0A■■■■■■■·············"
  139.                 Goto LABEL006
  140.             ElseIf (TINTEGER001(INTEGER003) <= 40) Then
  141.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■············"
  142.                 Goto LABEL006
  143.             ElseIf (TINTEGER001(INTEGER003) <= 45) Then
  144.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■···········"
  145.                 Goto LABEL006
  146.             ElseIf (TINTEGER001(INTEGER003) <= 50) Then
  147.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■■··········"
  148.                 Goto LABEL006
  149.             ElseIf (TINTEGER001(INTEGER003) <= 55) Then
  150.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■■■·········"
  151.                 Goto LABEL006
  152.             ElseIf (TINTEGER001(INTEGER003) <= 60) Then
  153.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■■■■········"
  154.                 Goto LABEL006
  155.             ElseIf (TINTEGER001(INTEGER003) <= 65) Then
  156.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■■■■■·······"
  157.                 Goto LABEL006
  158.             ElseIf (TINTEGER001(INTEGER003) <= 70) Then
  159.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■■■■■■······"
  160.                 Goto LABEL006
  161.             ElseIf (TINTEGER001(INTEGER003) <= 75) Then
  162.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■■■■■■■·····"
  163.                 Goto LABEL006
  164.             ElseIf (TINTEGER001(INTEGER003) <= 80) Then
  165.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■■■■■■■■····"
  166.                 Goto LABEL006
  167.             ElseIf (TINTEGER001(INTEGER003) <= 85) Then
  168.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■■■■■■■■■···"
  169.                 Goto LABEL006
  170.             ElseIf (TINTEGER001(INTEGER003) <= 90) Then
  171.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■■■■■■■■■■··"
  172.                 Goto LABEL006
  173.             ElseIf (TINTEGER001(INTEGER003) <= 95) Then
  174.                 TSTRING003(0) = "@X09■@X0A■■■■■■■■■■■■■■■■■■■·"
  175.                 Goto LABEL006
  176.             ElseIf (TINTEGER001(INTEGER003) <= 100) Then
  177.                 TSTRING003(0) = "@X09■■■■■■■■■■■■■■■■■■■■@X0E■"
  178.                 Goto LABEL006
  179.             Endif
  180.             If (TINTEGER001(INTEGER003) >= 101) Then
  181.                 Goto LABEL005
  182.             Endif
  183.             :LABEL006
  184.             INTEGER007 = INTEGER007 + 1
  185.             INTEGER008 = Len(TSTRING008(INTEGER007))
  186.             INTEGER009 = 52 - INTEGER008
  187.             FDPutLn "@X0B", TSTRING008(INTEGER007), Space(INTEGER009), " ", TSTRING003(0), " ", TINTEGER001(INTEGER003), "%"
  188.         Next
  189.         FDPutLn "                                        @X04             ├┴┴┴┴┼┴┴┴┴┼┴┴┴┴┼┴┴┴┴┤"
  190.         FDPutLn "@X0CCreated by:  @X0AVoter++ Bulletin Generator              @X0C0    25   50   75  100"
  191.         FDPutLn 
  192.         FDPutLn "@MORE@"
  193.         If (INTEGER011 >= TSTRING002(1)) Then
  194.             FClose 4
  195.             End
  196.         Endif
  197.     Next
  198.     FClose 4
  199.  
  200. ;------------------------------------------------------------------------------
  201. ;
  202. ; Usage report (before postprocessing)
  203. ;
  204. ; ■ Statements used :
  205. ;
  206. ;    1       End
  207. ;    83      Goto 
  208. ;    56      Let 
  209. ;    3       PrintLn 
  210. ;    35      If 
  211. ;    1       FCreate 
  212. ;    5       FOpen 
  213. ;    6       FClose 
  214. ;    3       FGet 
  215. ;    1       Delete 
  216. ;    4       Inc 
  217. ;    2       FDefOut 
  218. ;    1       FDPut 
  219. ;    9       FDPutLn 
  220. ;
  221. ;
  222. ; ■ Functions used :
  223. ;
  224. ;    1       *
  225. ;    1       /
  226. ;    20      +
  227. ;    2       -
  228. ;    2       ==
  229. ;    5       <
  230. ;    25      <=
  231. ;    3       >
  232. ;    12      >=
  233. ;    31      !
  234. ;    10      &&
  235. ;    5       ||
  236. ;    1       Len(
  237. ;    2       Left()
  238. ;    1       Space()
  239. ;    2       Ferr()
  240. ;    1       RTrim()
  241. ;    5       PPEPath()
  242. ;    2       ReadLine()
  243. ;    1       Exist()
  244. ;
  245. ;------------------------------------------------------------------------------
  246. ;
  247. ; Analysis flags : No flag
  248. ;
  249. ;------------------------------------------------------------------------------
  250. ;
  251. ; Postprocessing report
  252. ;
  253. ;    5       For/Next
  254. ;    0       While/EndWhile
  255. ;    23      If/Then or If/Then/Else
  256. ;    0       Select Case
  257. ;
  258. ;------------------------------------------------------------------------------
  259. ;                 AEGiS Corp - Break the routines, code against the machines!
  260. ;------------------------------------------------------------------------------
  261.