24小时热门版块排行榜    

查看: 1693  |  回复: 10

埃尔多安

银虫 (正式写手)

[求助] 请问这段小matlab代码怎么修改? 已有1人参与

for j=1:n;
    P(j)=N+(M-N)*rand(3);
    for k=1:3;
    A(k)=p(k);
这段代码,我想P应该得到 一个矩阵,n×3,但是我怎么针对每个J行的各列的数值依次赋值给1×3的矩阵A,急求啊!!!
请问上面那段代码怎么修改啊?谢谢哈!!!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

续。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

【答案】应助回帖

感谢参与,应助指数 +1
P = zeros(n,3);
for jj=1:n
    P(jj,=N+(M-N)*rand(1,3);
end
for kk=1:n
    A(kk,=p(kk,;
end
What would Jesus do?
2楼2014-05-24 14:06:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

引用回帖:
2楼: Originally posted by dnp at 2014-05-24 14:06:49
P = zeros(n,3);
for jj=1:n
    P(jj,=N+(M-N)*rand(1,3);
end
for kk=1:n
    A(kk,=p(kk,;
end

CODE:
P = zeros(n,3); % preallocation
for jj=1:n
     P(jj,:)=N+(M-N)*rand(1,3);
end
for kk=1:n
     A(kk,:)=p(kk,:);
end

What would Jesus do?
3楼2014-05-24 14:08:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

埃尔多安

银虫 (正式写手)

引用回帖:
3楼: Originally posted by dnp at 2014-05-24 14:08:19
P = zeros(n,3); % preallocation
for jj=1:n
     P(jj,=N+(M-N)*rand(1,3);
end
for kk=1:n
     A(kk,=p(kk,;
end...

能够写成内外循环嘛?请问
续。
4楼2014-05-24 14:42:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

埃尔多安

银虫 (正式写手)

引用回帖:
3楼: Originally posted by dnp at 2014-05-24 14:08:19
P = zeros(n,3); % preallocation
for jj=1:n
     P(jj,=N+(M-N)*rand(1,3);
end
for kk=1:n
     A(kk,=p(kk,;
end...

抱歉还是不匹配啊。。。提示:带有下标的赋值维度不匹配。我给下楼贴出我的代码和给出这个问题帮忙解决一下好吗?谢谢。
续。
5楼2014-05-24 14:52:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

埃尔多安

银虫 (正式写手)

%此函数在于仿真模拟得到工程竞标中最具竞争优势的投标竞价

M=0.95*1500;  %根据行业上三下五的原则
N=1222.5;n=81;T=M*0.05;
P=N:2.5:M;   %报价在有效报价区间中成均匀分布,取阶差为2.5采取样本
beta=(184+round(8*rand(1)))*5/1000;  %下浮让利系数β

P=zeros(n,3);
for jj=1:n;
    P( jj,n)=N+(M-N)*rand(1,3);
    for kk=1:3;
        A(kk,=P(kk,;
      for i=1:1000;      %针对每个本人报价样本点而对其余四家报价进行1000次内循环
        S=normrnd(1500,18,1,2);   %假定均值为1500万标准偏差为18万每次产生4个高斯随机分布数模拟其他四家报价
        A4=S(1,1);
        A5=S(1,2);
        C=0.5*beta*(M+A(1)+A(2)+A(3)+A4+A5)/5+(1-beta)*T;  %计算满分报价点C
        if A(kk)==C;
            F(k)=100;
        elseif A(kk,<C;
            F(k)=100-(C-A(kk,)/C*50*0.5;
        else F(k)=100-(A(kk,-C)/C*50;
        end
      end
    Amu(j)=mean(F);
    end
end
Y=max(Amu);
id=find(Amu==Y);
Pmax1=P(id);
format shortg
disp(Pmax1)

这道题是http://muchong.com/bbs/viewthread.php?tid=7435745的第二问,敬请指教!!!
续。
6楼2014-05-24 14:54:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

埃尔多安

银虫 (正式写手)

引用回帖:
5楼: Originally posted by 埃尔多安 at 2014-05-24 14:52:18
抱歉还是不匹配啊。。。提示:带有下标的赋值维度不匹配。我给下楼贴出我的代码和给出这个问题帮忙解决一下好吗?谢谢。...

程序乱码了,给您图片。。。
请问这段小matlab代码怎么修改?
第二问求指教.png

续。
7楼2014-05-24 14:58:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

埃尔多安

银虫 (正式写手)

引用回帖:
3楼: Originally posted by dnp at 2014-05-24 14:08:19
P = zeros(n,3); % preallocation
for jj=1:n
     P(jj,=N+(M-N)*rand(1,3);
end
for kk=1:n
     A(kk,=p(kk,;
end...

第二个for循环是不能到n的,我是想取3个数而已,不然对应关系也就好弄code了,我是想每J行的三列的数值赋值给A。请区长能够重新考虑一下。谢谢
续。
8楼2014-05-24 16:10:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

【答案】应助回帖

内容已删除
What would Jesus do?
9楼2014-05-24 20:30:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

没有看到你A的向量还要用于计算C,这样的话,F(k)是什么东西?比较你想得到什么?
What would Jesus do?
10楼2014-05-24 20:32:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 埃尔多安 的主题更新
信息提示
请填处理意见