Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2010-05-31, 19:02   #1
lovegyp
初级会员
 
注册日期: 2010-05-31
年龄: 36
帖子: 1
声望力: 0
lovegyp 正向着好的方向发展
默认 紧急求助!如何把下面一段代码变成可在matlab中运行的~万分感谢了

x=[];y=[];b;q;t;f;
%x为输入的影响开发决策的各因素的权重
%y为输入的影响开发等级的各因素的分值
[m,n]=size(y) % 获得影响开发等级的各因素的分值矩阵y和行m和列n
for j=1:n %等级A的隶属度计算
if y(1,j)>=90
r1(1,j)=1;
else if y(1,j)>80&y(1,j)<90
rl(1,j)=(y(1,j)-80)/10;
else r(1,j)=0;
end
end
for j=1:n %等级B的隶属度计算
if y(1,j)>80&y(1,j)<90
r2(1,j)=(90-y(1,j)/10;
else if y(1,j)>70&y(1,j)<=80
r2(1,j)=(y(1,j)-70)/10;
else r2(1,j)=0;
end
end
for j=1:n %等级C隶属度计算
if y(1,j)>70&y(1,j)<80
r3(1,j)=(80-y(1,j))/10;
else if y(1,j)>60&y(1,j)<=70
r3(1,j)=(70-y(1,j))/10;
else r3(1,j)=0;
end
end
for j=1:n %等级D隶属度计算
if y(1,j)>60&y(1,j)<70
r4(1,j)=(y(1,j)-60)/10;
else if y(1,j)>50&y(1,j)<=60
r4(1,j)=(y(1,j)-50)/10;
else r4(1,j)=0;
end
end
for j=1:n %等级E隶属度计算
If y(1,j)<=50
r5(1,j)=1;
Else if y(1,j)>50&y(1,j)<60
r5(1,j)=(60-y(1,j))/10;
else r5(1,j)=0;
end
end
r=[r1;r2;r3;r4;r5]’ %模糊评价矩阵
b=x*r %求得模糊矩阵b
f=[90,80,70,60,50]’; %开发风险等级
t=b*f %开发分数
q=0.50+(0.60-0.50)*(t-80)/(90-80) %开发状况评价
6.2运行情况
输入数据:
y=[79 85 79 88 92 86 90 87 92 89];
x=[0.20 0.08 0.15 0.10 0.10 0.09 0.05 0.08 0.05 0.10];
输出结果:
m =1 %行
n =10 %列
r = %模糊综合评价矩阵R

b=0.5200 0.4200 0.055 0 0 %模糊矩阵B
t=84.1000 %分数
q=0.5410 %开发量
lovegyp 当前离线   回复时引用此帖
 


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 11:30


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.