Listing 2

UncertainPtr power(UncertainPtr const& v, UncertainPtr const& r) {
   return v * v / r;
}
void print(UncertainPtr const & P) {
   cout
      << "Power=" << value(P)
      << " (" << uncertainty(P) << ") W\n"
      << endl;
}