31
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
this post was submitted on 16 Dec 2023
31 points (97.0% liked)
Programming
17314 readers
46 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
founded 1 year ago
MODERATORS
So you're drawing a triangle of
#
that starts skinny in the top left and grows to the right with a height and width ofn
?As an example, Height 3 would be:
I'm not following your questions, but the code seems pretty reasonable... though the use of recursion feels pretty unnecessary when you could easily just use a nested for loop.
It's supposed to be a pyramid but not my code. It's an example of a recursive function from a CS50 lecture and I'm just trying to understand how the code works line by line.
So is my example of Height 3 in line with your expectations?
Yep
I wrote an equivalent version just using nested loops - reading it might help you understand why the recursion works the way it does.
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.
The code below the
draw(n - 1)
isn't recursive... the call todraw(n - 1)
is the recursion.Sometimes, it can be helpful to invert recursion. Think about what draw(0) would be and write it down... then compute draw(1) using the value you previously computed for draw(0).