I visited Budapest and Vienna earlier this year on river cruise. Euros are widely accepted in Budapest even at public toilets. The only places I found where florints only were accepted was for entry tickets to churches. I haven't been to Prague for a while perhaps someone else can give you up to date advice. You will be visiting three beautiful but very different cities. Have a wonderful time.