Help controlling a solar pump and heater

My dad has asked me to create a device/program that will monitor and control a solar powered water circulation system that goes a little like this:

  1. check the temperature of the water heated by the solar panels
  2. check the temperature of the garage floor and ambient
  3. if the temperature of the water is higher than the floor and ambient turn on a water pump
  4. turn of the pump when the water reaches a temperature where the water will provide no benefit to the temperature of the garage.

Questions:
Will this be possible with an arduino system?
What is the maximum separation between the arduino board and sensors?
How would I go about doing all this physically?

Thanks in advance everyone, and I appreciate your help, sorry in advance for stupid questions I am very inexperienced with the arduino system. Thank you all

Seems pretty straightforward. There are plenty of example of using temperature sensors with Arduino's, and there are plenty of examples of using relays to turn motors on/off. The maximum distance between the sensor and the Arduino depends greatly on the communication protocol and method. People have used Arduino's to receive data from orbiting satellites, after-all.

Thanks for the help wizdum sorry for the silly questions but I am brand new to arduino technology. But do you mind pointing me in the direction of what I would need to do these things?

If the water system isn't pressurized (within reason), you could possibly use something like this:

Just drill a hole in one of the pipes, stick the probe in, and seal with epoxy. You could also put another probe on the return line, so you can see what temperature the water coming back into the heater is.

It says "waterproof", and theres a link to an arduino code example. Since it doesn't give specifics, it might not be be designed to work underwater, but you never know until you try....

Is it practical to run wires all the way from the water reservoir to the garage? If so, a simple wired solution would do. If not, you'd need a wireless solution which implies multiple Arduinos communicating wirelessly. Both options are possible, but of course the first one is much simpler.

I would think about trying to keep things as simple as possible an minimising the distance between components.
Why not just measure the temperature at the reservoir outflow and at the return?
If the return is not several degrees cooler than the outflow there is no point in pumping.
You could use the ambient temperature and the reservoir outflow temperature to decide when to start pumping.

Attaching temperature sensors to the outside of heat conductive pipes will give a good reading.