1樓:匿名使用者
同意xdhum的方式。也是最常用的方式。當然你也可以構造全排列來做,對於比較多的ijk來說比較合適,不過即便3個規模也還是不大所以就用三個for和乙個if判斷就夠了。
不過一下方式可以參考一下(四則運算是否要加()就自己試試了):
for i=1:7
for j=1:i-1
for k=1:j-1
statements;
endfor k=j+1:i-1
statemnts;
endfor k=i+1:7
statements;
endend
for j=i+1:7
for k=1:i-1
statements;
endfor k=i+1:j-1
statements;
endfor k=j+1:7
statements;
endend
end表面上次數是多了,但是執行的次數要相對上一點,也就是人工去除了等於的情況,不過如果我要我選擇我還是會使用樓上的判斷的。
2樓:匿名使用者
可以在迴圈語句裡面加入條件語句,參考一下下面給你的情況:
for i=1:7
for j=1:7
for k=1:7
if i~=j & i~=k & k~=j你想要的結果;
endend
endend
3樓:匿名使用者
加個if 或while語句不就搞定了。
關於matlab的for迴圈語句問題。
4樓:墨夷寒壘
這種寫法是錯誤的,不信你用matlab試試
matlab for語句的迴圈問題
5樓:匿名使用者
檢查m1的值
改進了你的程式
g=load('201407271.txt'); % 匯入採集的資料,資料需訪問在matlab路徑下
q=size(g); % 資料的行數,即採集的資料點數k=q(1);
% k=size(g,1);
m=3125; % 頻率為32hz 取樣間隔為10μs, 乙個週期有3125個資料點
l=k/m;
n=fix(l)-1; % n為記錄資料的整週期數%第乙個整的週期從585點開始,根據資料排列,找到具體所需資料範圍,乙個週期為1562個點
m1=n-1
for n2=1:m1
tmp=(n2+1)*1562;
k1=g(1359:1458,2) % 2:2b1= g((1359+tmp):
(1458+tmp),2)b2= g((2140+tmp):(2239+tmp),2)k1=[k1;b1;b2]end
matlab中不用for語句,怎麼迭代
6樓:匿名使用者
n = 5;
r = arrayfun(@(x) u(1)*0.95^x,0:n-1)
r =5.1000 4.8450 4.6027 4.3726 4.1540
7樓:匿名使用者
簡單 …………加分搞定!
8樓:
不用迴圈??while也不能用??
matlab for 迴圈問題 5
9樓:愛吃魚的夏露露
很簡單的,用break語句跳出迴圈~~~~~~for....
....
.....
break,end
%%%%%%%%%%%%%
希望對你有用
10樓:
為什麼非得用for迴圈呢?可以用while迴圈呀,把while裡邊的條件寫成「條件不滿足」的形式就行了麼~~~~while的具體用法(跟for差不多)~~~
while expression
statementsend
11樓:匿名使用者
for n=1:3
if expression
break;
endend
matlabwhile語句,Matlab中while迴圈語句的用法?
a是乙個陣列,abs a s 這個得到的是1 141的陣列,而abs a s 6就表示成了邏輯運算,陣列中大於6的為1,小於6的為0,所以這個程式永遠不會執行到break的,而後面你用的disp a 顯示的是陣列a,這就是你所說的 結果是從1到15的茫茫一大片 從你的思路來看是要找到a,這個a的值應...
matlab中if語句執行一直提示說語句不完整求幫忙解決
end if是哪個語言的表達方式呢?vb或者c 直接end結尾 endif end試試 matlab if 語句出現問題 10 matlab有可以排查錯誤,跳過錯誤語句,繼續執行下一句回 的函式try catch end 這是答介紹 註釋掉 syms x 即刪除該語句 matlab 的if 語句執行...
關於matlab的氣泡排序法,matlab中氣泡排序法,要求對輸入的陣列元素進行排序
function n bub p n p if length size p 2 min size p 1,disp 引數必須為bai向量.else for i 1 length p for j 2 length p if n j 1 n j q n j 1 n j 1 n j n j q enden...