While loop in MATLAB: Everything You Need to Know


MATLAB is a scientific programming language that is used meticulously by developers for its educational value and relevance. Developed by MathWorks, MATLAB needs pre-licensing before usage for organizations and limited free-usage for students.

Today, we are talking about the fundamentals of while loop in MATLAB which are condition functions that help in the execution of the statement when the condition satisfies. For a beginner-focused on learning about the basics of MATLAB, today we will entirely concentrate on the working of the while loop

Read: 15 Interesting MATLAB Project Ideas & Topics For Beginners

The While Loop in MATLAB

Used in iteration, the while loop is used when there is a need for continuous execution of the statement, as criteria are met. The statements that are executed need to have non-zero elements, and when the condition is false, the loop will stop. 

Syntax of while loop: 

while (condition)

  [perform code]


Understanding the syntax and scope: 

  • Here, ‘while’ stands as the keyword for the while loop/function.
  • The condition statement is similar to a trigger that works only when the case is true.
  • For a program that doesn’t satisfy the condition value anytime, the function never executes.
  • Here, ‘end’ refers to the end of the program, which is generally handy when conditions aren’t met. 
  • If a condition always meets in a program, using the while loop can set off an infinite loop chain entirely. 

Here’s an example: 

x = 20;

while (x<30)

fprintf (‘value of x: %d\n’, a);

x = x+1;


Understanding the function:

  • First, the variable is defined with a certain value; here, it is 30.
  • Second, we place the while loop and with the condition of it running until x is lesser than 30. Which means the loop would have a scope from x=20 to x=29. 
  • The ‘fprintf’ function displays the value of x on the screen.
  • Then, the next line increases the value of x every time it runs, by 1. 
  • Therefore, the loop runs until 29 (i.e., 10 times, starting from 20) and then stops as x=30 isn’t lesser than 30. 

Based on the above explanation, the output of the above program would be: 

value of x: 20

value of x: 21

value of x: 22

value of x: 23

value of x: 24

value of x: 25

value of x: 26

value of x: 27

value of x: 28

value of x: 29

Learn about: Top 6 Programming Languages to Learn – In-Demand

Things to Remember:

  • Non-scalar Expressions: These refer to the executed statements that generate a non-scalar or a combination of true and false cases. In such situations, the entire expression needs to be true for all cases, to get executed as a true statement in a while loop. For example: 

Given matrices A and B

A =                 B =

                    1     0            1     1

                    2     3            3     4

Here, the while (A < B) is true for cases where the corresponding A value is lesser than B, and here, the condition fails when A (1,1) since A1 (1) is not smaller than B1 (1). 

  • Partial Evaluation of Expression Arguments: 

In MATLAB, expression generally consists of variables that are joined by relational operators like <, >, =, , ≈, ≤, ≥

A simple statement that combines logical operators into compound statements like 

(count > limit) & ((size – offset)) 0) 

Here, the expression executes only when the entire statement is true and non-zero. 

Sometimes in MATLAB, for a while statement, a logical expression doesn’t get fully evaluated in all its parts. For example: 

while (A & B) = 1;

A = B+1;

printf (‘%A’, B);


If A = 0 and B =1, here, the expression doesn’t get executed irrespective of the value of B. Therefore, MATLAB doesn’t consider the need to evaluate B for the ‘&’ operator since they need to be mutually true for the function to progress. 

Similarly in the case of 

while (A|B) = 1;

A = B+1;

printf (‘%A’, B);


If A = 1 and B= 0, here, the expression gets executed as soon as A=1, since ‘|’ operator in MATLAB reads the statement true as soon as one variable satisfies the condition. It doesn’t feel the need to evaluate the second variable. 

  • You can always end the execution of an infinite loop by pressing Ctrl+C.
  • You can have nesting of while statements with each statement followed by the code and its end keyword.

Also read: Importance of Artificial Intelligence Post COVID-19 World

What Next?

If you’re interested to learn more about machine learning, check out IIIT-B & upGrad’s PG Diploma in Machine Learning & AI which is designed for working professionals and offers 450+ hours of rigorous training, 30+ case studies & assignments, IIIT-B Alumni status, 5+ practical hands-on capstone projects & job assistance with top firms.

Prepare for a Career of the Future

Apply Now

Leave a comment

Your email address will not be published.

Accelerate Your Career with upGrad

Our Popular Machine Learning Course