Skip to content Skip to navigation

Connexions

You are here: Home » Content » Programming with M-Files: If-Statement Drill Exercises

Navigation

Content Actions

  • Download module PDF
  • Add to ...
    Add the module to:
    • My Favorites
    • A lens
    • An external social bookmarking service
    • My Favorites (What is 'My Favorites'?)
      'My Favorites' is a special kind of lens which you can use to bookmark modules and collections directly in Connexions. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need a Connexions account to use 'My Favorites'.
    • A lens (What is a lens?)

      Definition of a lens

      Lenses

      A lens is a custom view of Connexions content. You can think of it as a fancy kind of list that will let you see Connexions through the eyes of organizations and people you trust.

      What is in a lens?

      Lens makers point to Connexions materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

      Who can create a lens?

      Any individual Connexions member, a community, or a respected organization.

    • External bookmarks
  • E-mail the author

Recently Viewed

This feature requires Javascript to be enabled.

Programming with M-Files: If-Statement Drill Exercises

Module by: Darryl Morrell

Summary: This module provides several simple exercises designed to test and increase your understanding of if statements in m-file scripts.

Some If Statement Exercises

Exercise 1

What will the following code print?


a = 10;
if a ~= 0
    disp('a is not equal to 0')
end

Solution 1

' a is not equal to 0'

Exercise 2

What will the following code print?


a = 10;
if a > 0
    disp('a is positive')
else
    disp('a is not positive')
end

Solution 2

' a is positive'

Exercise 3

What will the following code print?


a = 5;
b = 3;
c = 2;
if a < b*c
    disp('Hello world')
else
    disp('Goodbye world')
end

Solution 3

b*c gives a value of 6, and 5 < 6, so this code will print 'Hello world'.

Exercise 4

Suppose the code in Exercise 2 is modified by adding parentheses around a > 0. What will it print?


a = 10;
if (a > 0)
    disp('a is positive')
else
    disp('a is not positive')
end

Solution 4

The parentheses around the relational expression a > 0 will not change its validity, so this code will print 'a is positive'.

Exercise 5

Suppose the code in Exercise 3 is modified by adding the parentheses shown below. What will it print?


a = 5;
b = 3;
c = 2;
if (a < b)*c
    disp('Hello world')
else
    disp('Goodbye world')
end

Solution 5

The parentheses in this expression change its meaning completely. First, a < b is evaluated, and since it is false for the given values of a and b, it evaluates to zero. The zero is than multiplied by c, giving a value of zero which is interpreted as false. So this code prints 'Goodbye world'.

Exercise 6

What will the following code print?


p1 = 3.14;
p2 = 3.14159;
if p1 == p2
    disp('p1 and p2 are equal')
else
    disp('p1 and p2 are not equal')
end

Solution 6

' p1 and p2 are not equal'

Exercise 7

What will the following code print?


a = 5;
b = 10;
if a = b
    disp('a and b are equal')
else
    disp('a and b are not equal')
end

Solution 7

This code will generate an error message, since a = b assigns the value of b to a. To check if a and b are equal, use a == b.

Exercise 8

For what values of the variable a will the following MATLAB code print 'Hello world'?


if ~ a == 0
    disp('Hello world')
else
    disp('Goodbye world')
end

Solution 8

Any value that is not zero.

Exercise 9

For what values of the variable a will the following code print 'Hello world'?


if a >= 0 && a < 7
    disp('Hello world')
else
    disp('Goodbye world')
end

Solution 9

Any value greater than or equal to 0 and less than 7.

Exercise 10

For what values of the variable a will the following code print 'Hello world'?


if a < 3 || a > 10
    disp('Hello world')
else
    disp('Goodbye world')
end

Solution 10

Any value less than 3 or greater than 10.

Exercise 11

For what values of the variable a will the following code print 'Hello world'?


if a < 7 || a >= 3
    disp('Hello world')
else
    disp('Goodbye world')
end

Solution 11

Every value of a will print 'Hello world'.

Exercise 12

Write an if statement that will print 'a is very close to zero' if the value of the variable a is between -0.01 and 0.01.

Solution 12


        
if a >= -0.01 && a <= 0.01
    disp('a is very close to zero')
end

Comments, questions, feedback, criticisms?

Send feedback