In middle of Petřín hill, there lies small restaurant called Petřínské terasy (this website does not contain much information). You would not go there for low price, but for nice location, where you can see whole Prague centre.
You can select from variety of special meals, starting from some salads and ending with big steaks. I choose second option and I was pleased by the food. It was really good and I was not hungry after eating it :-).
This time I can not report beer quality, as I didn't drink it, but there was good selection of Czech (well Moravian) and Italian wines.
If you're looking for nice place where to go for some special occasion, or just exclusive view on Prague, this restaurant is definitely for you. Prices are not too high, but you can not expect something at this place to be cheap :-).