what is the error with my code

1 Ansicht (letzte 30 Tage)
Mostafa Anwar
Mostafa Anwar am 3 Jun. 2021
Bearbeitet: Adam Danz am 8 Jun. 2021
N = 4;
x = [ 3 4 5 6 ];
for k = 0 : N-1
for n=0:N-1
sum = sum + x.*(exp(-1*1i*2*pi*k.*n/N));
end
end
stem(sum)

Antworten (2)

Adam Danz
Adam Danz am 3 Jun. 2021
Bearbeitet: Adam Danz am 8 Jun. 2021
> what is the error with my code
The error is,
N = 4;
x = [ 3 4 5 6 ];
for k = 0 : N-1
for n=0:N-1
sum = sum + x.*(exp(-1*1i*2*pi*k.*n/N));
% ^^^ ERROR
end
end
Error using sum
Not enough input arguments.
stem(sum)
What is causing the error (the question you intended to ask)?
sum() is a very commonly used Matlab function.
You're using it as a variable name but Matlab doesn't know it's a variable name because you haven't declared it as a variable by assiging a value to it.
Solution
Don't use sum as a variable name.

Mahaveer Singh
Mahaveer Singh am 3 Jun. 2021
% give the initial value of sum.
% like sum=0 (initial vlue of sum)
N = 4;
x = [ 3 4 5 6 ];
sum=0;
for k = 0 : N-1
for n=0:N-1
sum = sum + x.*(exp(-1*1i*2*pi*k.*n/N));
end
end
stem(y)
  1 Kommentar
Adam Danz
Adam Danz am 3 Jun. 2021
Bearbeitet: Adam Danz am 3 Jun. 2021
Even if this is within its own function workspace, I advise against using sum as a variable name.
  1. It's a very commonly used Matlab function.
  2. It makes the code more difficult to read because when people see sum they expected it to be the function.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Get Started with DSP System Toolbox finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by