0
[SOLVED] I don't know what is wrong with it. What is the problem?
It works when all letters in the inputted string are lowercase but when I input a string with an uppercase letter it does not work. I even tried to use the downcase method but it still causes an error. Input - abc Input - Abc Output - [1, 2, 3] Output - Error https://code.sololearn.com/cb71hiiODPta/?ref=app
2 Respostas
+ 4
This is because you are calling .index() on an array which only contains letters from lowercase 'a' till lowercase 'z', that is, the array does not have uppercase letters. Passing a letter to arrayofnums.index() that is not present in arrayofnums (like an uppercase letter) will return `nil`. When you use the + operator on nil, it gives error.
`word.downcase` does not work for you because the `String.downcase` method does NOT make changes to the original string, it instead *returns the downcased string*. Change the line 4 to
`word = word.downcase`
OR
`word.downcase!`
+ 1
XXX Thank you mate. It has been fixed. 😊👍
I also understand what the problem was as a bonus. Thanks!