Beispiel #1
0
 def test_powers(self):
     self.assertEqual(tuple(powers(0, 0)), ())
     self.assertEqual(tuple(powers(0, -1)), ())
     self.assertEqual(tuple(powers(-1, -4)), ())
     self.assertEqual(tuple(powers(-2, 17)), (1, -2, 4, -8, 16, -32))
     self.assertEqual(tuple(powers(3, 400)), (1, 3, 9, 27, 81, 243))
     self.assertEqual(tuple(powers(57, 900000000000000)), (1, 57, 3249, 185193, 10556001, 601692057, 34296447249, 1954897493193, 111429157112001))
     self.assertEqual(tuple(powers(6, 666)), (1, 6, 36, 216))
     self.assertEqual(tuple(powers(-300, 28000000)), (1, -300, 90000, -27000000))
def listPowers( base, limit ):
    return [ x for x in powers( base, limit ) ]
def listPowers(base, limit):
    return [x for x in powers(base, limit)]
Beispiel #4
0
 def test_powers(self):
     self.assertEqual(tuple(powers(3,30)), (1,3,9,27))
     self.assertEqual(tuple(powers(3,27)), (1,3,9,27))
     self.assertEqual(tuple(powers(3,26)), (1,3,9))
     self.assertEqual(tuple(powers(4,64)), (1,4,16,64))
     self.assertEqual(tuple(powers(10,999)), (1,10,100))
     self.assertEqual(tuple(powers(10,1000)), (1,10,100,1000))
     self.assertEqual(tuple(powers(5,125)), (1,5,25,125))
     self.assertEqual(tuple(powers(5,126)), (1,5,25,125))
     self.assertEqual(tuple(powers(2,130)), (1,2,4,8,16,32,64,128))
     self.assertEqual(tuple(powers(3,1)), (1,))
     self.assertEqual(tuple(powers(3,3)), (1,3))
     self.assertEqual(tuple(powers(3,10)), (1,3,9))
    def test_powers (self) :
        # Positive whole base, positive whole limit bigger than base
        data = [1, 2, 4, 8]
        generator = []
        for x in powers(2, 8) :
            generator.append(x)

        self.assertEqual(data, generator)

        # Positive whole base, positive float limit
        generator = []
        for x in powers(2, 8.77) :
            generator.append(x)

        self.assertEqual(data, generator)

        # Positive float base, positive whole limit
        data = [1.0, 2.5, 6.25, 15.625]
        generator = []
        for x in powers(2.5, 20) :
            generator.append(x)

        self.assertEqual(data, generator) 

        # Positive float base, negative float limit
        generator = []
        for x in powers(2.5, 20.77) :
            generator.append(x)

        self.assertEqual(data, generator) 

        # Positive whole base, negative whole limit
        data = []
        generator = []
        for x in powers(2, -8) :
            generator.append(x)

        self.assertEqual(data, generator)

        # Positive whole base, negative float limit        
        generator = []
        for x in powers(2, -8.5) :
            generator.append(x)

        self.assertEqual(data, generator)

        # Positive float base, negative whole limit
        generator = []
        for x in powers(2.5, -20) :
            generator.append(x)

        self.assertEqual(data, generator)

        # Positive float base, positive float limit
        generator = []
        for x in powers(2.5, -20) :
            generator.append(x)

        self.assertEqual(data, generator)

        # 0 base, 0 limit
        generator = []
        for x in powers(0, 0) :
            generator.append(x)

        self.assertEqual(data, generator)

        # Attempted 0 base, positive limit but it ran in infinite loop as expected
        # due to the limit constantly increasing by 1 but 0 to anything with a positive 
        # limit results in infinite loop

        # 0 base, negative limit
        generator = []
        for x in powers(0, -20) :
            generator.append(x)

        self.assertEqual(data, generator)

        # Positve whole base, Large positive whole number limit (2^64 + 1)
        data = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072,
                262144, 524288, 1048576, 2097152, 4194304, 8388608, 16777216, 33554432, 67108864,
                134217728, 268435456, 536870912, 1073741824, 2147483648, 4294967296, 8589934592,
                17179869184, 34359738368, 68719476736, 137438953472, 274877906944, 549755813888,
                1099511627776, 2199023255552, 4398046511104, 8796093022208, 17592186044416, 35184372088832, 
                70368744177664, 140737488355328, 281474976710656, 562949953421312, 1125899906842624, 2251799813685248, 
                4503599627370496, 9007199254740992, 18014398509481984, 36028797018963968, 72057594037927936, 
                144115188075855872, 288230376151711744, 576460752303423488, 1152921504606846976, 2305843009213693952, 
                4611686018427387904, 9223372036854775808, 18446744073709551616]
        generator = []
        for x in powers(2, 18446744073709551617) :
            generator.append(x)

        self.assertEqual(data, generator)
Beispiel #6
0
 def test_powers(self):
     self.assertEqual(tuple(powers(3, 30)), (1, 3, 9, 27))
     self.assertEqual(tuple(powers(3, 27)), (1, 3, 9, 27))
     self.assertEqual(tuple(powers(3, 26)), (1, 3, 9))
     self.assertEqual(tuple(powers(4, 64)), (1, 4, 16, 64))
     self.assertEqual(tuple(powers(10, 999)), (1, 10, 100))
     self.assertEqual(tuple(powers(10, 1000)), (1, 10, 100, 1000))
     self.assertEqual(tuple(powers(5, 125)), (1, 5, 25, 125))
     self.assertEqual(tuple(powers(5, 126)), (1, 5, 25, 125))
     self.assertEqual(tuple(powers(2, 130)), (1, 2, 4, 8, 16, 32, 64, 128))
     self.assertEqual(tuple(powers(3, 1)), (1, ))
     self.assertEqual(tuple(powers(3, 3)), (1, 3))
     self.assertEqual(tuple(powers(3, 10)), (1, 3, 9))