用for迴圈和while迴圈計算1到100的平方和

2021-05-02 11:22:18 字數 1682 閱讀 7096

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...