Summary: This module provides several simple exercises designed to test and increase your understanding of for loops in LabVIEW MathScript.
for a=0:50
disp('Hello World')
end
0:50 creates a vector of integers starting at 0 and going to 50; this vector has 51 elements. "Hello World" will be printed once for each element in the vector (51 times).
for a=-1:-1:-50
disp('Guten Tag Welt')
end
-1:-1:-50 creates a vector of integers starting at -1 and going backward to -50; this vector has 50 elements. "Guten Tag Welt" will be printed once for each element in the vector (50 times).
for a=-1:1:-50
disp('Bonjour Monde')
end
-1:1:-50 creates an empty vector with no elements. Since this is an empty vector the following error occurs: "Error in function range at line 1. You cannot specify a step size of zero for a range."
for a=10:10:50
for b=0:0.1:1
disp('Hola Mundo')
end
end
a) will be executed five times. Each time the outer loop is executed, the inner loop (the loop with b) will be executed eleven times, since 0:0.1:1 creates a vector with 11 elements. "Hola Mundo" will be printed 55 times.
n = 10;
for j = 1:n
n = n-1;
j
end
Explain why this code does what it does.
n is set to 10. The code 1:n creates a vector of integers from 1 to 10. Each iteration through the loop sets j to the next element of this vector, so j will be sent to each value 1 through 10 in succession, and this sequence of values will be printed. Note that each time through the loop, the value of n is decreased by 1; the final value of n will be 0. Even though the value of n is changed in the loop, the number of iterations through the loop is not affected, because the vector of integers is computed once before the loop is executed and does not depend on subsequent values of n.
count = 0;
for d = 1:7
for h = 1:24
for m = 1:60
for s = 1:60
count = count + 1;
end
end
end
end
count
What is a simpler way to achieve the same results?
d loop will be executed seven times. In each iteration of the d loop, the h loop will be executed 24 times. In each iteration of the h loop, the m loop will be executed 60 times. In each iteration of the m loop, the s loop will be executed 60 times. So the variable count will be incremented
7*24*60*60
Figure 1:
Sides of a right triangle.
|
| 1 | 1 |
| 1 | 2 |
| 2 | 3 |
| 4 | 1 |
| 2 | 2 |
a=[1 1 2 4 2]
b=[1 2 3 1 2]
for j=1:5
c=sqrt(a(j)^2+b(j)^2)
end
A solution that does not use a for loop was also created by Heidi:
a=[1 1 2 4 2] b=[1 2 3 1 2] c=sqrt(a.^2+b.^2)
"This course provides a brief introduction to LabVIEW MathScript, the textual math componenet of LabVIEW. The modules for this course include typical syntax and programming methods commonly used […]"