What changes are needed in the code?
1 回表示 (過去 30 日間)
古いコメントを表示
i want to swaps characters of s as specified by the indices present in the pairs variable. pairs is a 2-column matrix, where on each row, i have given the positions of the two characters that need to swap. eg s = orange & pairs = [1 2]. out expected is roange. what changes you recommend in this code.
function [arr] = shuffletext ( pairs, s)
a = 0;
b = 0;
for i = 1:numel(s)
for j = pairs
s(i) = a;
a = b;
b = s(i);
end
end
arr = b;
Still its not showing any output just a blank if i call the function
using: disp( shuffletext( [1 2], 'orange') )
Output
>> disp( shuffletext( [1 2], 'orange') )
>>
回答 (1 件)
Cris LaPierre
2021 年 11 月 11 日
p = [1 2];
s = 'orange';
s(p) = s(fliplr(p))
6 件のコメント
Cris LaPierre
2021 年 11 月 12 日
編集済み: Cris LaPierre
2021 年 11 月 12 日
I strongly recommend going through MATLAB Onramp. It will help give you an good understanding of the fundamentals of MATLAB.
Again, do don't need the second for loop because you are not using j anywhere.
Also, assignment (equals sign) places what is on the right into what is on the left. So s(i) = a will take the value assigned to a, which is 0, and place it in the ith position of s. This assignment is likely not doing what you expect since s is a character array and a is a double.
a=0;
s='orange';
s(2) = a
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!