>> (x[i]+ x[i])/2 > 1
What are you trying to do with the greater than sign there? Isn't (x[i]+ x[i])/2 always x[i]?

>> outpt << outputx[i] << outputy[i] << outputz[i]<< endl;
This will run the numbers together in the output file. Is that what you want?

>> delete outputx, outputy, outputz;
That's not the proper syntax. You have to delete each array separately, and you have to use delete [] instead of delete (For future reference, you should use vectors in C++ instead of dynamic C-style arrays for this purpose).

It looks like you are calling digfilter correctly, and your output to cout looks fine (although perhaps you could use a newline in there somewhere).