In this paper, we solve the optimal thermostat programming problem for consumers with combined demand ($/kW) and time-of-use ($/kWh) pricing plans. We account for energy storage in interior floors and surfaces by using a partial-differential model of diffusion. We consider two types of thermostats: the first can be programmed to vary continuously in time and the second is limited to four constant set-points. Thermostat settings were constrained to lie within a desired interval. Numerical testing shows that the resulting algorithm can reduce monthly electricity bills by up to 25% in the summer with average savings of 9.2% over a variety of building models by using prices from Arizona utility Salt River Project. Furthermore, we examine how optimal thermostat programming affects optimal electricity pricing by using a simplified model of utility generation costs to determine the optimal ratio of demand to time-of-use prices. Our results show that pricing electricity at the marginal cost of generation in this scenario is suboptimal.