I have a string S='010101' I need to take each element from the string and check whether it 1,if it is one then the count is incremented by one in matlab?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Anushka
el 7 de Jul. de 2015
Comentada: Steven Lord
el 7 de Jul. de 2015
I have a string S='010101' I need to take each element from the string and check whether it 1,if it is one then the count is incremented by one in matlab?
I have used the following code,but the value of count is not changing.
St='010101';
count=0;
a=0;
for i=1:6
a=St(i);
if(a==1)
count=count+1;
end
end
3 comentarios
Thorsten
el 7 de Jul. de 2015
Or
sum(double(St) == double('1'))
or
numel(findstr(St, '1'))
Steven Lord
el 7 de Jul. de 2015
Or, with no arithmetic (besides NNZ's counting):
nnz(str == '1')
Respuesta aceptada
Azzi Abdelmalek
el 7 de Jul. de 2015
Editada: Azzi Abdelmalek
el 7 de Jul. de 2015
S='010101'
out=nnz(S-'0')
To correct your for loop
St='010101';
count=0;
a=0;
for i=1:6
a=St(i);
if(a=='1')
count=count+1;
end
end
0 comentarios
Más respuestas (1)
Debarati Banerjee
el 7 de Jul. de 2015
This seems to work:
St='010101';
count=0;
a=0;
for i=1:6
a=St(1,i);
if(str2num(a)==1)
count=count+1;
end
end
Ver también
Categorías
Más información sobre Image Data Workflows en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!