Problem with calling the function

Task: Write a function allparts that will read in lists of part numbers for parts produced by two factories. These are contained in data files called ‘xyparts.dat’ and ‘qzparts.dat’. The function will return a vector of all parts produced, in sorted order (with no repeats). Calling the function would return the following:
>> partslist = allparts
partslist =
102 111 123 145 333 456 876 903
Here is what I get:
function outv=allparts(xyparts,qzparts)
clc
load xyparts.dat;
load qzparts.dat;
un=union(xyparts,qzparts);
disp('The result of the function:')
disp(sort(un))
end
Please, help to fix the problem!

3 Comments

a) Your function doesn't return anything which is a requirement (the assignment doesn't say "print the results inside the function" does it?)
b) doc union includes the statement ...returns the combined values of the two vectors with no repetitions. C will be sorted.
Perusing the documentation on Set Operations might be worthwhile.
I don't understand why in allparts do not indicate the input arguments:
partslist = allparts %<---???
partslist =
102 111 123 145 333 456 876 903

Sign in to comment.

 Accepted Answer

dpb
dpb on 9 May 2014
...why in allparts do not indicate the input arguments...
Because that's the way the assignment was written--actually I see that I whiffed on that portion of your solution that doesn't match the problem description.
I'd give your solution the better marks for factorization as it is more general but the instructions say to build it specific for the two data files. Your function is also built upon that and there's no need or use for the two arguments as written; the values for the variables are obtained from the load operations and since Matlab doesn't modify arguments in the calling context, they won't be transferred back to the higher level that way. Hence you should just eliminate them from your function definition.
Your code still has the problems I outlined previously that don't match the assignment requirements.

More Answers (0)

Categories

Asked:

on 9 May 2014

Answered:

dpb
on 9 May 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!