Download presentation
Presentation is loading. Please wait.
Published byArabella Chase Modified over 9 years ago
1
Lab17 DUE NOW Deliverable 2 Quizzes continue next Lab. on Functions. 1
2
QUIZ TIME! Close all notes and MATLAB. Blackboard, under 2.Labs/HW/Solutions Lab17_QuizFunctions (5 minutes - timed) password required 1 attempt 2
3
Functions! 1.Remember it’s a completely separate.m file. 2.You’ll need an actual script file (other file) to make it fully operational. You should of course test in the cwd (Command Window) first. 3.The main script file communicates to the definition files through what is called the “function call” (which is 1 line of code). What is crucial is the order of the return-values and arguments. 4.What does “collecting return values” mean? 3
4
THE ORDER MATTERS When calling a function (whether built-in or programmer-defined): The order matters on the argument list (the right side) a.fprintf(age, ‘name: %s age: %d\n’, name); b.fprintf(‘name: %s age: %d\n’, name, age); c.fprintf(‘name: %s age: %d\n’, age, name); d.fprintf(age, name, ‘name: %s age: %d\n’); The order matters when “collecting return-values” (the left side) a.[x y z] = xlsread(‘data.xlsx’, ‘Sheet1’); b.[raw, txt, nbs] = xlsread(‘data.xlsx’, ‘Sheet1’); c.[nbs, txt, raw] = xlsread(‘data.xlsx’, ‘Sheet1’); d.[txt, ~, nbs] = xlsread(‘data.xlsx’, ‘Sheet1’); 4 NEW SLIDE
5
MATLAB can help you start.. File> New> Function This is THE MOST GENERALIZED form SIMPLIFY IT – some things are useless – delete the [ ] when there is only 1 return value – NEVER INCLUDE THE end keyword (no matter who tells you to) This would be way out of “introduction to programming”, let the file end peacefully when there is no more lines of code! 5 ✗ ✗ ✗
6
Some examples from last semester’s projects 6 example with no parameters
7
examples, cont. 7 example with no return-info
8
examples, cont. 8 PS: improve comments…! both return-values & parameters
9
Remember GUIDE? 9 The figure drawn, with all buttons and boxes (etc..) generates a function file. Here is my main script file, 7 lines. Note: returning values from a GUIDE function file requires a bit of research…
10
Try it #1: 5 minutes Translate this to a function. Show you tested: Create a function which receives 1 argument (weight of a satellite) and calculates and returns the weight of the final payload. (All units are Newtons). The client also gives the following data: Create a script file to see if the new keyword works! 10 Weight of Payload = W_structure + W_telemetry + W_power + W_guidance Where: W_structure = 2.16 * W_satellite W_telemetry = 0.78 * W_satellite W_power = 1.24 * W_satellite W_guidance = 1.21 * W_satellite both problems due at end of class.
11
Try it #2: timeleft/2 minutes The goal for this task is to write a function to shuffle a deck of cards, or more generically to mix up any vector it is given. The basic algorithm for this is as follows: – Select 2 positions at random – Swap the contents of those 2 positions. (Note, swapping requires a third temporary spot to copy one of the two values being swapped). – Repeat this process for a large number of times (generally, looping 20 times the number of items should be sufficient). Your function should accept a single vector as an input argument and return a vector containing all those items randomly rearranged. 11 problem by Dr. Verleger
12
Sample Output Sample Output: >> MyCards = 1:10 MyCards = 1 2 3 4 5 6 7 8 9 10 >> MyShuffledCards = ShuffleDeck( MyCards ) MyShuffledCards = 3 9 8 4 7 6 2 1 5 10 12
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.