140.递归法绘制三角形图案

简介: 140.递归法绘制三角形图案
#include <graphics.h>
#include <stdio.h>
void tria(xa,ya,xb,yb,xc,yc,n)
int xa,ya,xb,yb,xc,yc,n;
{
  int xp,yp,xq,yq,xr,yr;
  if(n>0)
  {
    xp=(xa+xb)/2;
    yp=(ya+yb)/2;
    xq=(xb+xc)/2;
    yq=(yb+yc)/2;
    xr=(xc+xa)/2;
    yr=(yc+ya)/2;
    moveto(xp,yp);
    lineto(xq,yq);
    lineto(xr,yr);
    lineto(xp,yp);
    tria(xa,ya,xp,yp,xr,yr,n-1);
    tria(xb,yb,xq,yq,xp,yp,n-1);
    tria(xc,yc,xr,yr,xq,yq,n-1);
  }
}
void main()
{
  int n,xa=10,ya=10,xb=10,yb=470,xc=630,yc=470;
  int gdriver=DETECT,gmode;
  printf("Input recursion depth( for exmaple, 7): ");
  scanf("%d",&n);
  initgraph(&gdriver,&gmode,"c:\\tc");
  cleardevice();
  setbkcolor(8);
  setcolor(2);
  moveto(xa,ya);
  lineto(xb,yb);
  lineto(xc,yc);
  lineto(xa,ya);
  tria(xa,ya,xb,yb,xc,yc,n);
  getch();
  closegraph();
}
相关文章
|
3月前
创建三角形图案
【10月更文挑战第24天】创建三角形图案。
25 3
wustojc4008能否构成三角形
wustojc4008能否构成三角形
40 0
HDOJ-2039 三角形
Problem Description 给定三条边,请你判断一下能不能组成一个三角形。
1024 0
HDOJ 2039 三角形
Problem Description 给定三条边,请你判断一下能不能组成一个三角形。 Input 输入数据第一行包含一个数M,接下有M行,每行一个实例,包含三个正数A,B,C。
977 0
HDOJ 2039 三角形
HDOJ 2039 三角形
102 0
路透斯沃德的不可能的三角形
路透斯沃德的不可能的三角形: 这是瑞典艺术家奥斯卡·路透斯沃德创作的一个有趣的不可能存在的三角形.
963 0

热门文章

最新文章