For a morphism $f:P^N to P^N$, the points whose forward orbit by $f$ is finite are called preperiodic points for $f$. This article presents an algorithm to effectively determine all the rational preperiodic points for $f$ defined over a given number field $K$. This algorithm is implemented in the open-source software Sage for $Q$. Additionally, the notion of a dynatomic zero-cycle is generalized to preperiodic points. Along with examining their basic properties, these generalized dynatomic cycles are shown to be effective.