1樓:隨便什麼名啦啦
1、for迴圈:
sm=0;
for i=1:100
sm=sm+i*i;
enddisp(['和為',num2str(sm)])2、while迴圈:
sm=0;i=1;
while i<=100
sm=sm+i*i;
i=+1;
enddisp(['和為',num2str(sm)])擴充套件資料:matlab常用控制流:
1、條件控制:if-else-end的呼叫格式;
2、開關控制switch-case的呼叫格式;
2、迴圈控制for和while的呼叫格式,前者稱為計數迴圈, 後者稱為條件迴圈;
求1+3+5+...+99的和
for迴圈:
sm=0;
for i=1:2:99
sm=sm+i;
enddisp(['和為',num2str(sm)])while迴圈:
sm=0; i=1;
while i<=99
sm=sm+i;
i=i+2;
enddisp(['和為',num2str(sm)])
2樓:你猜我猜哇擦猜
////////////////////下面是whileint sum = 0;
int _i = 0;
while(_i<100)
////////////////////下面是forint sum = 0;
for(int _i = 0;_i<=100;_i++)
3樓:秦小曉的阿曉
s = 0;
for i = 1 : 100
s = s + i^2;
ends
=338350
>> s = 0; k = 1;
>> while k <=100
s = s + k^2;
k = k + 1;
end>> s
s =338350
在matlab的一個迴圈中,對一個向量中的每個元素平方求平方,再求和,然後再開方,會不會很耗時?
4樓:
試試norm(aa),這應該是最快的了。求向量模長嘛。
可以用profile分析一下,這種built-in函式一般是很快的。
matlab怎樣求矩陣每一行的平方和?
5樓:藤閣美人
1、開啟matlab,在命令bai
行視窗中du輸入 a=[1 2 3;2 3 4;4 5 6],創zhi建3行3列矩陣
2、輸入 sum(a.*a,2),進行dao求a矩陣每一行的平方回和,答其中.*是點乘,2是代表求矩陣的行之和,每列相加
3、按回車鍵之後,可以看到求出了矩陣每一行的平方和4、如果我們想求每一列的平方和,可以輸入sum(a.*a,1)5、按回車鍵之後,可以看到得到了矩陣每一列的平方和
6樓:匿名使用者
有矩陣a
則你所要求的矩陣b=sum(a.*a,2)附:::
.*這是點乘,就是矩陣每個對應位置的元素相乘sum(a,2)是按行相加,得出的為列向量若sum(a)是按列相加,得出的為行向量
matlab迴圈語句while判斷
只要最大值小於等於1就行了,也就是說當最大值大於等於1就進行迴圈。a 2 5 while max a 1 a a 1 end matlab if 和while的區別 while用於迴圈語句,後抄面都執襲行多次。而if用於判斷和分支語句。只是進行一次判斷。if 語句中,常用格式為 if 判斷條件 wh...
C 的while迴圈的問題
cin其實是一個例項,可以理解為一個系統自己的變數然後cin這個例項的定義的類的一個基類過載過operator bool 這個過載可以把例項轉換為int型別 while cin a 就相當於先進行cin a,然後判斷cin.good cin的operator bool 就是返回cin.good 當輸...
c 語言,while迴圈問題。裡面的變數change把我搞糊塗了,它起到了什麼作用
change 是用來控制迴圈的,整個while迴圈是將當前已經輸入的n的資料全部從小到大的排序。只有每次在迴圈裡面的有發生資料的交換,change才會被值為1,如果change為0說明陣列已經有序了,你是的只需要while n 0 這樣程式也是正確的,但是會增加很多不需要的比較,比如輸入的a j 1...