### Exercise 1

What will the following code print?

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

#### Solution

' 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

' 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

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

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

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

' 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

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

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

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

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

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

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