1. A method for producing a halftone image from a continuous tone input image, the pixels of which have been digitized as gray scale values, using a printer having the capability to print a set of output pel patterns producing a respective set of discrete gray scale values, comprising the steps of: selecting for printing blocks of pel patterns with gray scale values approximating the gray scale values of the input pixels; determining the error in a first block due to the difference between the gray scale value associated with the block and the gray scale value of the corresponding input pixel; distributing said error in said first block to at least two adjacent blocks; determining the error in one of said adjacent blocks due to the difference between the gray scale value associated with the block and a gray scale value calculated as the sum of the error previously distributed to that block and the gray scale value of the corresponding input pixel; and distributing said error in said one adjacent block to at least two blocks adjacent to it not including said first block; wherein the improvement comprises: using a random number generator to determine the distribution of the error between said adjacent blocks such that a random fraction of said error is distributed to one block and the remainder is distributed to the other block.