how to write solve this problem in matlab?

Dear members I want to write program in matlab in which it takes a sentence(for example: today is sunday) as an input and gives output such that : it should take first word of first letter(example t), then takes first word of second letter(i) after that takes first word of third word(s) and display it as "tis". then for second iteration tiu, third iteration tin and so on. I hope i am able to explain it properly. Thanks in advance.

2 Commenti

Sounds like homework. Is it?
In the meantime, check out strtok() and this link
LOVLIPREET SINGH
LOVLIPREET SINGH il 24 Giu 2018
Modificato: LOVLIPREET SINGH il 24 Giu 2018
no, this is not at all a homework. I have already graduated from the university. I just started learning MATLAB and trying out different examples to get good at it. i got struck at this problem. would be interesting to know how to tackle this type of problems.

Accedi per commentare.

Risposte (2)

This works:
str = 'today is sunday';
words = regexp(str, ' ', 'split');
minlen = min(cellfun(@numel, words));
for k1 = 1:numel(words)
for k2 = 1:minlen
A(k2,k1) = words{k1}(k2);
end
end
Out = A
Out =
2×3 char array
'tis'
'osu'

2 Commenti

LOVLIPREET SINGH
LOVLIPREET SINGH il 24 Giu 2018
Modificato: LOVLIPREET SINGH il 24 Giu 2018
thanks for replying sir. but this is not the solution i was looking for. I want this output; tis;tiu;tin;tid;tia;tit ois;oiu;oin;oid;oia;oit dis;diu......... ais..... yis..... and so on
Where did the tit come from, and what happened to tiy ?

Accedi per commentare.

[P,Q,R] = ndgrid('today','is','sunday')
[reshape(permute(P,[3 1 2]),[],1),reshape(permute(Q,[1 3 2]),[],1),reshape(permute(R,[3 2 1]),[],1)]
or
[P,Q,R] = ndgrid('sunday', 'today','is');
[Q(:),R(:),P(:)]

Categorie

Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange

Richiesto:

il 24 Giu 2018

Risposto:

il 24 Giu 2018

Community Treasure Hunt

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

Start Hunting!

Translated by