Clear Filters
Clear Filters

Info

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

not enough input arguments

2 views (last 30 days)
Puneeth sb
Puneeth sb on 17 Aug 2015
Closed: MATLAB Answer Bot on 20 Aug 2021
Function a=abc(R,G,B)
enc =[2,3,1,1;1,2,3,1;1,1,2,3;3,1,1,2];
enc_gf=gf(enc,8);
R_encrypted=enc_gf*R;
G_encrypted=enc_gf*G;
B_encrypted=enc_gf*B;
R_encrypte=R_encrypted.x;
G_encrypte=G_encrypted.x;
B_encrypte=B_encrypted.x;
a(:,:,1)=R_encrypte;
a(:,:,2)=G_encrypte;
a(:,:,3)=B_encrypte;
  1 Comment
Stephen23
Stephen23 on 17 Aug 2015
@Puneeth sb: this time I formatted your code for you, but in future please do this yourself by selecting the code and clicking the {} Code button that you will find above the textbox.

Answers (1)

Titus Edelhofer
Titus Edelhofer on 17 Aug 2015
Hi Puneeth,
please format the code using the code button. I guess, line 6 is
B_encrypted=enc_gf*B;
which would mean, that you call your function abc with only two input arguments (R and G) and forgot to pass third argument (B).
Titus
  2 Comments
Puneeth sb
Puneeth sb on 17 Aug 2015
Sir before it was working properly. Now how can I make function abc to take all three inputs
Titus Edelhofer
Titus Edelhofer on 17 Aug 2015
Hi,
the problem is not in the function but in the function calling abc. Somewhere you write
X = abc(R, G);
instead of
X = abc(R, G, B);
The easiest is to use the debugger:
dbstop if error
and when the code stops, you'll see the code that calls abc.
Titus

This question is closed.

Community Treasure Hunt

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

Start Hunting!