# Lecture 6

## Multiple Input Functions

You can define a function to have more than one input. This is the syntax:

function r = func1(x,y)

Remember that the name of the function must match the name of the file (with a .m added at the end). Therefore, no spaces, operators etc. in the name of the function.

### Exercise:

•  Make a function for which the input is x and y and the output is x^y. From the command line, check the following inputs:
• >powerfunc(2,3); powerfunc(3,2);
• x=2; y=3; powerfunc(x,y); powerfunc(y,x)

You can define more than one function inside a function file:

func2.m:

function y = func2(x)

y = helper(x)

function r = helper(q)

r = q^2;

In this way, the functions inside the file are visible to all the other functions in the file. However, only the first can be called from outside the file.

## More on Logic

### Warm Up Exercises:

• x = [1 5 2 8 9 0 1], y = [5 2 2 6 0 0 2].Evaluate and understand the following:
• x>y
• y>x
• x==y
• x<=y
• x|y
• x&y
• x&~y
• ((x>y)|(y>x))
• x<5
• x(y<5)
•  x = [1:10], y = [3 1 5 6 8 2 9 4 7 0]. Evaluate and understand the following:
• (x>3)&(y<5)
• x(x>5)
• x(y>5)
• y(x<=4)
• x( (x<2) | (x>=8) )
• y( (x<2) | (x>=8) )

(remember, all nonzero values are true)

### Exercises:

• For x = [3 15 9 12 -1 0 -12 9 6 1]:
• Set to 0 the positive elements of x.
• Set to 3 the multiples of 3.
• with 0
• without 0
• Multiply by 5 the even elements of x
• Create y from the elements of x that are > 10.
• Set to 0 the elements less than the average.
• Set to the distance from the average the elements greater than the average.

•  Create r and c such that:
( 1 1 1 1 1 )
( 2 2 2 2 2 )
r =  ( 3 3 3 3 3 )     c = r'
( 4 4 4 4 4 )
( 5 5 5 5 5 )

• Using r and c, create
( 1 0 0 0 0 )          ( 1 0 1 0 1 )
( 1 1 0 0 0 )          ( 0 1 0 1 0 )
( 1 1 1 0 0 )   and         ( 1 0 1 0 1 )
( 1 1 1 1 0 )          ( 0 1 0 1 0 )
( 1 1 1 1 1 )          ( 1 0 1 0 1 )

Think about ideas for the final project.

Ideas mentioned in class:

• Chaos
• Logistic equation
• Mandelbrot Set
• Combinatorics
• 8 queens problem
• Dynamics
• Brownian Motion
• Visual Illusion
• Autostereogram
• Interploation
• Use a spline to recreate your name in cursive.