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

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

?? process.cpp

?? VC++編程100例。包含了很多的實(shí)例
?? 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                ");
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品国产网站| av中文一区二区三区| 国产精品无遮挡| 欧美精品色综合| 国产91在线|亚洲| 日韩av在线播放中文字幕| 中文字幕一区二区5566日韩| 欧美mv和日韩mv国产网站| 91国偷自产一区二区三区成为亚洲经典 | 国产欧美日产一区| 91精品国产91久久久久久最新毛片| 成人美女视频在线观看| 青青草原综合久久大伊人精品| 亚洲天堂av老司机| 久久亚洲欧美国产精品乐播 | 91伊人久久大香线蕉| 国产一区二区三区免费播放| 香蕉影视欧美成人| 综合久久综合久久| 欧美韩日一区二区三区四区| 日韩欧美你懂的| 欧美日本在线观看| 91豆麻精品91久久久久久| 成人av片在线观看| 国产精品综合二区| 精品在线观看免费| 欧美三级电影网| 91丝袜美腿高跟国产极品老师 | 成人综合激情网| 精品写真视频在线观看| 日本视频一区二区| 日本视频免费一区| 蜜臀av一区二区在线观看| 午夜精品国产更新| 日韩精品视频网站| 视频一区中文字幕国产| 香蕉加勒比综合久久| 午夜久久福利影院| 丝袜a∨在线一区二区三区不卡| 一区二区三区中文字幕| 樱花影视一区二区| 亚洲国产一区二区在线播放| 一区二区三区在线视频观看58| 亚洲免费观看高清完整版在线观看| 国产精品成人在线观看| 国产精品久久99| 一区二区三区.www| 亚洲第一会所有码转帖| 日韩福利电影在线| 美国十次了思思久久精品导航| 欧美狂野另类xxxxoooo| 911精品产国品一二三产区| 欧美一区二区成人6969| 精品国产电影一区二区| 国产亚洲精品中文字幕| 国产精品黄色在线观看| 一区二区三区高清在线| 亚洲123区在线观看| 日本不卡123| 国产精品自拍毛片| 99久久精品国产一区二区三区| 91福利社在线观看| 91精品久久久久久蜜臀| 久久久久国产精品麻豆ai换脸| 国产精品免费视频网站| 一区二区三区四区在线播放| 无码av免费一区二区三区试看| 精品一二线国产| 成人动漫一区二区| 欧美日韩精品二区第二页| 日韩美女在线视频 | 亚洲乱码一区二区三区在线观看| 亚洲综合久久久| 另类小说综合欧美亚洲| 高清shemale亚洲人妖| 欧美视频在线一区二区三区 | 一区二区三区美女| 蜜芽一区二区三区| 成人高清av在线| 欧美精品久久天天躁| 国产日韩精品一区二区三区| 亚洲综合免费观看高清在线观看| 久久超级碰视频| 91国产精品成人| 精品不卡在线视频| 亚洲综合一区二区精品导航| 欧美色图天堂网| 国产女主播视频一区二区| 亚洲国产aⅴ天堂久久| 国产精品影视天天线| 在线免费亚洲电影| 国产欧美日本一区二区三区| 午夜电影网亚洲视频| 春色校园综合激情亚洲| 91麻豆精品国产自产在线| 1区2区3区精品视频| 韩国精品主播一区二区在线观看 | 亚洲国产精品一区二区www在线 | 成人美女视频在线看| 日韩视频123| 亚洲国产va精品久久久不卡综合| 国产精品一区不卡| 日韩一区二区免费视频| 亚洲码国产岛国毛片在线| 国产剧情一区二区| 91麻豆精品国产91| 亚洲综合免费观看高清在线观看| 国产精品一品视频| 欧美成人一区二区三区片免费 | 99国产精品视频免费观看| 精品国产乱码久久| 日韩不卡免费视频| 欧美曰成人黄网| 国产精品护士白丝一区av| 国产精品一区免费在线观看| 欧美一区二区高清| 天天爽夜夜爽夜夜爽精品视频| 99久久国产综合精品色伊| 久久九九影视网| 精一区二区三区| 91精品国产综合久久福利软件| 亚洲一区二区三区四区不卡| 成人免费毛片高清视频| 欧美精品一区二区三区蜜臀| 日本欧美肥老太交大片| 欧美三级电影网站| 一区二区三区在线免费| 色呦呦日韩精品| 亚洲三级在线观看| 99热在这里有精品免费| 中文字幕av一区 二区| 国产不卡视频一区| 国产欧美日韩麻豆91| 国产高清成人在线| 日本一区二区三区四区在线视频| 国产伦精品一区二区三区免费| 日韩一级二级三级| 乱一区二区av| 青青草伊人久久| 日韩视频在线永久播放| 久久电影网站中文字幕| 欧美精品一区二区不卡| 国产酒店精品激情| 国产精品人妖ts系列视频| 成人激情黄色小说| 综合网在线视频| 91久久精品一区二区三| 亚洲国产一区二区视频| 欧美高清视频www夜色资源网| 五月天激情综合| 日韩欧美高清一区| 国产一区二区按摩在线观看| 久久久99久久| 91香蕉视频污在线| 亚洲一区二区视频在线| 欧美精品1区2区| 久久国产麻豆精品| 国产精品欧美一级免费| 91国产丝袜在线播放| 免费看黄色91| 亚洲国产精品av| 一本久道中文字幕精品亚洲嫩| 亚洲成av人片| 亚洲精品一区二区三区蜜桃下载 | 麻豆精品在线看| 国产午夜精品久久久久久免费视| 成人精品国产福利| 亚洲一区二区三区自拍| 日韩区在线观看| 成人免费毛片高清视频| 亚洲国产日韩精品| 26uuu精品一区二区在线观看| 成人在线综合网站| 亚洲福利视频一区| 久久精品视频免费观看| 91色|porny| 精品亚洲成a人| 亚洲精品亚洲人成人网在线播放| 91精品国产综合久久精品性色| 国产精品白丝av| 亚洲18女电影在线观看| 久久久久久久久岛国免费| 在线观看国产日韩| 国产福利一区二区| 亚洲成人在线免费| 国产精品全国免费观看高清 | 中文字幕精品—区二区四季| 在线看不卡av| 国产九色精品成人porny| 一区二区三国产精华液| 久久久久久久综合狠狠综合| 在线免费观看视频一区| 国产盗摄精品一区二区三区在线 | 亚洲女人的天堂| 26uuu国产在线精品一区二区| 欧美亚洲国产一区二区三区va| 国产又粗又猛又爽又黄91精品| 亚洲国产乱码最新视频| 国产精品另类一区| 精品久久久久久亚洲综合网 |