This one produces random numbers and verifies that the output is correct. It can also take arguments to test individual values.