Just to add another way of thinking, when I have range tests, I like to use the Contains <T> List method. In your case, this may seem far-fetched, but it will look something like this:
List<int> options = new List<int>(Enumerable.Range(0, 33)); options.Add(99); if(options.Contains(userChoice)){
If you worked in a simple range, this would have looked a lot cleaner:
if(Enumerable.Range(0, 33).Contains(userChoice)){
What is nice is that it works great with testing a number of lines and other types without having to write || again and again.
source share