home *** CD-ROM | disk | FTP | other *** search
/ Chip 1999 March / Chip_1999-03_cd.bin / zkuste / SGP / Baltazar / PRIKLAD4.SGP < prev    next >
Text File  |  1999-01-12  |  6KB  |  131 lines

  1. SGPC   5.00 S#000000 13.06.1995 12:55:59                                        StructNo 0   0
  2.  
  3. # include <sgpbalt.h>
  4.  
  5. ;-h------------------------------------------------------------------------
  6. /***** globalni promenne *****/
  7. #define           pocetlinek        10
  8. #define           echolinek          3
  9.  
  10. ;-h---------------------------------------------------------------------------
  11. /***** hlavni program *****/
  12. void main( void )
  13. -s--DEMO1                                                                       ■   2  -2  -6 259
  14.           ___________________DEMO1___________________
  15.        Zacatek        Promenne    Prostredek      Konec
  16.          0!1           i3!            *             !Z
  17. :GrNastavMód(GrMódEGA)   *1          Krok
  18.                        Linka          │
  19.                         c!2           │
  20.                          *2           │
  21.                  _______Bod______     │
  22.               Posun~x Posun~y Dalsi   │
  23.                 g!      h!     4!   Linky
  24.                                      3!
  25.                                       *1
  26.          ___________________________Linka____________________
  27.        Vymaz   ___________Vypocet_____________    Kresba Klavesa
  28.         8!   Stare                          Nova   d!      2!
  29.              linky                         linka
  30.               5!                          Vypocet
  31.                *3                           c!
  32.            __Linka__                         *2
  33.          Presun  Dalsi        ______________Bod____________
  34.           c!      b!   ____Posun~x__      ___Posun~y___ Dalsi
  35.            *2          /2    /0    /      /2    /1    /  4!
  36.        ___Bod___     Zmenit Neni Okraj  Zmenit Neni Okraj
  37.        X  Y  Dalsi    g!   Okraj   !e    h!   Okraj   !f
  38.       9! a!   4!            6!  _Jaky?_        7!  _Jaky?_
  39.                                 /3    /            /4    /
  40.                                Levy Pravy         Levy Pravy
  41.                                j!    k!           l!    m!
  42. -o1----------------------SEZNAM OPERAC╓------------TENTO ⁿ╡DEK NEM╖NIT!-------
  43. 0 /* promenne <var> */ int a, b, c, d, e, f, g, h, i, j, Klávesa;
  44.           /* realne */ double rcislo1, rcislo2;
  45.           int x[pocetlinek+1][2+1][echolinek+1];
  46.           int y[pocetlinek+1][2+1][echolinek+1];
  47.           int posunx[pocetlinek+1][2+1];
  48.           int posuny[pocetlinek+1][2+1];
  49.           int linka,bod,linka2;
  50.   Vytvo²Prostor();
  51.   RychlostBaltazara(9);
  52. 1 ;Nastaveni grafiky
  53.   GrNastavV∞stup(GrV∞stupOkno);
  54.   GrNastavLinku(GrLinkaPlná|GrLinkaZpàsobKresleníNormáln╪);
  55.   GrNastavBarvuPop²edí(Bílá);
  56.   GrNastavBarvuPozadí(¼erná);
  57. 2 ++linka;
  58. 3 ;Priprava promennych
  59.   linka=1;
  60. 4 ++bod;
  61. 5 ;Priprava promennych
  62.   linka2=echolinek;
  63. 6 ;Posunuti x-ove souradnice
  64.   x[linka][bod][1]=x[linka][bod][2]+posunx[linka][bod];
  65. 7 ;Posunuti y-ove souradnice
  66.   y[linka][bod][1]=y[linka][bod][2]+posuny[linka][bod];
  67. 8 ;Vymaz posledni linky
  68.   GrNastavBarvuPop²edí(¼erná);
  69.   GrKresliLinku(x[linka][1][echolinek],y[linka][1][echolinek],x[linka][2][echolinek],y[linka][2][echolinek]);
  70. 9 ;Presunuti x-ove souradnice do nizsi promenne
  71.   x[linka][bod][linka2]=x[linka][bod][linka2-1];
  72. a ;Presunuti y-ove souradnice do nizsi promenne
  73.   y[linka][bod][linka2]=y[linka][bod][linka2-1];
  74. b --linka2
  75. c ;Priprava promennych
  76.   bod=1;
  77. d ;Vykresleni prvni linky
  78.   GrNastavBarvuPop²edí(16-linka);
  79.   GrKresliLinku(x[linka][1][1],y[linka][1][1],x[linka][2][1],y[linka][2][1]);
  80. e ;Zmena posunu x
  81.   posunx[linka][bod]=-posunx[linka][bod];
  82. f ;Zmena posunu y
  83.   posuny[linka][bod]=-posuny[linka][bod];
  84. g ;Generovani nahodneho posunu v ose x
  85.   posunx[linka][bod]=(Náhodné¼íslo(4)+3)*((Náhodné¼íslo(2)+1)*2-3);
  86. h ;Generovani nahodneho posunu v ose y
  87.   posuny[linka][bod]=(Náhodné¼íslo(4)+3)*((Náhodné¼íslo(2)+1)*2-3);
  88. Z ZruτProstor();
  89. i for (a=1;a<=pocetlinek;++a) for(b=1;b<=2;++b) for (c=1;c<=echolinek;++c)
  90.      {
  91.      x[a][b][c]=200+200*(b-1);
  92.      y[a][b][c]=200;
  93.      };
  94. j ;Nastaveni x-ove souradnice na pocatek
  95.   x[linka][bod][1]=0;
  96. k ;Nastaveni x-ove souradnice na maximum
  97.   x[linka][bod][1]=GrMaxX();
  98. l ;Nastaveni y-ove souradnice na pocatek
  99.   y[linka][bod][1]=0;
  100. m ;Nastaveni y-ove souradnice na maximum
  101.   y[linka][bod][1]=GrMaxY();
  102. -c1----------------------SEZNAM PODM╓NEK-----------TENTO ⁿ╡DEK NEM╖NIT!-------
  103. /0 ((x[linka][bod][1]+posunx[linka][bod])>=0)&&((x[linka][bod][1]+posunx[linka][bod])<=GrMaxX())
  104. /1 ((y[linka][bod][1]+posuny[linka][bod])>=0)&&((y[linka][bod][1]+posuny[linka][bod])<=GrMaxY())
  105. /2 Náhodné¼íslo(200)==100
  106. /3 ((x[linka][bod][1]+posunx[linka][bod])<0)
  107. /4 ((y[linka][bod][1]+posuny[linka][bod])<0)
  108. /n Neplatí Pràchodn∞P²edm╪t()
  109. /p Pràchodn∞P²edm╪t()
  110. /B Barva¼tverceP²edBaltazarem() /* Je, Není, <, >, <= ,>= */
  111. /P P²edm╪tP²edBaltazarem()      /* Je, Není, <, >, <= ,>= */
  112. /S Sm╪rBaltazara()             /* Je, Není, <, >, <= ,>= */
  113. *1 linka<=pocetlinek
  114. *2 bod<=2
  115. *3 linka2>=2
  116. *n /* delej kdyz Je   */ Neplatí Pràchodn∞P²edm╪t()
  117. *p /* delej kdyz Je   */ Pràchodn∞P²edm╪t()
  118. *B /* delej kdyz      */ Barva¼tverceP²edBaltazarem() /* Je, Není, <, >, <= ,>= */
  119. *P /* delej kdyz      */ P²edm╪tP²edBaltazarem()      /* Je, Není, <, >, <= ,>= */
  120. *S /* delej kdyz      */ Sm╪rBaltazara()             /* Je, Není, <, >, <= ,>= */
  121. #A /* delej od m do n s krokem k pro promennou var  - zapis #A:(var,m,n,k) */
  122.       OdDoKrok
  123. #D /* delej od m dolu do n s krokem k pro prom. var - zapis #D:(var,m,n,k) */
  124.       OdDolàDoKrok
  125. #N /* delej n-krat vzestupne pro promennou var      - zapis #N:(var,n)     */
  126.       Od0
  127. #M /* delej n-krat sestupne pro promennou var       - zapis #M:(var,n)     */
  128.       DolàDo0
  129. =SP---------------------------------------------------------------------------
  130. /***** konec programu *****/
  131.