Calculate vowels consonants spaces numbers in a sentence

10 visualizzazioni (ultimi 30 giorni)
clc
close all
cons=0;
vowels=0;
spaces=0;
num=0;
sp=0;
strg=input('Given string is : ','s');
l=strlength(strg);
for i=1:l
if strg(i)=='a' || strg(i)=='e' || strg(i)=='i' || strg(i)=='o' || strg(i)=='u' strg(i)=='A' || strg(i)=='E' || strg(i)=='I' || strg(i)=='O' || strg(i)=='U'
vowels=vowels+1;
elseif (strg(i)>= 'a' && strg(i)<='z') || (strg(i)>= 'A' && strg(i)<='Z')
cons=cons+1;
elseif strg(i)==' '
spaces=spaces+1;
elseif strg(i)>=0 && strg(i)<=9
num=num+1;
else
sp=sp+1;
end
end
fprintf('Number of vowels=%d',vowels);
fprintf('Number of consonants=%d',cons);
fprintf('Number of spaces=%d',spaces);
fprintf('Number of numbers=%d',num);
This is my code and I am getting an error at line 11 . Can anyone please help me out and check if there are any other errors?

Risposta accettata

Gurpreet Singh
Gurpreet Singh il 30 Giu 2020
Hi Aagam
It is my understanding that you are trying to count the number of vowels, consonants, spaces, and numbers in a given string. However, you're getting the error.
This error is occurring because of line 11. There should be an OR (||) operator in-between " strg(i)=='u' " and " strg(i)=='A' ".
Please refer to the https://in.mathworks.com/help/matlab/logical-operations.html (logical operator) documentation for more information on how to use logical operators.

Più risposte (2)

SC
SC il 30 Giu 2020
in Matlab, array indices start from '1'
please edit (line:10)

Vashist Hegde
Vashist Hegde il 30 Giu 2020

In MATLAB, indexing always starts from 1, change the indexing on line:10 to for i = 1:l

Categorie

Scopri di più su Environment and Settings in Help Center e File Exchange

Prodotti


Release

R2015b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by