- "to go through each element of the string" your for-loop is fine
- "test if it's an 'a' or 'e' then add up each time" your tests don't test what you want them to test
Counting number of certain letters
9 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I'm trying to make a code that will output the number of a's and e's in my name. I have a basic understanding that I need to go through each element of the string and test if it's an 'a' or 'e' then add up each time. What am I doing wrong below?
myname = "jonathan"
A = char(myname)
numA=0;
numE=0;
for i=1:1:length(A)
if i == 'a'
numA = numA+1
end
if i == 'e'
numE = numE+1
end
end
disp('The number of As: ');
disp(numA);
disp('The number of Es: ');
disp(numE);
0 comentarios
Respuestas (2)
per isakson
el 18 de Mzo. de 2018
Editada: per isakson
el 18 de Mzo. de 2018
"What am I doing wrong below?"
The loop-counter, i, takes the numerical values 1,2,3,... You test whether this numerical value is equal to a character value. That smells. However, Matlab "thinks" that you want to compare the numerical value to the "ascii-value" of the character, e.g.
>> 97=='a'
ans =
1
Here 1 stands for true
Replace
i == 'a'
by
A(i) == 'a'
to compare the i:th character of A to the character, 'a'
0 comentarios
Image Analyst
el 18 de Mzo. de 2018
Why not just take the histogram?
myname = 'jonathan'
% Convert to numbers:
myname = lower(myname) - '0' - 48
% Take the histogram.
edges = 1:26;
counts = histcounts(myname, edges)
% counts(1) is the number of "a"s in the word.
% counts(26) is the number of "z"s in the word.
3 comentarios
ABDALHADI ABU ZEYNEH
el 17 de Mayo de 2020
hello
i am a phd student
i am using matlab, i meet a problem
how to find the occurrence of non consecutive letters
for example
the occurence of ab in aabbb=6 i mean that there are for choices to get a before "b"
in acacbbc we can find the word abc four times,i mean that there are for choices to get a before "b" and "b" before "c"
..
Walter Roberson
el 17 de Mayo de 2020
Clearer would be
myname = lower(myname) - 'a' + 1;
Ver también
Categorías
Más información sobre Characters and Strings en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!