Translation:What did you do last weekend?
It is to show past tense. It also can show a change of state in present tense, but in this sentence it turns 'do' into 'did do'
When you put le after an action it becomes perfect aspect or past tense so it is correct. For example 吃 is eat, and 吃了 can be either used as ate or eaten.
Why do you put 了 after 做 here but in the previous example you don't put 了 after 在? It is obvious from saying last weekend (上个周末) that this is a completed action in the past, so why is 了 required here but not after 在?
If you were to use a word that uses a different measure word than 个, would you put that measure word after 上 instead?
Do you mean, say, "last book"? It would be OK to say "上一本书."
"上本书," however, sounds a bit weird.
"What did you do on the weekend" implies the last weekend, but I got it marked wrong.
where is "last" in the chinese sentence, and why is "what did you do at the weekend" wrong?
Not past tense, but perfect aspect. I myself think that when to use "了" can be a profound "art" for foreigners so please ask experts for details :p
It's not correct english, it would make sense if you changed it to What did you do last weekend?