银行家Word文档下载推荐.docx
- 文档编号:18644058
- 上传时间:2022-12-30
- 格式:DOCX
- 页数:14
- 大小:16.77KB
银行家Word文档下载推荐.docx
《银行家Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《银行家Word文档下载推荐.docx(14页珍藏版)》请在冰豆网上搜索。
structfinish*next;
intmain()
introw,colum,status=0,i,j,t,temp,processtest;
structallocation*allochead,*alloc1,*alloc2,*alloctemp;
structmax*maxhead,*maxium1,*maxium2,*maxtemp;
structavailable*avahead,*available1,*available2,*workhead,*work1,*work2,*worktemp,*worktemp1;
structneed*needhead,*need1,*need2,*needtemp;
structfinish*finihead,*finish1,*finish2,*finishtemp;
structpath*pathhead,*path1,*path2;
printf("
\n请输入系统资源的种类数:
"
);
scanf("
%d"
&
colum);
请输入现时内存中的进程数:
row);
请输入已分配资源矩阵:
\n"
for(i=0;
i<
row;
i++)
for(j=0;
j<
colum;
j++)
请输入已分配给进程p%d的%c种系统资源:
i,'
A'
+j);
if(status==0)
allochead=alloc1=alloc2=(structallocation*)malloc(alloclen);
alloc1->
next=alloc2->
next=NULL;
allochead->
value);
status++;
}
else
alloc2=(structallocation*)malloc(alloclen);
%d,%d"
alloc2->
if(status==1)
allochead->
next=alloc2;
alloc1=alloc2;
alloc2->
status=0;
请输入最大需求矩阵:
请输入进程p%d种类%c系统资源最大需求:
maxhead=maxium1=maxium2=(structmax*)malloc(maxlen);
maxium1->
next=maxium2->
maxium1->
maxium2=(structmax*)malloc(maxlen);
maxium2->
maxhead->
next=maxium2;
maxium1=maxium2;
maxium2->
请输入现时系统剩余的资源矩阵:
种类%c的系统资源剩余:
'
avahead=available1=available2=(structavailable*)malloc(avalen);
workhead=work1=work2=(structavailable*)malloc(avalen);
available1->
next=available2->
work1->
next=work2->
available1->
value=available1->
value;
available2=(structavailable*)malloc(avalen);
work2=(structavailable*)malloc(avalen);
available2->
work2->
value=available2->
avahead->
next=available2;
workhead->
next=work2;
available1=available2;
work1=work2;
available2->
alloctemp=allochead;
maxtemp=maxhead;
needhead=need1=need2=(structneed*)malloc(needlen);
need1->
next=need2->
value=maxtemp->
value-alloctemp->
need2=(structneed*)malloc(needlen);
need2->
value=(maxtemp->
value)-(alloctemp->
needhead->
next=need2;
need1=need2;
maxtemp=maxtemp->
next;
alloctemp=alloctemp->
finihead=finish1=finish2=(structfinish*)malloc(finilen);
finish1->
next=finish2->
stat=0;
finish2=(structfinish*)malloc(finilen);
finish2->
finihead->
next=finish2;
finish1=finish2;
/*Initializationcompleated*/
processtest=0;
for(temp=0;
temp<
temp++)
needtemp=needhead;
finishtemp=finihead;
worktemp=workhead;
worktemp1=worktemp;
if(finishtemp->
stat==0)
for(j=0;
j++,needtemp=needtemp->
next,worktemp=worktemp->
next)
if(needtemp->
value<
=worktemp->
value)
processtest++;
if(processtest==colum)
worktemp1->
value+=alloctemp->
worktemp1=worktemp1->
pathhead=path1=path2=(structpath*)malloc(pathlen);
path1->
next=path2->
value=i;
path2=(structpath*)malloc(pathlen);
path2->
pathhead->
next=path2;
path1=path2;
finishtemp->
stat=1;
for(t=0;
t<
t++)
needtemp=needtemp->
finishtemp=finishtemp->
\n系统处于非安全状态!
exit(0);
\n系统处于安全状态.\n"
\n安全序列为:
\n"
do
p%d"
pathhead->
while(pathhead=pathhead->
next);
return0;
Togetstarted,selectMATLABHelporDemosfromtheHelpmenu.
?
Errorusing==>
mrdivide
Matrixdimensionsmustagree.
Errorin==>
touruchanchuat4
x=b/d
x=
139.2801
267.6056
208.1377
>
dx=inv(b)
dx=
1.34590.25040.3443
0.56341.26760.4930
0.43820.43041.2167
Inputargument"
b"
isundefined.
jacobiat7
N=length(b);
A=[4,1,-1;
1,-5,-1;
2,-1,-6]
b=[13;
-8;
-2]
P=[0;
0;
0]
X=jacobi(A,b,P,10^(-4),20)
A=
41-1
1-5-1
2-1-6
b=
13
-8
-2
P=
0
k=
9
err=
2.5713e-005
X=
3.0000
2.0000
1.0000
A=[1,-9,-10;
-9,1,5;
8,7,1]
1-9-10
-915
871
a=[-1,0,4]
a=
-104
p=[1,1,1]
p=
111
X=jacobi(A,b,P,10^(-4),20)
20
4.3622e+018
1.0e+018*
-2.7077
2.7842
-0.2643
A=[10,4,5;
4,10,7;
5,7,10]
b=[-1,4,0]
p=[1,1,1]
A=[5,-1,13;
-1,2,4;
-3,4,15]
b=[-1,0,4]
functionX=jacobi(A,b,P,delta,max1)
%A是n维非奇异阵
%B是n维向量
%P是初值
%delta是误差界
%X为所求的方程组AX=B的近似解
fork=1:
max1
forj=1:
N
X(j)=(b(j)-A(j,[1:
j-1,j+1:
N])*P([1:
N]))/A(j,j);
end
err=abs(norm(X'
-P));
P=X'
;
if(err<
delta)
break
X=X'
k,err
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 银行家