MATLAB:输入字符在MATLAB语句或表达式中无效

时间:2016-05-09 06:25:53

标签: matlab random pseudocode

我在MATLAB中制作一个Mersenne Generator,我使用的代码如下:

%// Define parameters    
a=65539;    
c=0;    
x0=1;    
m=2^31;

%// Calculate sequence using recursion relation    
xn=zeros(20000,1);

for i=1:20000    
    xn(i)=mod(a*x0+c,m);
    x0=xn(i);    
end

%// Divide by m to give real numbers between 0 and 1    
un=xn/m;

%// Plot 3-tuples of the u_i in 3D space    
plot3(un(1:end-2),un(2:end-1),un(3:end),’b.’);    
xlabel(’u_i’); ylabel(’u_{i+1}’); zlabel(’u_{i+2}’); grid(’on’);

当我在MATLAB中运行它时,它给出了以下错误:

  

plot3(un(1:end-2),un(2:end-1),un(3:end),’b.’);

     

错误:输入字符在MATLAB语句或表达式中无效。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:4)

plot代码末尾的单引号是MATLAB不接受的unicode版本。这可能是因为您复制并粘贴了Microsoft Word或其他文本编辑器中的代码,这些编辑器将单引号转换为那些搞砸的字符。

实际上使用单引号字符:

plot3(un(1:end-2),un(2:end-1),un(3:end),'b.');    
%//                                     ^  ^
xlabel('u_i'); ylabel('u_{i+1}'); zlabel('u_{i+2}'); grid('on');
%//    ^   ^          ^       ^          ^       ^        ^  ^