matlab求指数教

查看: 3701|回复: 10|关注: 0
matlab中排列组合问题,求指教
小弟不才,希望能从1:10中随机选取6个数组合,挑选出满足一定条件的组合,如下示例:
function C=li1_1
A=combntns(1:11,6);& & %表示创建从1到11中随机选取6个数的全部组合
B=randperm(16,1)
H=size(A,1);
for&&k=1:H;
C{k}=A(k,:);
D{k}=mean(C{k});& && &&&不知道这里的均值是对某一个C{k}中的元素求均值,还是对所有的C{k}求均值啊?
E{k}=(5-C{k}).^2;
F{k}=sum(E{k});
a=input('下限');
b=input('上限');
c=input('下限2');
d=input('上限2');
if a&D{k}&b & c&F{k}&d
G{k}=disp('无有效组合')
小弟本意是把满足条件的组合选出来,但是红色标示部分代码错误,返回的结果仍然是所有的组合而不是满足条件的组合,不知道怎么办?求指教(代码写的太冗余,见谅)
关注者: 108
if a&D{k} && D{k}&b && c&F{k} && F{k}&d
B=randperm(16,1):没这种用法;
RANDPERM Random permutation.
& & RANDPERM(n) is a random permutation of the integers from 1 to n.
& & For example, RANDPERM(6) might be [2 4 5 6 1 3].
& & Note that RANDPERM calls RAND and therefore changes RAND's state.
关注者: 108
tzjlcs217 发表于
B=randperm(16,1):没这种用法;
RANDPERM Random permutation.
p = randperm(n,k) returns a row vector containing k unique integers selected randomly from 1 to n inclusive.
honglei.chen 发表于
p = randperm(n,k) returns a row vector containing k unique integers selected randomly from 1 to n&&...
其实是可以的,不过就是冗余了些
honglei.chen 发表于
即使改成版主这样,运行返回的结果仍然是全部组合,而不是满足特定条件的组合啊
关注者: 108
敲石问路 发表于
即使改成版主这样,运行返回的结果仍然是全部组合,而不是满足特定条件的组合啊 ...
那就单步跟踪一下吧
本帖最后由 tzjlcs217 于
12:04 编辑
最后一个if只执行了一次,没有循环;改为以下的
A=combntns(1:11,6);& & %表示创建从1到11中随机选取6个数的全部组合
H=size(A,1);
for&&k=1:H;
C{k}=A(k,:);
D{k}=mean(C{k});& && &&&
E{k}=(5-C{k}).^2;
F{k}=sum(E{k});
a=input('下限');
b=input('上限');
c=input('下限2');
d=input('上限2');
for&&k=1:H;
if a&D{k}&&D{k}&b && c&F{k}&&F{k}&d
C{k}='无有效组合';
tzjlcs217 发表于
最后一个if只执行了一次,没有循环;改为以下的
A=combntns(1:11,6);& & %表示创建从1到11中随机选取6个数 ...
a=combntns(1:4,3);
b{k}=a(k,:)
c{k}=sum(b{k});
d=input('下限')
e=input('上限')
for k=1:4;
if d&c{k}&e
disp('无有效组合')
大哥这是我简化的一个小例子,按照您所说的,可是返回的结果仍然是全部组合啊,不信,您试试
disp('无有效组合')
b{K}='无有效组合'
站长推荐 /1
Powered by新手求指教,matlab有错误,求详细讲解,真心做不出来了_百度知道
新手求指教,matlab有错误,求详细讲解,真心做不出来了
&%function [P] = Triangle(A;
y2 = double(s2,dC)
%A;%dB=25*sqrt(3); %求A.y);
P(2) = (Pab(2)+Pbc(2)+Pac(2))&#47,C;function &#39.x);
Pbc(2) = y2(2),0],f3),dB.x);
Pbc(2) = y2(1),C两圆的交点
s3 = solve(f1;
y1 = double(s1;.x);3;
%任两个方程联立;
%选择内侧的三个交点
%两圆相交于两点.y);
if d2(1) &lt,代码中采用的等边三角形)
%A = [0,Pac
d1(1) = sqrt(((C(1)-x1(1))^2+(C(2)-y1(1))^2)),即为未知节点P,P3;%dC=25,以信标节点为圆心,0];
x3 = double(s3;
Pab(1) = x1(2);
%C = [50,dB,信标节点到未知节点的测量距离为半径作三个圆
f1 = (A(1)-x)^2+(A(2)-y)^2-dA^2,B,f3);
d3(1) = sqrt(((B(1)-x3(1))^2+(B(2)-y3(1))^2));
%B = [25,dA;= d3(2)
Pac(1) = x3(1);
Pac(2) = y3(1); %求B;
Pac(2) = y3(2),C为三个选定的信标节点;
f3 = (C(1)-x)^2+(C(2)-y)^2-dC^2,完成定位
P(1) = (Pab(1)+Pbc(1)+Pac(1))/
if d3(1) &lt?.y);
d3(2) = sqrt(((B(1)-x3(2))^2+(B(2)-y3(2))^2));A'
Pac(1) = x3(2)? Undefined command/
d2(2) = sqrt(((A(1)-x2(2))^2+(A(2)-y2(2))^2)),dC为A,求任两圆交点
s1 = solve(f1,y]未知)的模拟测量距离%dA=25;
Pab(2) = y1(1),节点坐标已知(为便于防真及验证;
y3 = double(s3,y为符号变量
%距离方程,25*sqrt(3)],C两圆的交点
%将结果(符号变量)转换为双精度数值
x1 = double(s1;
%定义未知坐标x;
d1(2) = sqrt(((C(1)-x1(2))^2+(C(2)-y1(2))^2));= d1(2)
Pab(1) = x1(1);
Pab(2) = y1(2),P&,Pac的质心,B,B; %求A,距第三个圆心近的为选定交点Pab,B两圆的交点
s2 = solve(f2;
x2 = double(s2,C到未知节点(假定坐标[x,dB;
%求三个圆内侧三个交点P
f2 = (B(1)-x)^2+(B(2)-y)^2-dB^2;
Pbc(1) = x2(2)?,f2);
d2(1) = sqrt(((A(1)-x2(1))^2+(A(2)-y2(1))^2));
if d1(1) &= d2(2)
Pbc(1) = x2(1)%三边测量的定位算法%dA,dC) %function [P] = loca_triangle(dA
提问者采纳
dB,dC的赋值都注释掉了你把对A,B,dA,C
那怎样了才能运行呢,新手真心不懂,还请多多指教
在matlab里面%是注释符,把赋值语句前面的%都去掉
改完之后,又出现这个问题!??? Index exceeds matrix dimensions.
这句话的意思是数组下标越界,你看看是发生在哪一行
提问者评价
其他类似问题
为您推荐:
matlab的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁MATLAB 中~的意思 例如:x=y((a~1):b) 恳请指教!_百度知道
MATLAB 中~的意思 例如:x=y((a~1):b) 恳请指教!
提问者采纳
x=y(4:10,意义相同; y=randint(5;& xx =
12&gt,20]),,构成一个新的向量,往下. ; y=1。并且是正整数,a是一个数值.。&&gt:a-1;&&&gt.。而且b&gt。b也是; yy =
18&&&x=y(3,往下;=a-1。如果y是一个矩阵的话; xx =
10&gt:y是一个矩阵; %例如; %例如。以此类推把下标揪出来的:b)的意思就是。取下标的顺序是从第一列开始:10)。 &gt。x=y((a-1),a,[12,5;&gt,y是一个向量,取法不同,到第二列,将向量y的下标为;&gt,a+1,赋值给x;&gt。当然,b的这些值提出来:5),完了之后。&gt,这里架设了y是一个向量从你的表达式可以看出;&gt
来自团队:
其他类似问题
为您推荐:
matlab的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁关于MATLAB中m文件转换为C文件的问题,请大家指教!
[问题点数:20分]
关于MATLAB中m文件转换为C文件的问题,请大家指教!
[问题点数:20分]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
本帖子已过去太久远了,不再提供回复功能。matlab 版本更新求指教_百度知道
matlab 版本更新求指教
希望专业的朋友介绍一个稳定.0。现在想换个matlab更高级的版本。非常感谢我以前装的是matlab 6,顺便把下载地址和破解方法贴上、专业的版本,用了1年多了
我有更好的答案
只是版本更新的功能就更强大一点!里边有很多可以下载的!,我前几天换的R2011a,用着很舒服的,建议多逛逛matlab的论坛,下载地址估计比较难找一般matlab版本都是稳定的
建议使用MatlabR2010B,可以留下邮箱将安装文档发给你。
其他类似问题
为您推荐:
matlab的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 matlab求解指数方程 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信