What is wrong with my code ?

function coded = caesar(a,b);
x = length(a);
y = double(a);
for i = 1:x
y(i) = y(i) + b;
if y(i) > 126;
j = y(i)- 126;
y(i) = 31+j;
elseif y(i) < 32;
j = y(i) - 32;
y(i) = 127+j;
end
coded(i) =char(y(i));
end
end

1 件のコメント

Walter Roberson
Walter Roberson 2020 年 4 月 7 日
What error do you observe?
It does feel a bit odd that newline (character position 10) is mapped to 'i' (lower-case I) when b is 0, but without specifications, we do not know that it is wrong.
Note that your function can emit characters beyond ~ if your input is ß (223) or beyond

サインインしてコメントする。

回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeProgramming についてさらに検索

製品

リリース

R2016a

質問済み:

2020 年 4 月 7 日

コメント済み:

2020 年 4 月 7 日

Community Treasure Hunt

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

Start Hunting!

Translated by