It took me a long time to find a programing puzzle at the right level for 5th grade. Many things that might seem simple are too complex.
Making the Roman numeral converter they learn about indexes and lists, place value, and modular division.
It's really math, and logic. Working out how to present the question made *me* smarter since I had to think about the problem in a new way that avoided aspects of coding that were ... technical without really teaching much.