大学时写的一些小程序-5(c写的圆碰撞程序)
2009-12-11 16:19
218 查看
#include<graphics.h>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define NUM 5
#define XSPED 2
#define YSPED 2
#define SHUAX 20
#define BAJ 20
main()
{
char *p="welcome to circle Moving system";
int gdriver,gmode,i,j;
int xloc[NUM],yloc[NUM],cot=0,js,xs[NUM],ys[NUM];
gdriver=DETECT;
initgraph(&gdriver,&gmode,"c:\\tc");
setbkcolor(GREEN);
setcolor(RED);
cleardevice();
settextstyle(0,0,2);
sleep(2);
outtextxy(100,140,p);
sleep(2);
outtextxy(120,180,"you can change circle number");
sleep(2);
outtextxy(240,240,"Made by lu");
sleep(2);
outtextxy(210,290,"press any key!");
getch();
cleardevice();
for(i=0;i<NUM;i++)
{xs[i]=XSPED;ys[i]=YSPED;
xloc[i]=random(560)+30;
yloc[i]=random(350)+30;
}
setfillstyle(SOLID_FILL,WHITE);
setcolor(YELLOW);
while(1)
{
cleardevice();
setcolor(YELLOW);
line(30,30,600,30);
line(600,30,600,400);
line(600,400,30,400);
line(30,400,30,30);
setcolor(RED);
for(i=0;i<NUM;i++)
{
circle(xloc[i],yloc[i],BAJ);
delay(1200);
if(sqrt(pow((xloc[0]-xloc[1]),2)+pow((yloc[0]-yloc[1]),2))<=2*BAJ||
sqrt(pow((xloc[0]-xloc[2]),2)+pow((yloc[0]-yloc[2]),2))<=2*BAJ||
sqrt(pow((xloc[0]-xloc[3]),2)+pow((yloc[0]-yloc[3]),2))<=2*BAJ||
sqrt(pow((xloc[0]-xloc[4]),2)+pow((yloc[0]-yloc[4]),2))<=2*BAJ||
sqrt(pow((xloc[1]-xloc[2]),2)+pow((yloc[1]-yloc[2]),2))<=2*BAJ||
sqrt(pow((xloc[1]-xloc[3]),2)+pow((yloc[1]-yloc[3]),2))<=2*BAJ||
sqrt(pow((xloc[1]-xloc[4]),2)+pow((yloc[1]-yloc[4]),2))<=2*BAJ||
sqrt(pow((xloc[2]-xloc[3]),2)+pow((yloc[2]-yloc[3]),2))<=2*BAJ||
sqrt(pow((xloc[2]-xloc[4]),2)+pow((yloc[2]-yloc[4]),2))<=2*BAJ||
sqrt(pow((xloc[3]-xloc[4]),2)+pow((yloc[3]-yloc[4]),2))<=2*BAJ)
{ys[i]=-ys[i];xs[i]=-xs[i];cot++;}
if(xloc[i]<=50||xloc[i]>=580)
{xs[i]=-xs[i];cot++; }
if(yloc[i]<=50||yloc[i]>=380)
{ ys[i]=-ys[i];cot++;}
xloc[i]+=xs[i];
yloc[i]+=ys[i];
}
}
getch();
}
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define NUM 5
#define XSPED 2
#define YSPED 2
#define SHUAX 20
#define BAJ 20
main()
{
char *p="welcome to circle Moving system";
int gdriver,gmode,i,j;
int xloc[NUM],yloc[NUM],cot=0,js,xs[NUM],ys[NUM];
gdriver=DETECT;
initgraph(&gdriver,&gmode,"c:\\tc");
setbkcolor(GREEN);
setcolor(RED);
cleardevice();
settextstyle(0,0,2);
sleep(2);
outtextxy(100,140,p);
sleep(2);
outtextxy(120,180,"you can change circle number");
sleep(2);
outtextxy(240,240,"Made by lu");
sleep(2);
outtextxy(210,290,"press any key!");
getch();
cleardevice();
for(i=0;i<NUM;i++)
{xs[i]=XSPED;ys[i]=YSPED;
xloc[i]=random(560)+30;
yloc[i]=random(350)+30;
}
setfillstyle(SOLID_FILL,WHITE);
setcolor(YELLOW);
while(1)
{
cleardevice();
setcolor(YELLOW);
line(30,30,600,30);
line(600,30,600,400);
line(600,400,30,400);
line(30,400,30,30);
setcolor(RED);
for(i=0;i<NUM;i++)
{
circle(xloc[i],yloc[i],BAJ);
delay(1200);
if(sqrt(pow((xloc[0]-xloc[1]),2)+pow((yloc[0]-yloc[1]),2))<=2*BAJ||
sqrt(pow((xloc[0]-xloc[2]),2)+pow((yloc[0]-yloc[2]),2))<=2*BAJ||
sqrt(pow((xloc[0]-xloc[3]),2)+pow((yloc[0]-yloc[3]),2))<=2*BAJ||
sqrt(pow((xloc[0]-xloc[4]),2)+pow((yloc[0]-yloc[4]),2))<=2*BAJ||
sqrt(pow((xloc[1]-xloc[2]),2)+pow((yloc[1]-yloc[2]),2))<=2*BAJ||
sqrt(pow((xloc[1]-xloc[3]),2)+pow((yloc[1]-yloc[3]),2))<=2*BAJ||
sqrt(pow((xloc[1]-xloc[4]),2)+pow((yloc[1]-yloc[4]),2))<=2*BAJ||
sqrt(pow((xloc[2]-xloc[3]),2)+pow((yloc[2]-yloc[3]),2))<=2*BAJ||
sqrt(pow((xloc[2]-xloc[4]),2)+pow((yloc[2]-yloc[4]),2))<=2*BAJ||
sqrt(pow((xloc[3]-xloc[4]),2)+pow((yloc[3]-yloc[4]),2))<=2*BAJ)
{ys[i]=-ys[i];xs[i]=-xs[i];cot++;}
if(xloc[i]<=50||xloc[i]>=580)
{xs[i]=-xs[i];cot++; }
if(yloc[i]<=50||yloc[i]>=380)
{ ys[i]=-ys[i];cot++;}
xloc[i]+=xs[i];
yloc[i]+=ys[i];
}
}
getch();
}
相关文章推荐
- 大学时写的一些小程序-2(js的小型文件控制程序)
- 大学时写的一些小程序-3(js的小型文件分析程序)
- 大学时写的一些小程序-4(c鼠标)
- 大学时写的一些小程序-6(vc图片处理)
- 大学时写的一些小程序-7(颜色生成)
- 大学时写的一些小程序-8(c桌面时钟)
- 大学时写的一些小程序-1 (js写的小钟表 很难看)
- 一些引人思考java小程序
- 关于定时执行程序的一些想法
- qt 的一些程序
- 关于ListCtrl,RichEdit和程序框架的一些东东
- Reflector .net程序反编译工具的一些插件_sihanjishu的个人空间_51Testing软件测试网 - powered by X-Space
- 提升 ASP.NET 程序性能的一些原则(2)
- python 字符编码 调用其他程序 的一些问题记录
- 程序迁移到swift 3.0的一些实用技巧
- 学习Java基础的一些知识(2)实现一个Java程序的过程
- 一道程序题的反思——一些为了减少内存的开销
- 混迹CSDN也有一些时日了,决定从今天开始记录我的程序生涯中的点点滴滴
- 推荐一些我使用的谷歌浏览器扩展程序和脚本文件