注册 登录
编程论坛 C图形专区

[原创]数学图形 闲着无聊做的 请勿见笑!

cdmalcl 发布于 2006-07-11 12:04, 1144 次点击

没事闲着做的东西,请高手不要见笑:
#include <time.h>
#include <math.h>
#include <graphics.h>

main()
{
float i,x,y;
int gd=DETECT,gm;
initgraph(&gd,&gm,"");

for(i=0;i<660;i+=.01)
{
x=cos(i/5)*50+log(i+2)*sin(pow(i,0.5))*20+300;
y=sin(i/5)*50+log(i+2)*cos(pow(i,0.5))*20+230;
putpixel(x,y,12);
delay(100);
if(kbhit())exit(0);
}
getch();
}
-------------------------------
#include <time.h>
#include <math.h>
#include <graphics.h>

main()
{
float i,x,y;
int gd=DETECT,gm;
initgraph(&gd,&gm,"");

for(i=0;i<660;i+=.01)
{
x=cos(i/5)*50+log(i+2)*sin(pow(i,0.5))*20+300;
y=sin(i/5)*50+log(i+2)*cos(pow(i,0.5))*20+230;
putpixel(x,y,12);
delay(100);
if(kbhit())exit(0);
}
getch();
}
--------------------------------
#include <time.h>
#include <math.h>
#include <graphics.h>

main()
{
float i,x,y;
int gd=DETECT,gm;
initgraph(&gd,&gm,"");

for(i=0;i<660;i+=.01)
{
x=(pow(i,0.75)*cos(i/5)+pow(i,0.75)*sin(i/5))*sin(i/100)+300;
y=(pow(i,0.75)*cos(i/5)+pow(i,0.75)*sin(i/5))*cos(i/100)+230;
putpixel(x,y,12);
delay(10);
if(kbhit())exit(0);
}
getch();
}


无意间画出来的
感觉挺有意思的
不知道谁还有其他有意思的函数曲线
让大家分享一下!

6 回复
#2
jig2006-07-11 12:27
不错,不错~~!UP
#3
一笔苍穹2006-07-11 15:15
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录

支持一下,截了两张图放上来~
#4
cdmalcl2006-07-11 16:07

斑竹真有一套
呵呵
#5
cdmalcl2006-07-12 08:51

转载:
#include<math.h>
#include<graphics.h>
#define PI 3.14159
#define D 100
main()
{
float a,e,x1,y1,x2,y2;
int gdriver=DETECT,gmode=0;

initgraph(&gdriver,&gmode,"");
setcolor(GREEN);
setbkcolor(0);

for(a=0.0;a<2*PI;a+=2*PI/720)
{
e=D*(1+sin(4*a));
x1=320+e*cos(a);
x2=320+e*cos(a+PI/5);
y1=240+e*sin(a);
y2=240+e*sin(a+PI/5);
line(x1,y1,x2,y2);
}
getch();
closegraph();
}

#6
cdmalcl2006-07-12 09:36

转载:
有趣的分形学Mandlbrot集图形的一个C语言实现

#include<graphics.h>
#include<stdlib.h>
#include<math.h>

int main()
{
float m,dx,dy,x,y,x_n,y_n,Cx,Cy;
int n,i,j,L=4;
int gdriver=DETECT,gmode;
initgraph(&gdriver,&gmode,"");

setbkcolor(1);
dx=3.0/639;
dy=2.2/479;
for(i=0;i<639;i++)
{
Cx=-1.9+i*dx;
for(j=0;j<479;j++)
{
Cy=-1.2+j*dy;
x=y=0;
for(n=0;n<=1000;n++)
{
x_n=x*x-y*y+Cx;
y_n=2*x*y+Cy;
m=x_n*x_n;
if(m>L) break;
x=x_n;
y=y_n;
}
putpixel(i,j,(int)(0.4*m)%16);
}
}
getch();
closegraph();
}

#7
含泪的笑2016-03-10 11:08
1