feat: add is_composite

This commit is contained in:
rzmk 2023-09-22 11:02:50 -04:00
parent d2dc769864
commit 1ad53495e8
No known key found for this signature in database
2 changed files with 83 additions and 3 deletions

View file

@ -200,6 +200,15 @@
"assert get_multiples_in_range(5, 50) == {5, 10, 15, 20, 25, 30, 35, 40, 45, 50}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Prime and composite numbers\n",
"\n",
"> [Link to lesson](https://www.khanacademy.org/math/pre-algebra/pre-algebra-factors-multiples/pre-algebra-prime-numbers/v/prime-numbers)."
]
},
{
"cell_type": "markdown",
"metadata": {},
@ -215,7 +224,7 @@
},
{
"cell_type": "code",
"execution_count": 13,
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
@ -230,10 +239,46 @@
"assert is_prime(2) == True\n",
"assert is_prime(3) == True\n",
"assert is_prime(4) == False\n",
"assert is_prime(7) == True\n",
"assert is_prime(24) == False\n",
"assert is_prime(59) == True\n",
"assert is_prime(72) == False"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Write a program that determines whether a positive integer `n` is composite.**\n",
"\n",
"For example for `n = 7`, the output of `is_composite(7)` may be:\n",
"\n",
"```\n",
"False\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"def is_composite(n: int) -> bool:\n",
" for num in range(1, n):\n",
" if n % num == 0 and num != 1 and num != n:\n",
" return True\n",
" return False\n",
"\n",
"assert is_composite(1) == False\n",
"assert is_composite(2) == False\n",
"assert is_composite(3) == False\n",
"assert is_composite(4) == True\n",
"assert is_composite(7) == False\n",
"assert is_composite(24) == True\n",
"assert is_composite(59) == False\n",
"assert is_composite(72) == True"
]
}
],
"metadata": {