Algorithm 版 (精华区)

发信人: sino (茶水博士), 信区: Theory
标  题: 混沌图集(二)
发信站: 哈工大紫丁香 (Sun Aug 27 13:27:36 2000), 转信

发信人: FreeFighter.bbs@bbs.whnet.edu.cn (自由空间), 信区: algorithm
发信站: 武汉白云黄鹤站 (Tue Jan  6 05:20:39 1998)
转信站: ACEBBS!ustcnews!whbbs

一个类似宇宙空间的图形:
#include<stdio.h>
#include<math.h>
//#include<complex.h>
#include<graphics.h>
#include <stdlib.h>
#include <bios.h>
#include <dos.h>

#define NUMBER 100
#define N1 400
#define N2 400
char d[NUMBER+16];

int chaos1(void);

void main(void)
{
   int gdriver = DETECT, gmode;

   initgraph(&gdriver, &gmode, "e:\\bc\\bgi");

   chaos1();
   sound(1000);
   delay(100);
   nosound();
   bioskey(0);
   closegraph();
}

int chaos1()
{
   int i,j,n1,n2;
   float total,x,x1,fi,fj,r,r1;

   x=x1=0.15; r1=2.3;
//   x=x1=0.75; r1=2.5;
   for(i=0;i<NUMBER;){
      d[i++]=1;
 //      d[i++]=1;
   //   d[i++]=1;
     // d[i++]=1;
      d[i++]=0;
//      d[i++]=0;
  //    d[i++]=0;
    //  d[i++]=0;
   }
   for(n1=0;n1<N1;n1++){
      fi=(4-r1)*n1/N1+r1;
      for(n2=0;n2<N2;n2++){
         fj=(4-r1)*n2/N2+r1;
         total=0;
         for(i=0;i<NUMBER;i++){
            if(d[i]) r=fj;
            else r=fi;
            x=r*x*(1-x);
            total+=log(fabs(r-2*r*x));//log(2);
         }
//       j=-total*15/NUMBER;
         j=-total*10/NUMBER;
         if(j<0) j=0;
         if(j>15) j=15;
         putpixel(n1,n2,j);
         if(bioskey(1)) return -1;
      }
   }
   return 0;
}




--

                                   永恒的中微子
-------------------------------------------------o
※ 修改:.fib 於 Aug 27 13:25:19 修改本文.[FROM: bbs.hit.edu.cn]
--
※ 转寄:.南京大学小百合 bbs.nju.edu.cn.[FROM: bbs.hit.edu.cn]

--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: fib.bbs@bbs.nju.edu.]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:4.104毫秒