if statementsfprintf: the formatted printing functionfunction if-end fprintf argument return value function definition function declaration function body
The simplest way to define you own function in Matlab is to write it in a text file whose filename matches the function name, with a '.m.' suffix. For example, we can define a faren2celsius function by creating a text file faren2celsius.m with the following contents
function tempC = faren2celsius(tempF) % convert celsius temperature to farenheit % input argument tempC % output value tempF tempC = 5/9*(tempF-32); end
Note the following:
function and ends with end.  faren2celsius will take one argument (or input variable) tempF and produce one return value (or output variable) tempC. help faren2celsius.end. Here the function body is a single line of code that calculates tempC from tempF.
That was an exceedingly simple function. Let's write the inverse function celsius2faren with a few more bells and whistles. Specifically, let's print a warning message if the input temperature is below absolute zero, -273.15 C. 
function tempF = celsius2faren(tempC) % convert temperature in Celsius to Farenheit if tempC < -273.15 fprintf('%d C is below -273.15, i.e. absolute zero', tempC); end tempF = 9/5*tempC + 32; end
This code includes an if statement that checks for temperatures below absolute zero. If the condition of the if statement evaluates to true, then the body of the if statement will be executed. If it evaluates to false, the body will be skipped, and execution will resume immediately after the end. Thus here the warning message will be printed only if tempC is less than -273.15. 
The warning message is printed using the formatted print function fprintf. fprintf takes a variable number of arguments. The first argument is always the format string. The format string is simply a message to be printed with a number of slots into which values of variables will be substituted. The slots are marked with percent signs %, and following the percents signs is a letter code that tells Matlab what type of variable to expect for the slot. Here %d tells Matlab to expect a decimal-valued variable (i.e. a floating-point number). After the format string, the remaining arguments to fprintf are the variables whose values you want substituted into those slots.