A new necessary and sufficient condition for the existence of an m-th root of a nilpotent matrix in terms of the multiplicities of Jordan blocks is obtained and expressed as a system of linear equations with nonnegative integer entries which is suitable for computer programming. Thus, computation of the Jordan form of the m-th power of a nilpotent matrix is reduced to a single matrix multiplication; conversely, the existence of an m-th root of a nilpotent matrix is reduced to the existence of a nonnegative integer solution to the corresponding system of linear equations. Further, an erroneous result in the literature on the total number of Jordan blocks of a nilpotent matrix having an m-th root is corrected and generalized. Moreover, for a singular matrix having an m-th root with a pair of nilpotent Jordan blocks of sizes s and l, a new m-th root is constructed by replacing that pair by another one of sizes s + i and 1 - i, for special s, l, i. This method applies to solutions of a system of linear equations having a special matrix of coefficients. In addition, for a matrix A over an arbitrary field that is a sum of two commuting matrices, several results for the existence of m-th roots of A(k) are obtained.