int stxrect, styrect, stxel1, styel1, stxel2, styel2, dxrect, dyrect, dxel1, dyel1, dxel2, dyel2;
int lxrect, lyrect, lxel1, lyel1, lxel2, lyel2, dlxrect, dlyrect, dlxel1, dlyel1, dlxel2, dlyel2;
int delay, n; // задержка между кадрами и их кол-во
// st[координата][название фигуры] - стартовая точка
// d[координата][название фигуры] - сдвиг влево/вверх от стартовой точки (если <0, то элемент будет двигаться вправо/вниз)
// l[координата][название фигуры] - стартовая длина
// dl[координата][название фигуры] - прирост длины (<0 - фигура будет уменьшаться)
CDC p_dc=theApp.m_pMainWnd->GetDC();
// НЕ ЗАБУДЬ ИНИЦИАЛИЗИРОВАТЬ ПЕРЕМЕННЫЕ ФИГУР!!!
for(int i=0,x1,x2,y1,y2;i<n;i++)
{
// прямоугольник
x1=stxrect-dxrect*i;
y1=styrect-dyrect*i;
x2=x1+lxrect+dlxrect*i;
y2=y1+lyrect+dlyrect*i;
p_dc->Rectangle(x1,y1,x2,y2);
// эллипс №1
x1=stxel1-dxel1*i;
y1=styel1-dyel1*i;
x2=x1+lxel1+dlxel1*i;
y2=y1+lyel1+dlyel1*i;
p_dc->Ellipse(x1,y1,x2,y2);
// эллипс №2
x1=stxel2-dxel2*i;
y1=styel2-dyel2*i;
x2=x1+lxel2+dlxel2*i;
y2=y1+lyel2+dlyel2*i;
p_dc->Ellipse(x1,y1,x2,y2);
}