⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 demorandom.c

📁 操作系统SunOS 4.1.3版本的源码
💻 C
字号:
#ifndef lint#ifdef sccsstatic	char sccsid[] = "@(#)demorandom.c 1.1 92/07/30 SMI"; /* from Lucasfilm Ltd., 1982 */#endif#endif#include <stdio.h>/* * canonical mainline routine for screen hacks */#define P	   98#define Q	   27#define Pm1	 (P-1)static int I=Pm1, J=(Pm1+Q)%P;static short Table[P]={0020651,0147643,0164707,0125262,0104256,0074760,0114470,0052607,0045551,0134031,0024107,0030766,0154073,0114777,0024540,0111012,0011042,0104067,0056332,0142244,0131107,0034074,0052641,0163046,0026303,0131352,0077724,0002462,0110775,0127346,0020100,0137011,0136163,0145552,0144223,0134111,0075001,0075221,0176705,0000210,0103625,0120246,0062614,0016147,0054723,0151200,0105223,0021001,0016224,0073377,0150716,0014557,0112613,0037466,0002677,0052542,0063572,0105462,0106436,0063302,0053171,0133243,0113130,0123222,0072371,0041043,0163614,0037432,0147330,0153403,0130306,0056455,0175640,0120567,0100601,0042371,0154635,0051133,0074252,0174525,0163223,0052022,0022564,0135512,0021760,0006743,0006451,0067445,0106210,0025417,0066566,0062723,0124224,0144643,0164502,0025342,0003521,0024050,};staticdemo_random(){	if(I==Pm1)I=0;	else I++;	if(J==Pm1)J=0;	else J++;	Table[I]+=Table[J];	return(Table[I]);}initrandom(r){	register i;	for(i=0;i!=P;i++)		Table[i]^=r;}r(i, j){	int k;	k=demo_random()%(j-i+1);	if(k<0)		return(k+j+1);	return(k+i);}sqroot(a)register a;{	register x, y;	if(a<=0)return(0);	for(y=a,x=1;y!=0;y>>=2,x<<=1);	while((y=(a/x+x)>>1)<x)x=y;	return(x);}/* * Sun Circles by Jeffrey Mogul *	stolen from: Hackmem Minksy? *	draw a circle of radius "radius" centered at cx, cy *	pv is either 1 or 0 for white or black *	r should be something like 4 *//*clearscreen(){	drasterop(GXclear, 0, 0, NULL, 1024, 1024);}setscreen(){	drasterop(GXset, 0, 0, NULL, 1024, 1024);}circ(radius, r, cx, cy, pv)register int r, cx, cy;{	register origin(cx, cy);	register int x,y;	register int i;	register int ilast;	register xmax=screen.w/2;	register ymax=screen.h/2;	lockscreen();	width(1);	setmode(pv);	x=radius;	y=0;	ilast=radius<<(r-3);	for(i=0;i<ilast;i++){		if(-xmax<=x && x<xmax && -ymax<=y && y<ymax)			point(x, y);		x+=y>>r;		y-=x>>r;	}	unlockscreen();}combox(op, x, y, xs, ys){	if(x<0){		xs+=x;		x=0;	}	if(y<0){		ys+=y;		y=0;	}	if(x<WIDTH && y<HEIGHT){		if(x+xs>=WIDTH)			xs=WIDTH-1-x;		if(y+ys>=HEIGHT)			ys=HEIGHT-y;		if(xs>0 && ys>0)			drasterop(op, x, y, NULL, xs, ys);	}}*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -