converting string code into numbers?
Información
La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.
Mostrar comentarios más antiguos
Write a function m-file called stringcode that takes a string as input and produces an array containing a code for each letter in the string with A = 0, B = 1, ..., Z = 25 and all other characters getting the value 26
Hints
- Convert the string to all upper case (using the command upper).
- Convert the string to an array of ascii codes (use double).
- Loop through the array and change the codes to the right values. Look up the codes for ’A’ and ’Z’.
here is my code
function num = stringcode( word )
asc = double(upper(word))
if asc >= 33 & asc <=47 & asc < 0
asc = 26
else asc = double(upper(word))
end
% simple arithmetic
num = asc - double('A')
end
I cant get the special characters to come up as the number 26
4 comentarios
Walter Roberson
el 26 de En. de 2020
Your input is a vector. asc is a vector. Your if is testing a vector. When you test a vector in if then it is only true if every value is true (non-zero).
Also there are no values that are both in the range 33 to 47 and less than 0 simultaneously.
Mohammad Sami
el 28 de En. de 2020
Editada: Mohammad Sami
el 28 de En. de 2020
Why don't you do this
num = double(upper(asc)- 'A') ;
num(num <0 || num > 25) = 26;
Walter Roberson
el 28 de En. de 2020
The homework requires that a loop be used.
Rik
el 28 de En. de 2020
Also, you need to use a single pipe character for an array, so that second line doesn't work.
Respuestas (0)
La pregunta está cerrada.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!