永发信息网

如何让matlab 忽略错误运行

答案:5  悬赏:80  手机版
解决时间 2021-02-02 05:50
请教各路高手:我在MATLAB中导入了一个矩阵后,提示:??? Index exceeds matrix dimensions.
我知道这是超出了MatLAB矩阵最大维数的意思。虽然矩阵无法再矩阵变量中显示,但庆幸的是,所有数据已在该变量中正确存储,这时,我想问:如何使得MATLAB忽略掉M文件中的上述错误,从而使得后面的程序得以正常运行?
下面是我的问题程序:
K=0;
while ~feof(fr)
K
ch=fgetl(fr);
col1=abs(ch(1:32));
col2=str2num(ch(34:38));
col5=str2num(ch(48:55))
col6=abs(ch(57));
col5
col2(1)
col7=abs(ch(59:90))
for i=1:32
fprintf(fw1,'%d ',col1(i));
end
for i=1:32
fprintf(fw1,'%d ',col7(i));
end
fprintf(fw1,'%d %d %d\n',col6,col2,col5);
statsu=fseek(fr,0,0);%loacate the pointer on the next line
K=K+1;
end
循环执行结束后(K=11),他就会提示:
??? Index exceeds matrix dimensions.
Error in ==> test_digit2 at 15
col5=str2num(ch(48:55));
我就不明白了,问题出在哪里?
---------------------------
我用length(ch)=55
最佳答案
你好,既然你只是要让程序强行运行,你做一个if 如果k == 11就把k强行变成10。或者还有什么其他函数超出了最大值,都把这个强行改成小一点的。
全部回答
try{} catch{} 语句
这样肯定不行
最好避免出现这种情况,实在不行的话试试try,它会在程序出错时跳出继续后面的语句。 ———————————————————————————————— 是不是ch此时根本就没有55个元素,所以就取不到了,就出错了。 ———————————————————————————————— 你会调试吗,一步步运行,看问题究竟出在哪。这个只能你自己干了。
你好,既然你只是要让程序强行运行,你做一个if 如果k == 11就把k强行变成10。或者还有什么其他函数超出了最大值,都把这个强行改成小一点的。 希望对你有所帮助,望采纳。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
奔驰4141货车加防冻液多少升
现金流量中的现金不包括( )。A.活期存款B.三
数字推理2,2,8,-1,-2,5,1,1,2,-1,1,( )
中国第一部武侠小说是?
qq不能运行卸载后是不是原来数据会清除
多选:在本段咨询中,心理咨询师出现的错误包
急急急珍珠鱼身上烂了怎么办? 我买的珍珠鱼本
从前有一位母亲生了二个儿子,儿子长大了,母
依据《规划环境影响评价技术导则总纲》(HJ13
解签 妈祖签 几年宦海苦淹财 欲进前程未有谐
漂白液倒到马桶冒烟有毒吗
信用卡每期还款最低还款额要还百分之几?
多痰是怎么回事?
杨洋星盘
红河州开远市有小米手机体验店吗?(专卖店)
推荐资讯
针灸减肥必须要封针吗
逻辑与计算的区别是什么
有关函数,只求第3问的详细解题思路C点坐标(2,
各位大神,车辆提档快递单丢失怎么办啊?
本人想在淘宝网上把家乡的压榨油菜籽油带出小
【千分考】求解方法复旦大学千分考数学题当a
人死前有什么症状?自残的人会感觉到痛吗?
永恒之塔为什么我一进游戏画面就自动向右旋转
网络电视能够接受天线的信号看电视么?还是只
图所示是某班同学研究声现象时所做的三个实验
晋字的读音是什么
襄樊治胃病去哪里比较好?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?