Ejemplo que genera burbujas y se van reproduciendo segun condiciones

¿Has encontrado un error? ¿Tienes la solución? Deja tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por estudiante con únicamente conocimiento básico del lenguaje, no de programación.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
program ejemplo2;
uses crt,graph;
{$R+}
type
       sentido = (arr,aba,izq,der);       burbuja = object
        private
      color,fil,col:integer;
      tam:word;
        public         procedure ponColor(deQueColor:integer);virtual;
         function  tenColor:integer;virtual;
         procedure moverxy(x,y:integer);virtual;
         procedure mover(haciaDonde:sentido);virtual;
      procedure moverConPendiente(factorX,factorY,PixRecorridos:integer;signo:boolean);virtual;      constructor creaBurbuja(coleur,filx,coly,size:integer);
      destructor  limpiaBurbuja(size,filx,coly:integer);
         end;
   ptrBurbuja = ^burbuja;
{**************************************}var
   B1,B2,B3,B4 : ptrBurbuja;
   fondo,gd,gm,i,j:integer;
   {******************************************************************}
   constructor burbuja.creaBurbuja(coleur,filx,coly,size:integer);     begin
      color:=coleur;
      setColor(color);
      fil:=filx;
      col:=coly;      tam:=size;
      circle(fil,col,tam);
   end;
   destructor burbuja.limpiaBurbuja;
     begin      setColor(fondo);
      circle(fil,col,tam);
   end;
   procedure burbuja.ponColor(deQueColor:integer);
       begin      color:=deQueColor
   end;
   function burbuja.tenColor:integer;
       begin
      tenColor:=color   end;
   procedure burbuja.moverxy(x,y:integer);
       begin
      SetColor(fondo);
      circle(fil,col,tam);      fil := x;
      col := y;
      SetColor(color);
      circle(fil,col,tam);
   end; 
      procedure burbuja.moverConPendiente(factorX,factorY,PixRecorridos:integer;signo:boolean);
   var i:integer;
   begin
      for i:=1 to pixRecorridos do       begin
           setColor(fondo);
           circle(fil,col,tam);
           setColor(color);
          if(signo) then         begin
                 fil := fil + factorX;
            col := col + factorY;
            circle(fil,col,tam);
         end           else
         begin
                fil := fil - factorX;
            col := col  - factorY;
            circle(fil,col,tam)           end;
                     delay(50);
       end;
   end;
      procedure burbuja.mover(haciaDonde:sentido);    var a:String[10];
    begin
      SetColor(fondo);
      str(fil,a);
       circle(fil,col,tam);
      if(haciaDonde=der) then
         fil := fil+1;
      if(haciaDonde=izq) then
         fil := fil-10;      if(haciaDonde=aba) then
         col := col+10;
      if(haciaDonde=arr) then
         col := col-10;
      SetColor(color);      str(fil,a);
      circle(fil,col,tam);
   end;
PROCEDURE MAPA;
    begin   SetColor(green);
end;
BEGIN
   gd:=Detect;
   InitGraph(gd,gm,'C:lenguaBGI');   if GraphResult <> GrOk then halt(1);
   fondo:=white;
   setBKcolor(fondo);
   mapa;
   new(B1,creaBurbuja(yellow,200,100,50));   {B1.creaBurbuja(yellow,200,100,50);}
   readkey;
   B1^.mover(aba);
   readkey;
   new(B2,creaBurbuja(red,200,200,50));   {B2.creaBurbuja(red,200,200,50);}
   readkey;
   for i := 1 to 200 do
     BEGIN
    DELAY(15);    B2^.mover(der)
     END;
   B2^.moverConPendiente(3,4,200,false);
   readkey;
   dispose(B1);   dispose(B2);
END.

Punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

  • Si es lenguaje C <code lang="c">Código en C</code>
  • Si es lenguaje Pascal <code lang="pascal">Aquí dentro el código de Pascal</code>.

De esta manera el código coloreas el código.

Deja un comentario

Suscribirse a los comentarios.