Thank you for the reply. It seems bitwise operators are somewhat of an advanced concept that I may revisit down the road.
milon
Thanks. I think I understand why I wouldn't want to use it in this case. But what is an example of where I can use it? This makes me think I should avoid using bitwise operators with integers and keep it to strings only, but I know that's not true from what I've learned.
Thank you. Not sure why in the link the arithmetic in green results in 7.
Thank you for breaking it down.
I'm just now sure when it is appropriate to use '|'. If bitwise operators can only be used with integers (and not floats), what's an example where I can use it.
Yes I did eventually think of that as well but just wanted to understand why '|' wasn't producing the results I expected.
I did come across that link but didn't quite understand it. If looking only at 25 | 10, does the code not run as expected because 25 is 5 digits long and 10 is 4 digits long? Is that what's meant by "two equivalent length bit designs"?
Also, I can't tell if 10 | 4 = 7 or 10 | 4 = 14.
Yes - I finally caught that part about n as it's just moving in reverse so it gets decremented. Now I'm not sure about i. In the debugger when the program gets to the for loop both n and i are equal to 1. The n I understand but i?
Gotcha. Thanks for the explanation.
I see. I guess my understanding was that the recursion was over after the recursive call, but it's actually for all the code in draw().
Thanks. I did see that. I have a general understanding of how recursion works I think where the function calls itself again and again but I don't get why the code (for loop) below the draw(n - 1) is recursive.
Right. I was aware it was recursion as stated in the title of my post. I had two questions specific to where the for loop returns after printing #.
Thank you for the thorough explanation. It makes sense to me why I had the error that I did. I'll keep this in mind next time when I consider using a bitwise operator.