Skip to content

Instantly share code, notes, and snippets.

@pedrogk
Created November 21, 2012 19:14
Show Gist options
  • Save pedrogk/4126992 to your computer and use it in GitHub Desktop.
Save pedrogk/4126992 to your computer and use it in GitHub Desktop.
Código para calcular factores primos bajo filosofía de TDD. Creado por Alfredo Chavez (@alfredochv) y utilizado en el artículo "Test Driven Development: Guia para los no iniciados" publicado en SG #38.
from unittest import main, TestCase
class TestPrimeFactors(TestCase):
def testPrimesOf0to1(self):
self.assertEquals([], factorsOf(0))
self.assertEquals([], factorsOf(1))
def testPrimesOf2to4(self):
self.assertEquals([2], factorsOf(2))
self.assertEquals([3], factorsOf(3))
self.assertEquals([2,2], factorsOf(4))
def factorsOf(n):
result, factor = [], 2
while n > 1:
while n % factor == 0:
result.append(factor)
n /= factor
factor += 1
return result
if __name__ == '__main__':
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment