Input and output arguments let you send information into a function and get results back. This helps you reuse code easily.
Input and output arguments in MATLAB
function [output1, output2, ...] = functionName(input1, input2, ...)
% Your code here
endInput arguments go inside the parentheses after the function name.
Output arguments go inside square brackets before the equals sign.
function result = squareNumber(x)
result = x^2;
endfunction [sumResult, diff] = addAndSubtract(a, b)
sumResult = a + b;
diff = a - b;
endfunction greet()
disp('Hello!')
endThis program defines a function that calculates the area and perimeter of a rectangle given its length and width. Then it calls the function with length 5 and width 3 and prints the results.
function [area, perimeter] = rectangleProperties(length, width)
area = length * width;
perimeter = 2 * (length + width);
end
% Call the function
[l, w] = deal(5, 3);
[a, p] = rectangleProperties(l, w);
fprintf('Area: %d\nPerimeter: %d\n', a, p);You can have zero, one, or many input and output arguments.
Output arguments must be assigned values inside the function to return them.
If you do not specify output arguments, the function will not return any value.
Input arguments let you send data into a function.
Output arguments let you get results back from a function.
Functions help keep your code organized and reusable.
Practice
Solution
Step 1: Understand input arguments
Input arguments are values or data you give to a function so it can use them inside.Step 2: Identify the purpose
The main purpose is to send data into the function for it to work on.Final Answer:
To send data into the function for processing -> Option AQuick Check:
Input arguments = send data in [OK]
- Confusing input arguments with output arguments
- Thinking input arguments display results
- Assuming input arguments create new functions
Solution
Step 1: Recall MATLAB function syntax
The correct syntax starts with 'function', then output, '=', function name, and input in parentheses.Step 2: Match the syntax
function output = myFunc(input) matches this pattern exactly: function output = myFunc(input)Final Answer:
function output = myFunc(input) -> Option AQuick Check:
Syntax = function output = name(input) [OK]
- Placing output after function name without '='
- Missing parentheses around input
- Using '=' incorrectly in function header
function y = squarePlusOne(x)
y = x^2 + 1;
end
result = squarePlusOne(3);Solution
Step 1: Calculate the square of input
Input x is 3, so x^2 = 3^2 = 9.Step 2: Add 1 to the squared value
9 + 1 = 10.Final Answer:
10 -> Option BQuick Check:
3 squared plus 1 = 10 [OK]
- Forgetting to add 1 after squaring
- Using multiplication instead of power
- Confusing output with input
function output = addNumbers(a, b)
output = a + b
endSolution
Step 1: Check MATLAB syntax rules
Each statement should end with a semicolon to suppress output in functions.Step 2: Identify missing semicolon
The line 'output = a + b' lacks a semicolon at the end.Final Answer:
Missing semicolon after output assignment -> Option DQuick Check:
Statements need semicolons [OK]
- Ignoring semicolon causes unwanted output
- Thinking function names must be capitalized
- Using wrong brackets for inputs
Solution
Step 1: Recall syntax for multiple outputs
Multiple outputs are enclosed in square brackets before the '=' sign.Step 2: Match correct syntax
function [sum, product] = calculate(a, b) uses square brackets for outputs and correct order: function [sum, product] = calculate(a, b)Final Answer:
function [sum, product] = calculate(a, b) -> Option CQuick Check:
Multiple outputs use square brackets [OK]
- Omitting square brackets for multiple outputs
- Placing outputs after function name without brackets
- Using '=' incorrectly in function header
Ready to prove it?
Pass the test and this pattern moves unknown
