My boy is in K. Our school has milk for 50c and bottled water for $1. I give him 50c because I want him to have milk. I went in as a volunteer to help with lunch, and the lunch lady says, "You know your son's charges are up to $2.00, dn't you?" The stinker decided he'd rather have the water. For the next week, he got water - from the fountain.
If my kids forgot their lunches a second time in a year, they'd wait til 3:00. We're not talking deprivation here, just a couple hours wait. It is a simple lesson and it is NOT cruel. Natural consequences are the best teachers.