alec26 发表于 2008-2-20 04:18

问题

我想编求随机数矩阵里大于0.5的元素个数。不知道哪错了<br/>a=rand(10);<br/>b=a&gt;0.5;<br/>c=0;d=1;<br/>for <br/>    b(d)=1;<br/>    c=c+1;<br/>    d=d+1;<br/>end<br/>c<br/>

liwenhui 发表于 2008-2-20 10:27

<p>你试试我下面这个程序:</p><p>b1=rand(10)<br/>=size(b1);<br/>b2=[];<br/>for i1=1:a1;<br/>    for i2=1:a2;<br/>        if b1(i1,i2)&gt;0.5<br/>           b2=b1(i1,i2)<br/>        end<br/>    end<br/>end</p>

liwenhui 发表于 2008-2-20 10:38

<p>我又试了一下,可以显示结果,但上面的程序显示的结果好像不是很方便看,加入一个控制变量i3后你在看看它是不是你要求的结果。附件里是与程序相同的M文件,顺便说一下,你在提问时最好把问题的题目写清楚点,不要只是“问题”两个字,这样不方便别人在搜索引擎上查找类似问题。</p><p>程序如下:b1=rand(10)<br/>=size(b1);<br/>b2=[];<br/>i3=1;<br/>for i1=1:a1;<br/>    for i2=1:a2;<br/>        if b1(i1,i2)&gt;0.5;<br/>           b2(1,i3)=b1(i1,i2);<br/>           i3=i3+1;<br/>        end<br/>    end<br/>end<br/>b2,i3-1</p><p><br/><br/>
        </p><p><br/><br/>
        </p><br/>
[此贴子已经被作者于2008-2-20 10:42:28编辑过]

alec26 发表于 2008-2-20 12:42

好的,谢谢~

lzh0601 发表于 2008-4-19 23:19

<p>我来个更简洁的</p><p>a=rand(n);</p><p>b=find(a&gt;0.5);</p><p>c=length(b);</p>

lzh0601 发表于 2008-4-19 23:19

<p>或者直接写成:</p><p>length(find(rand(10)&gt;0.5))</p><p>还要简单些</p>
页: [1]
查看完整版本: 问题