数学里学过线性规划,就是几个线性方程所围得区域会符合几个不等式。我的这种算法就是基于这种思路的。四个直线方程围成的图形就是一个菱形。符合这个菱形的线性规划的点输出“*”,如果不符合就输出空格。具体代码如下
#include<stdio.h>
main() { int r,x,y; scanf("%d",&r); for(y=r+5;y>=-(r+5);y--) {for(x=-(r+5);x<=r+5;x++) if(x-y+r>=0 && -x-y-r<=0 && -x-y+r>=0 && x-y-r<=0) printf(" *"); else printf(" "); printf("\n"); } getchar(); } |
|