怎么把MATLAB代码转换成C++代码

 我来答
百度网友10a24bf
2017-04-10 · TA获得超过1.3万个赞
知道大有可为答主
回答量:1.3万
采纳率:95%
帮助的人:2882万
展开全部
基本是按照原程序的逻辑写的,但是matlab报错,说数组index超出范围。。。。
但语法思路就是这个样子
唯一要注意的就是matlab的数组从1开始,c里面a[0]在matlab里是a(1)
祝lz好运

%main
for i=1:8
disp(['Please input the digit corresponding to ',num2str(i/4),', ',num2str((i-(i/4)*4)/2),', ',num2str(i-(i/4)*4-((i-(i/4)*4)/2)*2)]);
rule(i)=input('input: ');
end
a=zeros(1,100);
a(50)=1;
for i=1:100
disp(a(i));
end
ch=1;
for j=1:100
if (ch==1)
for i=1:100
if (i==1)
b(i)=rule(a(100)*4+a(1)*2+a(2)+1);
disp(num2str(b(i)));
elseif (i==100)
b(i)=rule(a(99)*4+a(100)*2+a(1)+1);
disp(num2str(b(i)));
else
b(i)=rule(a(i-1)*4+a(i)*2+a(i+1)+1);
disp(num2str(b(i)));
end
end
ch=~ch;
disp(' ');
else
for i=1:100
if (i==1)
a(i)=rule(b(100)*4+b(1)*2+b(2)+1);
disp(num2str(a(i)));
elseif (i==100)
a(i)=rule(b(99)*4+b(100)*2+b(1)+1);
disp(num2str(a(i)));
else
a(i)=rule(b(i-1)*4+b(i)*2+b(i+1)+1);
disp(num2str(a(i)));
end
end
ch=~ch;
disp(' ');
end
end
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式