急請問在matlab中如何對for迴圈及if語句的嵌

2022-01-19 17:56:12 字數 5100 閱讀 6012

1樓:匿名使用者

給k1 k2設定下標就好了啊,k1(m) k2(n),開始m n都為1

,滿足條件時在加1.希望採納,設定為滿意答案,謝謝。

matlab中if語句和for語句的巢狀 10

2樓:流星寒冰

可以。行不行在matlab裡面執行下,然後檢視下變數是不是你想要的值就知道是對是錯了。

3樓:易桐水

可以的……f5一下你就知道~

4樓:疾風動竹

可以。。。。。。。。。

matlab中 for 與 if 的巢狀

5樓:匿名使用者

1.修改一(按照你的思路):

t = [0:0.1:5];

for k = 1:length(t)

if sin(t(k)) == 0

y(k) = 1;

elseif sin(t(k)) == 0.5y(k) = 0.25;

elseif sin(t(k)) == -0.5y(k) = 0.25;

else

y(k) = 0;

endend

plot(t,y,'or','markersize',6);

2.修改二(執行效率更高):

t = 0:0.1:5;

y = 0 + (sin(t)==0)*1 + (sin(t)==0.5)*0.25 + (sin(t)==-0.5)*0.25;

plot(t,y,'or','markersize',6);

6樓:匿名使用者

t=[0:0.1:5];

for k=1:length(t)

if sin(t(k))==0

y(k)=1;

elseif sin(t(k))==0.5y(k)=0.25;

elseif sin(t(k))==-0.5y(k)=0.25;

else

y(k)=0;

endend

plot(t,y);

你也可以不用迴圈實現

t = 0:0.1:5;

y = 0 + (sin(t)==0)*1 + (sin(t)==0.5)*0.25 + (sin(t)==-0.5)*0.25;

plot(t,y);

7樓:05劍塵

t=[0:0.1:5];

y=;for k=0:0.1:5

if sin(t)==0

y=1,

else if sin(t)==0.5

y=0.25,

else if sin(t)==-0.5

y=0.25,

else y=0;

endend;

endplot(t,y)

end少了一個end

求大神解答一個matlab中的for迴圈巢狀if選擇語句

8樓:匿名使用者

1、最後缺少一個end;

2、這句輸出沒什麼意義:disp a(i)=a(j);

3、這句完全多餘:else continue

給你寫了一段**供參考:

% 生成測試資料

a = [randperm(19) randperm(19)+1]

c = 0;  % 計數器

for i=1:19

for j=20:38

if a(i)==a(j)

c = c + 1;

fprintf('%2i: a(%i)=a(%i)\n',c,i,j)

endend

end輸出(由於資料隨機生成,每次執行得到的結果不同):

a =columns 1 through 10

10     4    17    15    14     3     2    11     1     8

columns 11 through 20

9     5     6    12     7    18    16    13    19    19

columns 21 through 30

4     5    18    10     9     7     2     3    14    13

columns 31 through 38

15    16    12    20    17     6     8    11

1: a(1)=a(24)

2: a(2)=a(21)

3: a(3)=a(35)

4: a(4)=a(31)

5: a(5)=a(29)

6: a(6)=a(28)

7: a(7)=a(27)

8: a(8)=a(38)

9: a(10)=a(37)

10: a(11)=a(25)

11: a(12)=a(22)

12: a(13)=a(36)

13: a(14)=a(33)

14: a(15)=a(26)

15: a(16)=a(23)

16: a(17)=a(32)

17: a(18)=a(30)

18: a(19)=a(20)

matlab中if語句如何巢狀使用?

9樓:時空聖使

找出第一行是3,第二行是7,把這一行的第1個數換成10.

clear all

clca=[2 3 4 5 6;

7 7 7 8 8]';

for i=1:length(a)

if(a(i,2)==7)

if (a(i,1)==3)

b(i,1)=10;

else

b(i,1)=a(i,1);

endb(i,2)=7;

endend

複製**

10樓:一小時60題

clear all

clca=[2 3 4 5 6;

7 7 7 8 8]';

for i=1:length(a)

if(a(i,2)==7)

if (a(i,1)==3)

b(i,1)=10;

else

b(i,1)=a(i,1);

endb(i,2)=7;

endend

11樓:匿名使用者

一般為if 條件

內容end

或if 條件

內容else if

內容end

或者if (expression1)

else if (expression2)else if (expression3)else if ……

…………………………………

else

endendend

……end

matlab雙重for迴圈巢狀if向量化

12樓:匿名使用者

注意:改寫的**有以下兩點假設:

(1)cnt的初值為1;

(2)tst的size和lu相同,若不滿足if的條件,元素預設值為0。

如果上述條件不滿足,則**還需要作一些調整。有問題請追問。

b1 = cb(1:x,1:y)-(mb+db*sign(mb));

b2 = cr(1:x,1:y)-(1.5*mr+dr*sign(mr));

idx = b1

matlab中如何有效的儲存for迴圈中的結果?

13樓:

matlab最擅長矩陣運算,你應該用矩陣的公式去表示你要實現的結果,而不是迴圈逐個數字去拼接。理解我的意思不。你走入誤區了。。。行18×24是幾個意思

你要每次迴圈都輸出的話,直接value就行了,或者去掉分號for h=1:m

a1=a(h,:);

for h2=1:i

b1=b(h2,:);

c(i,:)=[a1,b1];

value

endvalue=[value,c]end

matlab if else 巢狀 for迴圈 操作語句 請幫忙看看問題在**!謝謝 5

14樓:匿名使用者

if else end如果if end就沒有else啥事了,將第一個end去掉,可在**最後一行再加個end試試

matlab裡多個for迴圈的巢狀迴圈語句怎麼寫 5

15樓:

不知道引數具體數值無法執行,這裡給你指出程式設計錯誤。123456

78910

if s1>s2

for i=150:15:0;%應修改為i=150:-15:0new1=afft(im1,i);

s10=as(new1);

if abs(s10-s2)<0.01

subplot(1,2,1),imshow(new1,)subplot(1,2,2),imshow(im2,)%這裡你是否只需畫一幅圖?根據你的表達退出所有迴圈這裡要加個break

endend%最後仍缺個end

修改程式如下:12

3456

78910

11if s1>s2

for i=150:-15:0

new1=afft(im1,i);

s10=as(new1);

if abs(s10-s2)<0.01

subplot(1,2,1),imshow(new1,)subplot(1,2,2),imshow(im2,)break

endendend

16樓:匿名使用者

內嵌迴圈用break還不行最後做個判斷吧flag=1;whileflagfori=1:10ifi>9flag=0%跳出while迴圈break;%跳出for迴圈endendend

17樓:麼心遠

for i=0:10 iend

MATLAB中如何用simulink對系統的開環傳遞函式進行

先開啟simulink,新建模型檔案,然後從模組庫裡拖出傳遞函式模組,雙擊,設定傳遞函式的表示式,你這種最好用零極點模型,然後在拖出來一個延遲模組,雙擊設定延遲時間tao。接著把這兩個模組串聯起來。然後拖出一個step訊號源和一個比較點,把他們之間連起來,再接一個負反饋到比較點,就完成了 如果這個直...

在matlab中如何實現函式的抽樣

dyaddown。功能 對時間序列進行二元取樣,每隔一個元素提取一個元素,得到一個降取樣時間序列。格式 y dyaddown x,evenodd 當evenodd 0時,從x中第二個元素開始取樣 偶取樣 當evenodd 1時,從x中第一個元素開始取樣 奇取樣 2.y dyaddown x even...

各位大神請問在matlab繪圖中如何實現如下坐

1c2 1 10 mse 1000.exp c2 hold on plot 0.05 ones 1,length c2 plot c2,mse 1000,xlabel c 2 ylabel mse 10 3 legend 時不變方法 時變方法 hold off 2e1 0 1 0.5 a1 exp ...