Using fprintf to printing non-vowels in command window

Trying to adjust a previous program to print in the command window all the non-vowels from a inputted text file how do i fprint the code i have to show in the command window all the individual letters that arent vowles.
If text is "I love golf" command window should display like: lv glf
clear all
clc
inputfile = fileread('SampleText.txt');
Number_of_nonvowels = vowellesscounts(inputfile) % original
function w = vowellesscounts(s)
w=0;
l=length(s);
for i=1:l
if s(i)=='b' || s(i)=='c' || s(i)=='d' || s(i)=='f' || s(i)=='g' || s(i)=='h' || s(i)=='j' || s(i)=='k' || s(i)=='l' || s(i)=='m' || s(i)=='n' || s(i)=='p' || s(i)=='q' || s(i)=='r' || s(i)=='s'|| s(i)=='t' || s(i)=='v' || s(i)=='w' || s(i)=='x' || s(i)=='y'|| s(i)=='z'
w=w+1;
else
continue
end
end
end

 Respuesta aceptada

function v = vowellesscounts(s)
v = '';
w=0;
l=length(s);
for i=1:l
if s(i)=='b' || s(i)=='c' || s(i)=='d' || s(i)=='f' || s(i)=='g' || s(i)=='h' || s(i)=='j' || s(i)=='k' || s(i)=='l' || s(i)=='m' || s(i)=='n' || s(i)=='p' || s(i)=='q' || s(i)=='r' || s(i)=='s'|| s(i)=='t' || s(i)=='v' || s(i)=='w' || s(i)=='x' || s(i)=='y'|| s(i)=='z'
w=w+1;
v(w) = s(i);
else
continue
end
end
end

8 comentarios

Note: your code does not achieve the documented purpose. Characters such as '$' are non-vowels, but they are not taken into account. Also, you are not taking into account upper-case characters.
Hint:
ismember('Now is the timing', 'Nni')
ans = 1×17 logical array
1 0 0 0 1 0 0 0 0 0 0 0 1 0 1 1 0
Hi @Walter Roberson, thanks for the resposne but i'm relatively new to matlab so not reallly sure what you are hinting at besides the upper case letters.
i still dont understand how to use the fprintf function to display each individual non vowel in the command window
Hint: displaying only the event numbers in a certain range
A = [2 7 3 8 7 6]
A = 1×6
2 7 3 8 7 6
B = 2:2:10
B = 1×5
2 4 6 8 10
mask = ismember(A,B)
mask = 1×6 logical array
1 0 0 1 0 1
A(mask)
ans = 1×3
2 8 6
thanks @Walter Roberson, sorry i get what you mean now, replace the matrix values with letters?
can you help me with fprintf at all?
result = A(mask);
fprintf('Yadda yadda, you wanted to know: %s\n', result)
@Walter Roberson i still cant get the fprintf working to display it how i explained in the question
inputfile = 'I love golf';
Number_of_nonvowels = vowellesscounts(inputfile); % original
fprintf('Edit this to say whatever you want: %s\n', Number_of_nonvowels);
Edit this to say whatever you want: lvglf
function v = vowellesscounts(s)
v = '';
w=0;
l=length(s);
for i=1:l
if s(i)=='b' || s(i)=='c' || s(i)=='d' || s(i)=='f' || s(i)=='g' || s(i)=='h' || s(i)=='j' || s(i)=='k' || s(i)=='l' || s(i)=='m' || s(i)=='n' || s(i)=='p' || s(i)=='q' || s(i)=='r' || s(i)=='s'|| s(i)=='t' || s(i)=='v' || s(i)=='w' || s(i)=='x' || s(i)=='y'|| s(i)=='z'
w=w+1;
v(w) = s(i);
else
continue
end
end
end
thanks alot, i was missing the 'number_of_nonvowel'
very much appreciated @Walter Roberson

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Characters and Strings en Centro de ayuda y File Exchange.

Productos

Versión

R2021a

Etiquetas

Preguntada:

el 5 de Sept. de 2021

Comentada:

el 5 de Sept. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by