Skip to content

Commit 39cbb7e

Browse files
committed
Complete Challenge (LinkedInLearning#1)
1 parent 2be3041 commit 39cbb7e

1 file changed

Lines changed: 304 additions & 0 deletions

File tree

Lines changed: 304 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,304 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "markdown",
5+
"id": "3d331168",
6+
"metadata": {},
7+
"source": [
8+
"## Faster Prime Finding\n",
9+
"\n",
10+
"Write a function that returns a list of all primes up to a given number.\n",
11+
"\n",
12+
"For each number, in order to determine if it is prime, take the following steps:\n",
13+
"1. Find the square root of the number\n",
14+
"2. Find all the primes up to that square root\n",
15+
"3. Test to see if any of those primes are divisors \n",
16+
"\n",
17+
"If a number has no prime divisors, it is prime!\n"
18+
]
19+
},
20+
{
21+
"cell_type": "code",
22+
"execution_count": 28,
23+
"id": "37687918",
24+
"metadata": {},
25+
"outputs": [],
26+
"source": [
27+
"def allPrimesUpTo(num):\n",
28+
" primes = [2]\n",
29+
" for number in range(2, num):\n",
30+
" sqrt = int(number ** 0.5)\n",
31+
" for factor in primes:\n",
32+
" if number % factor == 0:\n",
33+
" break\n",
34+
" else:\n",
35+
" if factor > sqrt:\n",
36+
" primes.append(number)\n",
37+
" \n",
38+
" return primes"
39+
]
40+
},
41+
{
42+
"cell_type": "code",
43+
"execution_count": 29,
44+
"id": "76e6a11b",
45+
"metadata": {},
46+
"outputs": [
47+
{
48+
"data": {
49+
"text/plain": [
50+
"[2,\n",
51+
" 3,\n",
52+
" 5,\n",
53+
" 7,\n",
54+
" 11,\n",
55+
" 13,\n",
56+
" 17,\n",
57+
" 19,\n",
58+
" 23,\n",
59+
" 29,\n",
60+
" 31,\n",
61+
" 37,\n",
62+
" 41,\n",
63+
" 43,\n",
64+
" 47,\n",
65+
" 53,\n",
66+
" 59,\n",
67+
" 61,\n",
68+
" 67,\n",
69+
" 71,\n",
70+
" 73,\n",
71+
" 79,\n",
72+
" 83,\n",
73+
" 89,\n",
74+
" 97]"
75+
]
76+
},
77+
"execution_count": 29,
78+
"metadata": {},
79+
"output_type": "execute_result"
80+
}
81+
],
82+
"source": [
83+
"allPrimesUpTo(100)"
84+
]
85+
},
86+
{
87+
"cell_type": "code",
88+
"execution_count": 30,
89+
"id": "53848a3f",
90+
"metadata": {},
91+
"outputs": [
92+
{
93+
"data": {
94+
"text/plain": [
95+
"[2,\n",
96+
" 3,\n",
97+
" 5,\n",
98+
" 7,\n",
99+
" 11,\n",
100+
" 13,\n",
101+
" 17,\n",
102+
" 19,\n",
103+
" 23,\n",
104+
" 29,\n",
105+
" 31,\n",
106+
" 37,\n",
107+
" 41,\n",
108+
" 43,\n",
109+
" 47,\n",
110+
" 53,\n",
111+
" 59,\n",
112+
" 61,\n",
113+
" 67,\n",
114+
" 71,\n",
115+
" 73,\n",
116+
" 79,\n",
117+
" 83,\n",
118+
" 89,\n",
119+
" 97,\n",
120+
" 101,\n",
121+
" 103,\n",
122+
" 107,\n",
123+
" 109,\n",
124+
" 113,\n",
125+
" 127,\n",
126+
" 131,\n",
127+
" 137,\n",
128+
" 139,\n",
129+
" 149,\n",
130+
" 151,\n",
131+
" 157,\n",
132+
" 163,\n",
133+
" 167,\n",
134+
" 173,\n",
135+
" 179,\n",
136+
" 181,\n",
137+
" 191,\n",
138+
" 193,\n",
139+
" 197,\n",
140+
" 199,\n",
141+
" 211,\n",
142+
" 223,\n",
143+
" 227,\n",
144+
" 229,\n",
145+
" 233,\n",
146+
" 239,\n",
147+
" 241,\n",
148+
" 251,\n",
149+
" 257,\n",
150+
" 263,\n",
151+
" 269,\n",
152+
" 271,\n",
153+
" 277,\n",
154+
" 281,\n",
155+
" 283,\n",
156+
" 293,\n",
157+
" 307,\n",
158+
" 311,\n",
159+
" 313,\n",
160+
" 317,\n",
161+
" 331,\n",
162+
" 337,\n",
163+
" 347,\n",
164+
" 349,\n",
165+
" 353,\n",
166+
" 359,\n",
167+
" 367,\n",
168+
" 373,\n",
169+
" 379,\n",
170+
" 383,\n",
171+
" 389,\n",
172+
" 397,\n",
173+
" 401,\n",
174+
" 409,\n",
175+
" 419,\n",
176+
" 421,\n",
177+
" 431,\n",
178+
" 433,\n",
179+
" 439,\n",
180+
" 443,\n",
181+
" 449,\n",
182+
" 457,\n",
183+
" 461,\n",
184+
" 463,\n",
185+
" 467,\n",
186+
" 479,\n",
187+
" 487,\n",
188+
" 491,\n",
189+
" 499,\n",
190+
" 503,\n",
191+
" 509,\n",
192+
" 521,\n",
193+
" 523,\n",
194+
" 541,\n",
195+
" 547,\n",
196+
" 557,\n",
197+
" 563,\n",
198+
" 569,\n",
199+
" 571,\n",
200+
" 577,\n",
201+
" 587,\n",
202+
" 593,\n",
203+
" 599,\n",
204+
" 601,\n",
205+
" 607,\n",
206+
" 613,\n",
207+
" 617,\n",
208+
" 619,\n",
209+
" 631,\n",
210+
" 641,\n",
211+
" 643,\n",
212+
" 647,\n",
213+
" 653,\n",
214+
" 659,\n",
215+
" 661,\n",
216+
" 673,\n",
217+
" 677,\n",
218+
" 683,\n",
219+
" 691,\n",
220+
" 701,\n",
221+
" 709,\n",
222+
" 719,\n",
223+
" 727,\n",
224+
" 733,\n",
225+
" 739,\n",
226+
" 743,\n",
227+
" 751,\n",
228+
" 757,\n",
229+
" 761,\n",
230+
" 769,\n",
231+
" 773,\n",
232+
" 787,\n",
233+
" 797,\n",
234+
" 809,\n",
235+
" 811,\n",
236+
" 821,\n",
237+
" 823,\n",
238+
" 827,\n",
239+
" 829,\n",
240+
" 839,\n",
241+
" 853,\n",
242+
" 857,\n",
243+
" 859,\n",
244+
" 863,\n",
245+
" 877,\n",
246+
" 881,\n",
247+
" 883,\n",
248+
" 887,\n",
249+
" 907,\n",
250+
" 911,\n",
251+
" 919,\n",
252+
" 929,\n",
253+
" 937,\n",
254+
" 941,\n",
255+
" 947,\n",
256+
" 953,\n",
257+
" 967,\n",
258+
" 971,\n",
259+
" 977,\n",
260+
" 983,\n",
261+
" 991,\n",
262+
" 997]"
263+
]
264+
},
265+
"execution_count": 30,
266+
"metadata": {},
267+
"output_type": "execute_result"
268+
}
269+
],
270+
"source": [
271+
"allPrimesUpTo(1000)"
272+
]
273+
},
274+
{
275+
"cell_type": "code",
276+
"execution_count": null,
277+
"id": "33e69550",
278+
"metadata": {},
279+
"outputs": [],
280+
"source": []
281+
}
282+
],
283+
"metadata": {
284+
"kernelspec": {
285+
"display_name": "Python 3",
286+
"language": "python",
287+
"name": "python3"
288+
},
289+
"language_info": {
290+
"codemirror_mode": {
291+
"name": "ipython",
292+
"version": 3
293+
},
294+
"file_extension": ".py",
295+
"mimetype": "text/x-python",
296+
"name": "python",
297+
"nbconvert_exporter": "python",
298+
"pygments_lexer": "ipython3",
299+
"version": "3.12.1"
300+
}
301+
},
302+
"nbformat": 4,
303+
"nbformat_minor": 5
304+
}

0 commit comments

Comments
 (0)