亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? keshe.cpp

?? C++編程實(shí)例100篇電子書
?? CPP
字號(hào):
#include  <math.h>
#include "Windw.h"

#define MAX    100
#define SIZE    50

class PCB
{
	private :
			int ID;
			int Size;
			int Ts;
			int Flag;
	public :
			PCB()
			{
				ID=0;
				Size=0;
				Ts=0;
				Flag=0;
			}
			void SetID(int I){ID=I;}
			void SetMFlag(){Flag=1;}
			void SetDFlag(){Flag=0;}
			void SetSizeTs(void)
			{
				int number;
				randomize();
				number=rand()%4;
				Size=ldexp(2,number-1);
				Ts=(number+1)*5;
			}
			int GetFlag(void) {return Flag;}
			int GetID(void){return ID;}
			int GetSize(void){return Size;}
			int GetTs(void){return Ts;}
};

class Rectangle
{
	friend class Grid;
	private :
			int left,top,right,bottom;
			char content[SIZE];
	public :
			void Outtextxy(char text[SIZE])
			{
				strcpy(content,text);
				outtextxy(left+9,top+7,content);
			}
			void Fill(int Number)
			{
				setfillstyle(SOLID_FILL,Number);
				bar3d(left+1,top+1,right-1,bottom-1,0,0);
			}
			void Test(int Temp,int Interval)
			{
				if (Temp==0) outtextxy(left+45+Interval,top+7,"0");
				if (Temp==1) outtextxy(left+45+Interval,top+7,"1");
				if (Temp==2) outtextxy(left+45+Interval,top+7,"2");
				if (Temp==3) outtextxy(left+45+Interval,top+7,"3");
				if (Temp==4) outtextxy(left+45+Interval,top+7,"4");
				if (Temp==5) outtextxy(left+45+Interval,top+7,"5");
				if (Temp==6) outtextxy(left+45+Interval,top+7,"6");
				if (Temp==7) outtextxy(left+45+Interval,top+7,"7");
				if (Temp==8) outtextxy(left+45+Interval,top+7,"8");
				if (Temp==9) outtextxy(left+45+Interval,top+7,"9");
			}
			void Display(int number)
			{
				int Temp=number;
				if ((Temp>=0) && (Temp<=9)) Test(Temp,0);
				if ((Temp>=10) && (Temp<=99))
				{
					Temp=int (Temp/10);
					Test(Temp,0);
					Temp=number-Temp*10;
					Test(Temp,5);
				}
			}
};

class Grid
{
	private :
			Rectangle *Array[MAX];
	public :
			Grid(){};
			void NewRectangle(int number,int a,int b,int c,int d)
			{
				Rectangle *Newrect;
				Newrect=new Rectangle;
				Newrect->left=a;
				Newrect->top=b;
				Newrect->right=c;
				Newrect->bottom=d;
				rectangle(a,b,c,d);
				Array[number]=Newrect;
			}
			Rectangle *GetRectangle(int number) {return Array[number];}
};

void Exit(void);
void Version(void);
void Running(void);
void InitGrid(void);
void InitGraph(void);
void InitRecord(void);
void Allocation(void);
void Compact(int number);
int  Returncolor(int number);

Grid Record,Graph;
PCB MEMORY[MAX];
PCB HARDDISK[MAX];

int Screen[MAX];
int CurrentMIDM=0,CurrentMIDD=0,CurrentMMp=0,CurrentMDp=0;
int LeftSpace=SIZE,LeftD=SIZE,CurrentEIDM,CurrentEIDD;

int main()
{
	int i;

	InitGraph();
	InitRecord();
	InitGrid();
	EventMsg eventMsg;
	mouse.SetLimits(0,getmaxx(),0,getmaxy());
	mouse.ShowMouse();
	Button wndw1(220,360,"^OK");
	Button wndw2(300,360,"^CANCEL");
	wndw1.DrawWindow();
	wndw2.DrawWindow();
	int button=0;
	while (!button)
	{
		GetEvent(eventMsg);
		if (wndw1.Clicked(eventMsg)) Allocation();
		if (wndw2.Clicked(eventMsg)) button=CANCEL;
		else if (!wndw1.Clicked(eventMsg)&&!wndw2.Clicked(eventMsg))
			Running();
	}
	Exit();

	return 0;
}

void Exit(void)
{
	mouse.HideMouse();
	Version();
	getch();
	closegraph();
	exit(1);
}

void InitGraph(void)
{
	int Gdriver=DETECT,Gmode,Errorcode;
	initgraph(&Gdriver,&Gmode,"D:\\Tools\\Tc3.0\\Bgi");
	Errorcode=graphresult();
	if (Errorcode!=grOk)
	{
		printf("Graphics Error: %s\n",grapherrormsg(Errorcode));
		printf("Press any key to exit & Change the dictory :");
		getch();
		exit(1);
	}
}

void InitRecord(void)
{
	int number=0,circle,i;
	for (i=0;i<5;i++)
	{
		for (circle=0;circle<6;circle++)
		{
			Record.NewRectangle(number,15+circle*100,20+i*20,
						circle*100+115,20+((i+1)*20));
			number=number+1;
		}
	}
	setcolor(14);
	Record.GetRectangle(0)->Outtextxy("   SIZE   ");
	Record.GetRectangle(1)->Outtextxy(" INTERVAL ");
	Record.GetRectangle(2)->Outtextxy("  TOTAL   ");
	Record.GetRectangle(3)->Outtextxy("  READY   ");
	Record.GetRectangle(4)->Outtextxy("  RUNNING ");
	Record.GetRectangle(5)->Outtextxy("  COLOR   ");
	setcolor(12);
	Record.GetRectangle(6)->Outtextxy("    1M    ");
	Record.GetRectangle(12)->Outtextxy("    2M    ");
	Record.GetRectangle(18)->Outtextxy("    4M    ");
	Record.GetRectangle(24)->Outtextxy("    8M    ");
	for (i=7,circle=0;i<=25,circle<4;i=i+6,circle++)
		Record.GetRectangle(i)->Display(i-circle-2);
	setcolor(15);
	for (i=8,circle=0;i<=26,circle<4;i=i+6,circle++)
		Record.GetRectangle(i)->Outtextxy("  Random  ");
	for (i=9,circle=0;i<=27,circle<4;i=i+6,circle++)
		Record.GetRectangle(i)->Outtextxy("  Random  ");
	for (i=10,circle=0;i<=28,circle<4;i=i+6,circle++)
		Record.GetRectangle(i)->Outtextxy("  Random  ");
	setcolor(12);
	Record.GetRectangle(11)->Outtextxy("   RED    ");
	setcolor(9);
	Record.GetRectangle(17)->Outtextxy("   BLUE   ");
	setcolor(10);
	Record.GetRectangle(23)->Outtextxy("  GREEN   ");
	setcolor(14);
	Record.GetRectangle(29)->Outtextxy("  YELLOW  ");
}

void InitGrid(void)
{
	int number=0,circle=0;
	setcolor(11);
	outtextxy(130,150,"***** The FIFO Method of Memory Distribute *****");
	line(15,180,625,180);
	line(15,340,625,340);
	setcolor(13);
	for (circle=0;circle<50;circle++)
	{
		Graph.NewRectangle(number,110+circle*10,230,circle*10+120,240);
		number=number+1;
	}
	for (circle=0;circle<50;circle++)
	{
		Graph.NewRectangle(number,110+circle*10,300,circle*10+120,310);
		number=number+1;
	}
	setcolor(14);
	outtextxy(20,210,"Main Memory");
	outtextxy(20,280,"Hard Disk");
}

int Returncolor(int number)
{
	if (number==1) return 12;
	if (number==2) return 9;
	if (number==4) return 10;
	if (number==8) return 14;
	else return 0;
}

void Allocation(void)
{
	PCB NewNode;
	int color,circle;
	NewNode.SetSizeTs();
	if(HARDDISK[CurrentEIDD].GetSize()==0
		&&CurrentMMp+NewNode.GetSize()<=SIZE)
	{
		NewNode.SetID(CurrentMIDM);
		NewNode.SetMFlag();
		color=Returncolor(NewNode.GetSize());
		for (circle=CurrentMMp;circle<CurrentMMp+NewNode.GetSize();circle++)
		{
			Graph.GetRectangle(circle)->Fill(color);
			Screen[circle]=color;
		}
		MEMORY[CurrentMIDM]=NewNode;
		CurrentMIDM=CurrentMIDM+1;
		CurrentMMp=CurrentMMp+NewNode.GetSize();
		LeftSpace=LeftSpace-NewNode.GetSize();
	}
	else
	{
		NewNode.SetID(CurrentMIDD);
		NewNode.SetDFlag();
		color=Returncolor(NewNode.GetSize());
		for (circle=CurrentMDp;circle<CurrentMDp+NewNode.GetSize();circle++)
		{
			Graph.GetRectangle(circle+SIZE)->Fill(color);
			Screen[circle+SIZE]=color;
		}
		HARDDISK[CurrentMIDD]=NewNode;
		CurrentMIDD=CurrentMIDD+1;
		CurrentMDp=CurrentMDp+NewNode.GetSize();
		LeftD=LeftD-NewNode.GetSize();
	}
}

void Running(void)
{
	int circle=0;
	PCB TempNode;
	TempNode=MEMORY[CurrentEIDM];
	if(LeftSpace<50)
	{
		for (circle=0;circle<TempNode.GetSize();circle++)
		{
			delay(MAX);
			Graph.GetRectangle(circle)->Fill(0);
			Screen[circle]=0;
		}
		if (HARDDISK[CurrentEIDD].GetSize()==0)
		{
			CurrentMMp=CurrentMMp-TempNode.GetSize();
			LeftSpace=LeftSpace+TempNode.GetSize();
			Compact(1);
		}
		else Compact(2);
		CurrentEIDM=CurrentEIDM+1;
	}
}

void Compact(int number)
{
	int i=0,circle=0,TempID,j;
	if (number==1)
	{
		while ((Screen[i]==0) && (i<SIZE)) i=i+1;
		if (i>0)
		{
			for (circle=0;circle<MAX-i;circle++)
				Screen[circle]=Screen[circle+i];
			for (circle=MAX-i;circle<MAX;circle++) Screen[circle]=0;
			for (circle=0;circle<MAX;circle++)
				Graph.GetRectangle(circle)->Fill(Screen[circle]);
		}
	}
	if (number==2)
	{
		while ((Screen[i]==0) && (i<SIZE)) i=i+1;
		if (i>0)
		{
			for (circle=0;circle<SIZE-i;circle++)
				Screen[circle]=Screen[circle+i];
			for (circle=SIZE-i;circle<SIZE;circle++) Screen[circle]=0;
			CurrentMMp=CurrentMMp-i;
			LeftSpace+=i;
			TempID=CurrentEIDD;
			while(HARDDISK[TempID].GetSize()<=LeftSpace&&CurrentMDp!=0)
			{
				for (circle=SIZE;circle<SIZE+HARDDISK[TempID].GetSize();
					circle++)	Screen[circle]=0;
				CurrentMDp=CurrentMDp-HARDDISK[TempID].GetSize();
				for (circle=SIZE-LeftSpace;circle<
				SIZE-LeftSpace+HARDDISK[TempID].GetSize();circle++)
					Screen[circle]=Returncolor(HARDDISK[TempID].GetSize());
				CurrentMMp=CurrentMMp+HARDDISK[TempID].GetSize();
				MEMORY[CurrentMIDM]=HARDDISK[TempID];
				CurrentMIDM++;
				LeftSpace=LeftSpace-HARDDISK[TempID].GetSize();
				for (circle=SIZE;circle<SIZE+CurrentMDp;circle++)
					Screen[circle]=
						Screen[circle+HARDDISK[CurrentEIDD].GetSize()];
				for (circle=SIZE+CurrentMDp;circle<MAX;circle++)
					Screen[circle]=0;
				for (circle=0;circle<MAX;circle++)
					Graph.GetRectangle(circle)->Fill(Screen[circle]);
				LeftD=LeftD+HARDDISK[TempID].GetSize();
				CurrentEIDD++;
				TempID++;
			}
		}
	}
}

void Version()
{
	setcolor(14);
	outtextxy(150,420," DESIGNED  By  NEWTRUMP  2001.01.01     ");
	outtextxy(150,440,"             Version 2.0                ");
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
97久久人人超碰| 91精品国产综合久久婷婷香蕉 | 国产·精品毛片| 亚洲二区在线观看| 国产片一区二区三区| 在线观看区一区二| 国产成人啪午夜精品网站男同| 亚洲va国产va欧美va观看| 中文无字幕一区二区三区| 日韩三级视频在线看| 欧美日韩小视频| 色综合久久综合中文综合网| 国产精品一区在线| 另类中文字幕网| 日韩精品欧美精品| 一区二区国产视频| 亚洲精品国产无天堂网2021| 国产精品蜜臀在线观看| 久久青草国产手机看片福利盒子 | 国产精品久久久久三级| 精品久久一区二区三区| 欧美高清视频在线高清观看mv色露露十八| 粉嫩aⅴ一区二区三区四区| 久久国产成人午夜av影院| 香蕉久久夜色精品国产使用方法 | 色综合视频在线观看| 国产成a人无v码亚洲福利| 韩日精品视频一区| 视频一区国产视频| 亚洲大片精品永久免费| 亚洲成人综合视频| 亚洲国产精品自拍| 婷婷开心激情综合| 日韩精品福利网| 日韩精品一二三| 欧美aaaaaa午夜精品| 丝袜美腿亚洲综合| 日本美女一区二区| 裸体一区二区三区| 韩国精品主播一区二区在线观看 | 2020日本不卡一区二区视频| 日韩欧美一区在线| 日韩精品一区二区三区视频在线观看 | 国产剧情一区在线| 国产一区二区毛片| 国产一区二区电影| 处破女av一区二区| 白白色亚洲国产精品| 不卡视频一二三| 色天使色偷偷av一区二区| 在线观看日韩毛片| 欧美精品一级二级三级| 日韩一级大片在线观看| 亚洲精品一区二区三区在线观看| 久久影视一区二区| 国产精品久久精品日日| 一区二区视频在线看| 午夜视频在线观看一区二区| 日av在线不卡| 国产精华液一区二区三区| eeuss鲁片一区二区三区在线观看| 色婷婷国产精品| 欧美一区二区网站| 久久蜜桃香蕉精品一区二区三区| 国产精品国产三级国产aⅴ原创| 亚洲精品大片www| 免费精品视频在线| 成人一级片在线观看| 91极品美女在线| 欧美一级欧美三级在线观看 | 亚洲欧洲日韩一区二区三区| 亚洲一级片在线观看| 久久国产精品一区二区| 99精品黄色片免费大全| 欧美剧在线免费观看网站 | 久久综合给合久久狠狠狠97色69| 国产欧美日韩中文久久| 亚洲午夜激情网站| 国产69精品久久99不卡| 欧美日本一区二区三区| 国产日韩影视精品| 午夜视频久久久久久| 国产成人在线观看免费网站| 欧美日韩在线直播| 国产区在线观看成人精品| 亚洲高清免费在线| 国产不卡视频在线观看| 欧美日韩免费高清一区色橹橹 | 亚洲永久精品国产| 国产美女一区二区三区| 欧美视频在线观看一区二区| 久久久综合网站| 日韩精品免费专区| 99精品国产99久久久久久白柏 | 一区二区三区成人| 国产激情精品久久久第一区二区 | 日韩精品一二三| 91原创在线视频| 久久久99精品久久| 免费高清视频精品| 欧美日韩视频在线观看一区二区三区| 国产欧美视频一区二区三区| 蜜臀av一级做a爰片久久| 欧美亚洲日本国产| 中文字幕亚洲成人| 国产成人8x视频一区二区| 日韩欧美亚洲国产另类| 午夜一区二区三区在线观看| 99久免费精品视频在线观看| 精品成人在线观看| 秋霞电影网一区二区| 欧美系列亚洲系列| 亚洲视频免费在线观看| 成人性生交大合| 久久亚洲精品小早川怜子| 日韩精品国产精品| 欧美日韩黄色影视| 亚洲一区在线观看视频| 99久久精品国产毛片| 欧美激情综合五月色丁香| 国产伦精品一区二区三区免费| 欧美一区二区三区免费| 丝袜美腿亚洲一区二区图片| 欧美日韩免费视频| 亚洲不卡在线观看| 欧美日韩精品欧美日韩精品| 又紧又大又爽精品一区二区| 一本色道久久综合亚洲精品按摩| 国产精品嫩草影院com| 成人性色生活片免费看爆迷你毛片| 久久久91精品国产一区二区三区| 狠狠色丁香久久婷婷综| 久久久不卡影院| 岛国av在线一区| 国产精品传媒视频| 色综合久久中文字幕综合网| 亚洲欧美日韩国产综合在线 | 一本色道久久综合亚洲aⅴ蜜桃| 亚洲视频中文字幕| 91成人在线观看喷潮| 亚洲一区二区三区四区的| 欧美午夜在线观看| 亚洲gay无套男同| 欧美福利视频一区| 经典三级视频一区| 国产精品乱人伦一区二区| 不卡一区中文字幕| 亚洲精品ww久久久久久p站| 欧美三级韩国三级日本三斤| 亚洲chinese男男1069| 日韩美女一区二区三区| 国产一区二区三区免费| 国产精品美女久久久久aⅴ国产馆| av中文字幕亚洲| 亚洲高清免费视频| 精品日韩av一区二区| 国产不卡一区视频| 亚洲综合小说图片| 欧美一级高清片在线观看| 美日韩一区二区三区| 欧美国产日韩a欧美在线观看| 色老汉一区二区三区| 丝袜诱惑制服诱惑色一区在线观看| 精品欧美一区二区在线观看| 成人自拍视频在线观看| 亚洲自拍与偷拍| 精品卡一卡二卡三卡四在线| 白白色亚洲国产精品| 舔着乳尖日韩一区| 久久久99精品免费观看| 欧美亚洲国产bt| 国产一区二区三区在线看麻豆| 中文字幕永久在线不卡| 欧美日韩视频第一区| 国产麻豆视频精品| 亚洲一级电影视频| 久久久久国产精品麻豆| 欧美亚洲另类激情小说| 国产精品一区在线观看你懂的| 亚洲卡通动漫在线| 亚洲精品美国一| 精品欧美久久久| 欧美视频一区二区三区| 国产成人av一区二区三区在线| 亚洲成av人影院| 国产精品无人区| 欧美一区国产二区| 91麻豆福利精品推荐| 久久精品国产精品青草| 亚洲一区二区三区国产| 国产日韩视频一区二区三区| 欧美喷潮久久久xxxxx| 99精品视频一区二区三区| 激情综合五月婷婷| 亚洲v日本v欧美v久久精品| 国产精品国产三级国产专播品爱网 | 亚洲欧美日韩国产手机在线| 欧美mv日韩mv国产网站app| 欧美日韩一区二区三区在线| 国产a区久久久|