El mejor método de programación de New Guze
20 void MP_Ellipse(int xc, int yc, int a, int b)
21 {
22 doble sqa = a * a
23 doble sqb = b * b
24
25 doble d = cuadrado b+ cuadrado *(b+ 0.25);
26 int x = 0;
27 int y = b;
28 EllipsePlot(xc, yc, x, y
29 while(sqb *(x+1)& lt; sqa * (y); - 0.5))
30 {
31 si(d & lt; 0)
32 {
33d+= sqb *( 2 * x+3)+sqa *(2 * y+2));
38y-;
39 }
40 x++;
41 ElipsePlot(xc, yc, x, y);
42 }
43d =(b *(x+0.5))* 2+(a *( y- 1))* 2-(a * b)* 2;
44 mientras(y & gt; 0)
45 {
46 si (d <0)
47 {
48d+= sqb *(2 * x+2)+sqa *(2 * y+3);
49 x++;
50 }
51 Otros
52 {
53d+= sqa *(2 * y+3);
54 }
55y-;
56 EllipsePlot(xc, yc, x, y)
57 }
58 }