By eight
This commit is contained in:
		
							parent
							
								
									715ae7bf4c
								
							
						
					
					
						commit
						cddde3aa52
					
				
					 3 changed files with 35 additions and 5 deletions
				
			
		
							
								
								
									
										16
									
								
								main.py
									
										
									
									
									
								
							
							
						
						
									
										16
									
								
								main.py
									
										
									
									
									
								
							|  | @ -7,11 +7,11 @@ def divide_by_two(num): # Take last digit, divide by two only on that | |||
| def divide_by_three(num): # Sum each digit in number, then checking that sum is divisible by three | ||||
|     return _sum_digits(num) % 3 == 0 | ||||
| 
 | ||||
| def divide_by_four(num): # If last two digits are divisible by four | ||||
|     if (num < 10): return num % 4 == 0 | ||||
|     tens_place = _get_last_digit(num, 2) | ||||
| def divide_by_four(num): # If last two digits are divisible by four, plus a simplifier of multiplying the tens place by two | ||||
|     if (num <= 10): return num % 4 == 0 | ||||
|     tens_place = _get_last_digit(num, 2) * 10 | ||||
|     ones_place = _get_last_digit(num) | ||||
|     num_to_check = (tens_place * 10) + ones_place | ||||
|     num_to_check = (tens_place * 2) + ones_place | ||||
|     return num_to_check % 4 == 0 | ||||
| 
 | ||||
| def divide_by_five(num): # If last digit is a zero or a five return true | ||||
|  | @ -22,6 +22,14 @@ def divide_by_six(num): # Same rules as dividing by three, and ensure original n | |||
|     num_sum = _sum_digits(num) | ||||
|     return num_sum % 3 == 0 and divide_by_two(num) | ||||
| 
 | ||||
| def divide_by_eight(num): # Same rules as dividing by four, but for last three digits | ||||
|     if (num <= 100): return num % 8 == 0 | ||||
|     hundreds_place = _get_last_digit(num, 3) * 100 | ||||
|     tens_place = _get_last_digit(num, 2) * 10 | ||||
|     ones_place = _get_last_digit(num) | ||||
|     num_to_check = (hundreds_place * 4) + (tens_place * 2) + ones_place | ||||
|     return num_to_check % 8 == 0 | ||||
| 
 | ||||
| def divide_by_nine(num): # Same rules as dividing by three, but checking that sum is divisible by nine | ||||
|     return _sum_digits(num) % 9 == 0 | ||||
| 
 | ||||
|  |  | |||
							
								
								
									
										22
									
								
								tests/eight_test.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								tests/eight_test.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,22 @@ | |||
| from main import divide_by_eight | ||||
| import unittest | ||||
| 
 | ||||
| class TestDivideByEight(unittest.TestCase): | ||||
|     def test_by_1(self): | ||||
|         self.assertFalse(divide_by_eight(1)) | ||||
|     def test_by_2(self): | ||||
|         self.assertFalse(divide_by_eight(2)) | ||||
|     def test_by_4(self): | ||||
|         self.assertFalse(divide_by_eight(4)) | ||||
|     def test_by_8(self): | ||||
|         self.assertTrue(divide_by_eight(8)) | ||||
|     def test_by_10(self): | ||||
|         self.assertFalse(divide_by_eight(10)) | ||||
|     def test_by_16(self): | ||||
|         self.assertTrue(divide_by_eight(16)) | ||||
|     def test_by_100(self): | ||||
|         self.assertFalse(divide_by_eight(100)) | ||||
|     def test_by_800(self): | ||||
|         self.assertTrue(divide_by_eight(800)) | ||||
|     def test_by_362880(self): | ||||
|         self.assertTrue(divide_by_eight(362880)) | ||||
|  | @ -1,7 +1,7 @@ | |||
| from main import divide_by_four | ||||
| import unittest | ||||
| 
 | ||||
| class TestDivideByTwo(unittest.TestCase): | ||||
| class TestDivideByFour(unittest.TestCase): | ||||
|     def test_by_1(self): | ||||
|         self.assertFalse(divide_by_four(1)) | ||||
|     def test_by_2(self): | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Ava Gaiety Wroten
						Ava Gaiety Wroten