I take it you have a full list of all hosts on the network, as any tool would not know if its "OFF" or "not assigned", ping or pretty much any networking tool is looking at what is turned ON.
As you are only scanning 10 IPs from your original script
this should be quite a fast check
worth doing manually once or so even if this is a large network its probably worth the time to do a physical check make sure labelling is correct that you have all serial numbers and possibly warranty or support contracts or other licencees.
You can probably find most serial numbers of machines that are on with "dmesg"
If you are going to test the whole network something like 128 or 256 range then ping is going to take quite a long time not sure if that's an issue, nmap will take a much shorter time.
If you do have a work network or a large network then you might want to set up a monitoring tool this will check many different things for you non-stop i.e. something like Nagios Core http://www.nagios.org
or (M)/Monit http://mmonit.com