Matlab foreach 迴圈

Mehak Mubarik 2023年1月30日
  1. 在 MATLAB 中通過 for 迴圈執行 foreach 迴圈
  2. 在 MATLAB 中通過 While 迴圈執行 for-each 迴圈以修改資料物件
Matlab foreach 迴圈

我們將研究使用 for-each 條件對 MATLAB 中的資料應用迴圈和條件的不同方法。

為了清除你的概念並讓你全面瞭解 MATLAB 中的 for-each 函式的含義,我們將使用不同的示例程式碼和相關輸出。請記住,每當我們在迭代期間更新任何資料時,Java 和其他語言中的 for-each 迴圈都會導致未定義的行為。

如果我們希望更改資料結構,我們需要建立一個 Iterator 例項,它允許我們從集合中插入和刪除物件。我們在 MATLAB 中使用 for-each 迴圈來實現高效、可訪問且易讀的迴圈。

例如,我們可以輕鬆地迴圈/迭代陣列的元素,而不需要括號來索引單元格,這使我們能夠利用硬編碼。

我們可以使用每個組合有效地將任何巢狀迴圈轉換為單個 for 迴圈。它允許在任何維度的 [M-N] 個陣列元素之間進行迭代。處理向量時出現的許多問題之一。

使用 for-each 概念,我們可以輕鬆地遍歷許多向量組合,併為任何陣列建立我們自己的迭代演算法。

在 MATLAB 中通過 for 迴圈執行 foreach 迴圈

MATLAB 中的 foreach 只不過是其他程式語言中的 fordo-while 迴圈。在其他程式語言中,for 迴圈是動態的,我們有以下表示 for 迴圈的方式:

for(initialization;condition;increment)

在 MATLAB 中,我們無權編輯迭代之間迴圈中使用的變數。這意味著 MATLAB 中的 for 迴圈(for-each 迴圈)是靜態的。

讓我們通過檢視以下示例來理解這個概念:

程式碼:

%FOREACH LOOP IN MATLAB:

input = 5:3:25;

for output = input
% Let us do some stuff with our input
disp(output);
end

輸出:

output
	5

	8

	11

	14

	17

	20

	23

MATLAB 中的 for 迴圈提供了極大的靈活性,就像其他程式語言中的 for-each 迴圈一樣。

在 MATLAB 中通過 While 迴圈執行 for-each 迴圈以修改資料物件

從上面的例子中,我們看到一旦條件被設定並且程式的迴圈開始工作,我們就不能修改。

儘管如此,while 迴圈在這種情況下更有效,如果我們希望我們編寫的程式碼在執行期間的整個迭代過程中接受資料結構中的修改,它可能更適合。

在每次迭代中,程式碼將允許我們驗證我們應用的迴圈條件,並在需要時更改 While 迴圈變數的表示式。

程式碼:

%while LOOP IN MATLAB:

input = 20;
output = input;
while input > 1
input = input-1;
output = output*input;
end
disp(['input! = ' num2str(output)])

輸出:

input! = 2.43290200817664e+18
作者: Mehak Mubarik
Mehak Mubarik avatar Mehak Mubarik avatar

Mehak is an electrical engineer, a technical content writer, a team collaborator and a digital marketing enthusiast. She loves sketching and playing table tennis. Nature is what attracts her the most.

LinkedIn