Info

This question is closed. Reopen it to edit or answer.

Not enough inputs error

1 view (last 30 days)
Jaesung Lee
Jaesung Lee on 22 Nov 2012
Closed: MATLAB Answer Bot on 20 Aug 2021
here is the code that i have, but when i run it i get this error: Error using card (Line 9) Not enough input arguments.
How can i fix this error?
classdef card < handle
properties
suit;
color;
number;
end
methods
function obj=card(s,c,n)
obj.suit = s;
obj.color = c;
obj.number = n;
end
function obj=getSuit(obj)
fprintf('The suit of the card is %s.\n',obj.suit);
end
function obj=getColor(obj)
fprintf('The color of the card is %s.\n',obj.color);
end
function obj=getNumber(obj)
fprintf('The number of the card is %d.\n',obj.number);
end
end

Answers (1)

Akiva Gordon
Akiva Gordon on 23 Nov 2012
Pressing the "Run" button on this class runs card in the Command Window. This is being called with no inputs, but according to your constructor method, you require 3 inputs, i.e. s, c, & n. Therefore, instead of running
>> card
you need to run something like:
>> fiveOfHearts = card('hearts','color',5)
If you want to run that command when pressing the "Run" button, you should set up a Run Configuration by pressing the little drop-down arrow and editing a configuration. Check out this link:

Community Treasure Hunt

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

Start Hunting!