#include< stdio.h>
#include< conio.h>
#include< graphics.h>
void BoundaryFill4(int,int,int,int);
void BoundaryFill8(int,int,int,int);
void main()
{
int gd=DETECT,gm;
initgraph(&gd,&gm,"");
setbkcolor(15);
setcolor(BLUE);
outtextxy(0,0,"Boundary Filling algorithm using 4-connected and 8-connected");
rectangle(50,50,100,100);
circle(50,50,30);
BoundaryFill8(56,56,5,BLUE);
BoundaryFill4(40,40,14,BLUE);
getch();
}
void BoundaryFill4(int x,int y,int fill,int boundary)
{
int current;
current=getpixel(x,y);
if((current!=boundary) && (current!=fill))
{
putpixel(x,y,fill);
BoundaryFill4(x+1,y,fill,boundary);
BoundaryFill4(x-1,y,fill,boundary);
BoundaryFill4(x,y-1,fill,boundary);
BoundaryFill4(x,y+1,fill,boundary);
}
}
void BoundaryFill8(int x,int y,int fill,int boundary)
{
int current;
current=getpixel(x,y);
if((current!=boundary) && (current!=fill))
{
putpixel(x,y,fill);
BoundaryFill8(x+1,y,fill,boundary);
BoundaryFill8(x-1,y,fill,boundary);
BoundaryFill8(x,y-1,fill,boundary);
BoundaryFill8(x,y+1,fill,boundary);
BoundaryFill8(x+1,y+1,fill,boundary);
BoundaryFill8(x-1,y+1,fill,boundary);
BoundaryFill8(x-1,y-1,fill,boundary);
BoundaryFill8(x+1,y-1,fill,boundary);
}
}
#include #include void main() { int allocated[15][15],max[15][15],need[15][15],avail[15],tres[15],work[15],flag[15]; int pno,rno,i,j,prc,count,t,total; count=0; clrscr(); printf("\n Enter number of process:"); scanf("%d",&pno); printf("\n Enter number of resources:"); scanf("%d",&rno); for(i=1;i OUTPUT Enter number of process:5 Enter number of resources:3 Enter total numbers of each resources:10 5 7 Enter Max resources for each process: for process 1:7 5 3 for process 2:3 2 2 for process 3:9 0 2 for process 4:2 2 2 for process 5:4 3 3 Enter allocated resources for each process: for process 1:0 1 0 for process 2:3 0 2 for process 3:3 0 2 for process 4:2 1 1 for process 5:0 0 2 available resources: 2 3 0 Allocated matrix Max need 0 1 0| 7 5 3| 7 4 3 3 0 2| 3 2 2| 0 2 0 3 0 2| 9 0 2| 6 0 0 2 1 1| ...

Comments
Post a Comment