Matlab中判断这一行是否有0,请教下MATLAB一个问题啊 我想检测一行数据里面出现连续出现0的次数,...

问题描述:

请教下MATLAB一个问题啊 我想检测一行数据里面出现连续出现0的次数,

请教下MATLAB一个问题啊

我想检测一行数据里面出现连续出现0的次数,例如数据

12 23 0 0 0 0 23 43 0 0 0 123 32 35 22 0 43 43 53 0 0 0 12 43 54 12 32 0 0 0 132

想用Matlab 检测出现了几次连续的0

出现单个的0不算连续的次数

我再请问下哈,如果现在是这样的数据

0 0 1 2 3 4 11 0 0 0 2 3 2 4 0 2 3 1 2 0 0 1 3 0 0

0 0 0 1 3 4 2 3 0 0 1 3 2 0 2 3 2 1 2 2 1 1 1 1 1 0

0 1 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0

0 0 0 1 2 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0

我只想把四周最边上的0保留,但中间的0,我想用1代替,要怎么处理呢?像上例,我要把第二、第三行中间的0有1代替,但二行,三行两端的0我保留.请问怎么处理呢?

1个回答

分类:

综合

2014-11-04

问题解答:

我来补答

先建立如下.m文件;

function n=cishu1(A);%检测连续0函数

m=length(A);

n=0;

j=1;

while =m

if(A(j)==0)

if (A(j+1)==0)

n=n+1;

end

while A(j)==0&&j~=m

j=j+1;

end

elseif(A(j)~=0)

j=j+1;

end

end

函数调用:

A=[12 23 0 0 0 0 23 43 0 0 0 123 32 35 22 0 43 43 53 0 0 0 12 43 54 12 32 0 0 0 132];

n=cishu1(A);

n=4

代码有不懂的 问我

第二问可以这样做

A=[你需要的矩阵];

[m,n]=size(A);

for i=2:m-1;

for j=2:n-1;

if A(i,j)==0;

A(i,j)=14;

end

end

end

展开全文阅读

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值