factorpairs

Generate all pairs of factors N = p*q, p <= q, for positive integer N

Vous suivez désormais cette soumission

I needed a tool that would generate all simple pairs of factors of a positive integer N, where N could be rather large. I also needed this task to be accomplished efficiently. So while I liked the nfactork submission that Matt Fig has posted, I found it to have severe problems with memory for some numbers. Therefore I had to write my own tool for the task that handles the case where exactly two factors are generated.

factorpairs(72)
ans =
1 72
2 36
3 24
4 18
6 12
8 9

The factorpairs function is quite efficient for large N with many factors. It works for any value of N that does not exceed 2^32.

tic
F = factorpairs(factorial(12));
toc

Elapsed time is 0.003767 seconds.

There are 396 distinct pairs of factors generated here.

size(F)
ans =
396 2

Citation pour cette source

John D'Errico (2026). factorpairs (https://fr.mathworks.com/matlabcentral/fileexchange/27113-factorpairs), MATLAB Central File Exchange. Extrait(e) le .

Informations générales

Compatibilité avec les versions de MATLAB

  • Compatible avec toutes les versions

Plateformes compatibles

  • Windows
  • macOS
  • Linux
Version Publié le Notes de version Action
1.0.0.0