Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/08/2010, 19:28
adicityofmetal
 
Fecha de Ingreso: julio-2010
Mensajes: 43
Antigüedad: 13 años, 9 meses
Puntos: 3
Ayuda Manipular una esfera en 8 direcciones.

Hola chicos soy novato en esto de la programción en c, pero me gustaría pedirles que me explicaran el funcionamiento d este programa, para poder realizar el movimiento de la esfera en 8 direcciones diferentes.
Código C++:
Ver original
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <stdlib.h>
  4. #include <graphics.h>
  5. #include <dos.h>
  6.  
  7. void circulo(int cx, int cy, int relleno, int r);
  8. void main (void)
  9. {
  10.      int gdriver=DETECT,gmode,errorcode,i,j;
  11.      int xmax, ymax,x ,y;
  12.      initgraph(&gdriver,&gmode,"c:\\tc\\bgi");
  13.      errorcode=graphresult();
  14.      if (errorcode!=grOk)
  15.      {
  16.              printf("error de grafico: %s\n",grapherrormsg(errorcode));
  17.              getch();
  18.              exit(1);
  19.      }
  20.  
  21.      xmax=getmaxx();
  22.      ymax=getmaxy();
  23.  
  24.  
  25. for (i=15;i<=xmax;i=i+5)
  26.      {
  27.      circulo (i,ymax/2,5,10);
  28.      delay(60);
  29.      circulo (i,ymax/2,0,10);
  30.      }
  31.      for (j=15;j<=ymax;j=j+5)
  32.      {
  33.      circulo (xmax/2,j,5,10);
  34.      delay(60);
  35.      circulo (xmax/2,j,0,10);
  36.      }
  37.      getch();
  38.      for (j=xmax/2;j<=ymax/2;j=j+5)
  39.      {
  40.      circulo (xmax/2,ymax/2,5,10);
  41.      delay(60);
  42.      circulo (xmax/2,ymax/2,0,10);
  43.      }
  44.      getch();
  45.      closegraph();
  46. }
  47. void circulo(int cx, int cy, int relleno, int r)
  48. {
  49.      setcolor(relleno);
  50.      setfillstyle(SOLID_FILL, relleno);
  51.      circle(cx,cy,r);
  52.      floodfill(cx,cy,relleno);
  53. }