matlab for迴圈為什麼只執行1次

2021-04-15 16:58:36 字數 2146 閱讀 4032

1樓:匿名使用者

其實你的程式已經滿足你的要求了,事實上,執行後workspace空間上反映的是最後一個回x3,也就答是x3迴圈到最後一個數值(100)後的x3值,當然他就是100了,如果你想要得到的是中間運算中的所有值,而非最終結果,那麼請看下面的程式:

a1 = 8.001;

z3 = 10;

k=0;

x3 = -100:100 ;

for x31=x3(1):1:x3(end)k=k+1;

if x31>=-8 &x31<=8

th1(k)=pi+atan(z3./(x31-a1));

else

th1(k) = atan(z3./(x31-a1));

endth2(k) = atan(z3./(x31+a1));end

2樓:化學工程

這個抄比循bai

環的效du

率高多zhi了dao

。clc;clear

a1 = 8.001;

z3 = 10;

x3 = -100:100

th=-sign(x3).*(x3>=-8&x3<=0).*(pi+atan(z3.

/(x3-a1)))+sign(x3).*(x3>0&x3<8).*(pi+atan(z3.

/(x3-a1))) +atan(z3./(x3-a1));

plot(x3,th)

3樓:祕弘徭盼芙

這個比迴圈的效率高多了專。屬

clc;cleara1=

8.001;z3=

10;x3

=-100:100

th=-sign(x3).*(x3>=-8&x3<=0).*(pi+atan(z3.

/(x3-a1)))+sign(x3).*(x3>0&x3<8).*(pi+atan(z3.

/(x3-a1)))

+atan(z3./(x3-a1));

plot(x3,th)

4樓:野澹壬孤蘭

第一label(i:1)裡面copy的i:1是什麼意思?

如果是bai第i行,第一列要寫成dulabel(i,1);

第二迴圈能夠zhi執行,不是隻執行了一次,肯dao定是執行完了只是你的fprintf('i:%g

j:%g

tp:%g

fp:%g

fn:%g\n',i,j,tp,fp,fn)語句在判斷條件裡面

所以只有符合條件label(i:1)==1&predct(i:1)==-1才會顯示

而你label(i:1)是返回label的第i個到第1個數只有當i=1時,能都返回一個數label(1)當i>2時,label(i:1)就會返回空矩陣所以只會有i=1時候的結果輸出

matlab中for迴圈為什麼只執行了一次

5樓:匿名使用者

把第二行的k=size(h0);換成k=length(h0);

因為size返回陣列[1,120],在後面的for裡變成了for i=1:1.

為什麼for 迴圈只執行的一次?

6樓:涉世小小白

arr.length長度為1

7樓:育知同創教育

for(var i = 0;i可以嘗試一下,寫成

for(var i = 0;i<5;i++)

看下結果就知道了,然後去找原因。

8樓:匿名使用者

你的 arr.length 是多少

為什麼我的for迴圈沒起作用,只執行了一次?(用c語言正常執行)

9樓:匿名使用者

for(i=1;i<=6;i++) {r=1+rand()%33;

cout<<"red is:"<環後

copy面加花括號。他執行了多次 你只輸出了一次。

10樓:董雪聞人彤

for(i=1;i<=6;i++)

迴圈後面加花括號。他執行了多次

你只輸出了一次。

簡單c語言的dowhile 迴圈,但為什麼只能迴圈一次,求解釋,謝謝

你這個do,while沒有一點作用,只要sign不等於 y 就不會做do裡面的工作,首先要明確你的sign是幹什麼的,sign getchar 後面再加個getchar 應該就可以了,第一次輸入y然後回車,getchar 只接收了一個 y 剩下的換行符在第二次迴圈的時候就賦給sign了 while ...

為什麼vc中巢狀for迴圈只執行了一次

因為你兩層迴圈都是用的i作為迴圈變數,當外層迴圈第一次執行時,內部迴圈已將i自增到8,導致外層迴圈的迴圈條件 i 3 不成立,於是外層迴圈只進行了一次就結束了。我知道在for迴圈中加入continue是結束本次迴圈,進入下次迴圈,而break是跳出for迴圈,但在vc6中卻不是這 我看了你的問題,發...

為什麼老是無限迴圈啊

不用輸出這麼多 吧。include using namespace std int main int i,j,k 0 cout for i 1 iif j i 0 k k i if k j cout cout 不是無限迴圈。for i 1 i 這裡的cout真是要命了,光這個cout就要做1000 ...