how to combine strings that are generated inside a function?
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi, I have this code that must randomly scramble the letters of the string input and return the result as a whole word. However, this returns the letters one by one.
function royalscramble(str)
exchange = randperm(length(str));
for i=1:length(str)
str(exchange(i))
end
end
I tried additions to the code and it worked. Here it is.
function scrambled = royalscramble(str)
exchange = randperm(length(str));
scrambled = '';
for i=1:length(str)
scrambled = str(exchange(i));
end
end
However, the function must not be called like that. I mean, it should not have scrambled =
It should be like this and returns this kind of result:
>> royalscramble('fantastic')
ans =
safntcait
>> royalscramble ('hello')
ans =
hleol
What should I add/replace from my first code? Thanks!
댓글 수: 0
채택된 답변
KSSV
2020년 7월 22일
function scrambled = royalscramble(str)
exchange = randperm(length(str));
scrambled = str(exchange) ;
end
댓글 수: 4
Stephen23
2020년 7월 22일
"but I need a function that doesn't need "scrambled=" to be called... Is that possible?"
It is not required to call a function with an output argument:
But if you want any value returned, you will have to declar an output argument:
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Startup and Shutdown에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!