Platform
Resources
Pricing
Sign in
Contact us
Toph Tucker
Workspace
Fork
Published
Sketches
By
Toph Tucker
Edited
Jan 21, 2022
3 stars
Insert cell
Insert cell
Insert cell
Insert cell
Math
.
log
(
10000
)
Insert cell
Insert cell
lowerBound
=
1e4
Insert cell
upperBound
=
1e5
Insert cell
avgGap
=
(
Math
.
log
(
lowerBound
)
+
Math
.
log
(
upperBound
)
)
/
2
Insert cell
Insert cell
Insert cell
Insert cell
nCandidates
=
(
upperBound
-
lowerBound
)
Insert cell
Insert cell
nPrimes
=
nCandidates
/
avgGap
Insert cell
Insert cell
pctEstimate
=
nPrimes
/
nCandidates
Insert cell
Insert cell
// https://stackoverflow.com/a/40200710/120290
isPrime
=
(
num
)
=>
{
for
(
let
i
=
2
,
s
=
Math
.
sqrt
(
num
)
;
i
<=
s
;
i
++
)
if
(
num
%
i
===
0
)
return
false
;
return
num
>
1
;
}
Insert cell
pctActual
=
{
let
prime
=
0
;
let
composite
=
0
;
for
(
let
i
=
lowerBound
;
i
<
upperBound
;
i
++
)
{
if
(
isPrime
(
i
)
)
{
prime
++
;
}
else
{
composite
++
;
}
if
(
!
(
i
%
1000
)
||
i
===
upperBound
-
1
)
yield
[
i
,
(
prime
/
(
prime
+
composite
)
)
,
prime
]
;
}
}
Insert cell
Insert cell
5
Insert cell
f
=
d3
.
format
(
".1%"
)
Insert cell
import
{
tweet
}
from
"@mbostock/tweet"
Insert cell
Purpose-built for displays of data
Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Try it for free
Learn more
Fork
View
Export
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
lowerBound
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
upperBound
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
avgGap
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
nCandidates
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
nPrimes
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
pctEstimate
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
isPrime
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
pctActual
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Show 5 comments
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
f
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML