Talk:Semiprime: Difference between revisions

From Rosetta Code
Content added Content deleted
m (→‎a graphic view of the first 10k semi-primes: used the SQUISH option to produce a narrower output.)
Line 24: Line 24:


== a graphic view of the first 10k semi-primes ==
== a graphic view of the first 10k semi-primes ==
For those that are interested, here is the output of my $CALC (REXX) program that shows a binary map of the first 10k semiprimes.
For those that are interested, here is the output of my   '''$CALC'''   (REXX) program that shows a binary map of the first 10k semiprimes.
<br><br>The command used was:
<br><br>The command used was:
$CALC trans{ isSemiPrime[ iota(10k) ], 'fefa'x, 10} ;;; GRoup 100
$CALC trans{ isSemiPrime[ iota(10k) ], 'fefa'x, 10} ;;; SQUISH GRoup 100
The terminal screen used was &nbsp; 220 &nbsp; bytes wide.


The &nbsp; '''isSemiPrime''' &nbsp; BIF outputs a &nbsp; '''0''' &nbsp; (zero) to indicate the number isn't semi-prime, &nbsp; or a '''1''' &nbsp; (unity) to indicate a semi-prime.
The &nbsp; '''isSemiPrime''' &nbsp; BIF outputs a &nbsp; '''0''' &nbsp; (zero) to indicate the number isn't semi-prime, &nbsp; or a '''1''' &nbsp; (unity) to indicate a semi-prime.
Line 35: Line 34:
The &nbsp; &nbsp; &nbsp; &nbsp; '''iota''' &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; BIF generates the numbers &nbsp; 1 ──► 10,000 &nbsp; which are passed to the &nbsp; '''isSemiPrime''' &nbsp; BIF.
The &nbsp; &nbsp; &nbsp; &nbsp; '''iota''' &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; BIF generates the numbers &nbsp; 1 ──► 10,000 &nbsp; which are passed to the &nbsp; '''isSemiPrime''' &nbsp; BIF.


The &nbsp; &nbsp;&nbsp; '''SQUISH''' &nbsp; &nbsp; &nbsp; &nbsp; option removes all blanks from the output &nbsp; (except for the index).


The &nbsp; &nbsp;&nbsp; '''GROUP''' &nbsp; &nbsp; &nbsp; &nbsp; option groups &nbsp;'''100''' &nbsp; output items per line.
(Output is shown at &nbsp; <sup>'''3'''</sup>/<sub>4</sub> &nbsp; size.)

<pre style="font-size:75%">

1► · · · · · · · · · · · · · · ■ ■ · · ■ ■ · · · · · · ■ ■ · · · · · · · · · ·· · · · · · · · · · · · · · · · ·· ·· · · · · · ■ ■ · · · · ■ ■ ■ · · · · ·
(Output is shown at &nbsp; <sup>'''2'''</sup>/<sub>3</sub> &nbsp; size.)
101► · · · · · · · · · · · · · · ■ ■ · ■ ■ ■ · · · · · · · · ■ ■ · · · · · · ■ ■ · · · · · · · · ·· · ·· · · ·· ·· · · · · · · · · · ·· · · · · · · · · · · · · ·
<pre style="font-size:67%">
201► ■ ■ · · · · · · ■ ■ ■ · ■ ■ ■ · · · · ·· · · · · · · · · · · · · · · · · · · · · · ■ ■ · · · · · · · · · · · · · · · · · ·· · · · · · · ···· · · · · ·
╔═══════════════════════════════════════════════╗
301► · · · ·· · · ·· · · · ··· · · · · · · · · ··· · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · ■ ■ · · · · · · ·· ■ ■ · ·· ·
║ trans{ isSemiPrime[ iota(10k) ], 'fefa'x, 10} ║
401► · ·· · · · · ····· · · ·· · · ·· · · · · · · · ·· · · · · · · ■ ■ · · · · · · · · · · · · · · · · ··· · · ·· · ■ ■ · · · · ·· · · · · · · · ·
╚═══════════════════════════════════════════════╝
501► ■ ■ · ·· · · · ·· · ■ ■ · · · · · · · · ■ ■ ·· · ··· ■ ■ · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
601► · · · · · · · · · ·· ·· · · · · · · ■ ■ · ·· ·· · · ■ ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · ·· · · · ·· · ·· ·· · · · ■ ■ · ■ ■ ■ ·
1► ······■■···■■·····■■··■■······■■■··■■············■·■■···■·····■····■··■····■··■■■···■·■■■·····
701► · ·· · · · · · · · · · · ··· · · · · · ·· ·· ·· · · · · · · ■ ■ · ·· · · ·· · · · · · · · · · ·· · · · · · · · · ·· · · ·· ■ ■ · · · · ■ ·
101► ·····■····■···■··■■·■■■········■■······■■■·■■········■··■■·■····■··■·······■■····■·■·■······■······
801► · ■ ■ · · · · · · · · ·· ■ ■ · · · · · · · · · · · · · · · · ·· · ■ ■ ■ · · · · · · · · · · · · · · · · · · · ··· · · · · · · · · · · · · · · · · ·· · ■ ■ ·
201► ■■■·■■··■···■■■·■■■·■············■·■·········■·■···■■······■··■·■·········■········■··■···■··■■·
901► · · · · · · · · · · · · · · · ■ ■ · ·· · · · · · · · · · · · ·· · · · · · · · · · · ■ ■ ·· · · · · · · · · · · · · ·· · · ·· · · · · · · ■ · · ■ · ·
301► ■■■·■···■····■····■·■·■··■■·■····■■····■····■········■··■··■■··■·····■·····■···■■···■····■·■■■··■··
1001► · · ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ ■ · · ■ ■ · · · · · · ··· · · · · · · · · · · · · · · ·· · ■ ■ · · · · · · · · · · · · · · · ■ ·
401► ··■···■······■········■·········■·······■■■····■■···■·······■····■····■··■■········■···■···
1101► · · · · · · · · · · · ■ ■ · · · · · · · ·· · · · · · · · ■ ■ ■ · ■ ■ · ·· ·· · · · · ··· · · · · ··· · · ·· · · · · · · · · · · · · · · · · · ■ ■ ·
501► ■■·······■··■■·■·■······■■····■·■·■■···■■·■·····■·■■······■··■■······■······■·■··■··■·■·····■···
1201► · ■ ■ ··· · ·· ·· · · · · · · · · · ■ ■ · · · · · · · · ·· ··· · ·· · · · ··· · · · ■ ■ ■ · · · · · ··· · · · · · · · · · · · · · · · · · · ··
601► ··········■··■·······■■····■···■■■·············■·····■············■··■····■·■···■·■·····■■·■■■·
1301► · · · · · · · · · · · · · · · ·· · · · · · · · · · · ··· · ·· ■ ■ ■ · ·· · · · · · · · · ·· ·· · · · · · · · · · ■ ■ · ··· · · · ·· · ·
701► ··■··■■·····■···■■··■·■·········■··■·······■■··■···■·■··■····■··■■···■······■■·■···■···■·■·■■·····
1401► ■ ■ ·· · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· ·· · ·· · · · ·· · · · · · · · · · · · ·· · · · · · · · · · · · ·
801► ·■■········■·■·■■···············■··■··■■■················■··■■··■·■······■■···········■···■■·
1501► · · · · ·· · · ■ ■ · · · · · · · · · ··· · · · · · ■ ■ · · · · · · · · · · · · · · · · · · ···· · ·· · · · · · · · · · · · · · · · · · · · · · · · ·
901► ■···■·······■■··■···■■■··■······■■····■···■·····■······■■·■··········■■····■··■·····■···■·■··■··
1601► · · · · · · · · · · · · · · · ·· · · · · · · · · ·· · · · · ·· ■ ■ ■ · ·· ·· · · · · · ·· · · · · · · · ·· · · · · · · · ····· · · · · · · · ·
1001► ··■··■■·········■········■·········■···■■■··■■·······■·■·■············■···■·■·■■···········■····■·
1701► · ·· · ■ ■ · · ·· ■ ■ · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · ■ ■ · · · · · · · · · · ··· · · · · · · · · · · ·· ■ · ■ ·
1101► ·········■··■■····■····■······■··■■■·■■··■·■·■····■··■·■·····■·■·■····■················■··■■·
1801► · · · · · · · · · · · · ··· ■ ■ · · · · · ·· · · · · · ■ ■ · · · · · · · · · · · · ■ ■ · · · · · · · · · · · · · · · · · · · · · ■ ■ · · · · · · · · ■ ■ ■ · ■ · · ·
1201► ·■■·■·■···■······■······■■·········■··■·■···■·····■·■·■···■■■······■·■········■··■■······■■····■·
1901► · ·· · · ·· · · · · · · ·· ·· · ·· · · · · · ·· · ■ ■ ·· · · · · · · · · ··· · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
1301► ·····■·······■·■■···■······■···■···■·■····■■■····■■·■·····■··■··■·■·······■··■■·■·■·■·■·■······
2001► · · · ·· · · · · · · · · · · · ■ ■ ·· · · ·· · · ··· · · · · · ■ ■ · ····· · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · · ·· · · ·
1401► ■■■··········■■··················■■··■············■··■···■···■■··■···■···■■·······■··········■···
2101► ■ ■ ■ ·· · · · · · · · · · ·· · · ■ ■ · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · ·· · · · · ·· · · ■ ■ ■ · · · · · · · · · ··
1501► ■■········■■··■····■····■·■······■■··■····■········■·····■·■·■···■····■··■·······■···■·■··■······
2201► ■ · · · · · ·· · · · ·· ■ ■ ■ · · · · · · · ··· ·· · · · · · · · · · ■ ■ · · · · · · · · · · · · · · · · · · ·· · · · · · ·· · · ·· · · · · · · · · · · · · ·
1601► ··■··············■···■■·············■·■■■··■···■··■■··■················■■·■······■·········
2301► ·· · ■ ■ · · · · · · ······ · ■ ■ ·· · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ ■ · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · ·
1701► ··■··■■····■■··■■·······■■···■······■··········■····■···■■■·■■··■····■····■·■···········■···■·
2401► · · · · · · · · · · · · · · · · · · · · · ■ ■ · · · · · · · · · · · · · · ·· · ··· ·· · ■ ■ · · · · ··· · · · · ···· · ···· · · · · ·
1801► ··■···■······■···■·■■······■······■■■··■······■·■···■■······■········■·······■■·······■·■■■·■···
2501► ■ · · · · · · · · ··· ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ · ··· · · ■ ■ · · · · · · ·· · · · · · · ··
1901► ····■··■·····■·············■···■·■■■·■········■···■·■·■··■■·■·······■···■■■·■·····■··■······
2601► · ■ ■ · · · · ·· · ■ ■ · · · · · · · · · ·· ·· · · · · ·· · ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · ·
2001► ····■············■■·■····■·········■··■■···■·■·■·······■·····■········■■····················
2701► · · ·· · · · · · · · · · · · · · · ■ ■ ■ · · · · · · · · · ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · ·· · · · · · · · · · · · · · · · · ·
2101► ■■■·■··············■■··■■··········■········■·■·····■·■·■·········■·■■·····■■■····■·■··■■···■·
2801► · · · · · · ···· · ·· · · ·· · · · · · · · · · · · ·· · · · · · · · · · · · · ■ ■ · · ·· · ·· · · · · · · · · · · · ·· · · · · · · ■ ■ · · · · ■ ·
2201► ······■·····■·■■■········■···■··········■■··■···■···■■····■·······■·······■···■·■··············
2901►· · ·· · · · · · · · · · ·· · · · · · ··· · · · · · ■ ■ · · · ·· ·· · · · · · ·· · · · · · · · · · ■ ■ · · ■ ■ · ·· · · · · · ··· · ■ · ·
2301► ·■··■■■·······■·■···■··■■·■·····■······■··········■·····■·■■■·····■····■···········■····■···■·····
3001► · · · ·· · · · · · · · ·· · · ·· · · ·· ·· · ·· · ·· · · · · · · · · · · · · · · · · ■ ■ ·· · · · · ·· · · · · · · · · · · · · · ·· ■ · ■ ■ ■ ·
2401► ·····■·····■···········■■·■···■■■·······■··■·····■···■··■■■········■····■·······■···■·■■··
3101► ·· · · · · · · · · · ■ ■ · · · · · · · ·· · · · ■ ■ · · · ·· · ■ ■ · · · ····· ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ · · · ■ ·
2501► ■······■····■·■■■·············■··········■········■···■■·■···■■···■···■■··■■····■·····■····■·
3201► ·· ·· · · · · · · ■ ■ · · · · · · · · · · · · ·· · · ■ ■ · ■ ■ · · · · · · · · · · · · · · · ·· ·· · ·· · · ■ ■ · ··· · · · · ·· · ···· · · · ·
2601► ·■■·■■····■··■■·······■····■·■······■··■■■·····■·■·■■······■·······■···········■···················
3301► · · · · · · ·· · · ·· ·· · · · · · · · ■ ■ · · · · · ·· · ■ ■ · · · · · · · · ·· · · · · · · · · · · · · · · ·· · · · · · · · · · ·· ■ ■ ■ · · · · · · · · ■ ■ · ·
2701► ···■···············■■■·········■■■·······■··■■·········■·■·■■·········■··········■·■··········■··
3401► ■ ·· · · · · · · · · · · · ·· · · · · · · · · · · · ·· · · · ·· · · · · ··· · ·· · · · · · · · · · · ·· · · · · · · · · · ··· · · ■ ■ · · · · ·
2801► ······■····■··■····■···■···■·······■·■···■■·······■■··■■·····■■·■·············■·······■■····■·
3501► · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · ··· ·· ·· · · · · · · · · · · · · · · · · · · · · · · ■ ·
2901► ■■···■·····■····■··■·■·············■■·····■·■·······■····■■······■■··■■··■·■··■■····■·■··■··
3601► ■ ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · ··· · · · · · · · · ·· ·· · · · · · · · · · · · · · ·· · · · · · · · · ·
3001► ·····■········■····■·····■····■···■···■··■■·····■···■····■■······■·■···■·······■■····■··■·■■■·
3701► · · · · · ·· · · ··· · · · · ■ ■ · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ · · · · ··· · · · · · · · · · ·
3101► ···■■·····■···■■···········■·■■····■··■■····■·■·■·■··■··■····■···············■·····■···■■···■·
3801► · · · · · · ·· ·· ·· · · · · · · · ··· · · · · · ·· · ·· · · · · · · · · · · ·· · · · ■ ■ · · · · · · · · · · · · ·· · · · · · · · · · · · ■ ■ ·
3201► ·■··■·■······■■······■··■■·····■·■··■■·■■····■······■······■·■·■···■···■■·············■·■·····
3901► ■ ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · ·· · · · · · · · ■ ■ ■ ··· · · · · · · · · · ··· · · · · · ·· · · · ■ ■ · ·
3301► ····■·········■········■■······■··■■··■·······■··■··············■·······■·■···■·■■■······■··■■··
4001► · · · · · · ·· · · · · · · · · · · · · · · · · · · · · · ·· · · ··· · · · · · · · ■ ■ · ·· · ·· · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · ·
3401► ■·■·····■·······■■······■········■·■··■■··■················■······■·······■■····■·■···■■··■···
4101► ■ ·· · ·· · · · · · · · · · · ·· · · · · · · ·· ·· ·· · · · · · · · · · · · · · · · · · · · · ·· · · · ·· ··· · · · · · ·· · ■ · ·
3501► ··■·■■······■····■··■·■···················■·■·····■·········■··■··■····■···■■·······■·■·····■···■·
4201► · · · · · · · · · · ·· · · · · · · · · · ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · ·· · · ·· · · · · ■ ■ · · ■ ■ · · · · · ·· · ··
3601► ■■■·······■··········■···········■········■■·■·■········■■··■·■·■·········■···■···■·····■■■·····
4301► · ·· · ■ ■ · · · · · · ·· ■ ■ · · · · · · · ··· · · · · · · ·· · · · · · · ·· · · · · · · · · · ··· · · · · · ··· · · · · · · · · ·· · · · · ·
3701► ······■···■·■·■·····■■·············■····■■··■■·■····■■··■·················■■··■···■·■··········■·
4401► · · · · · · · · · ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · ··· · · · · ■ ■ · · · · · · ·· · · · · · · ··
3801► ···■····■··■··■········■■·■·■·····■··■···■···■·········■····■■■·■···■·········■········■····■■·
4501► ■ ■ · · · · · · · ·· · · · · · · · · · · · · · · · ··· ■ ■ · · · · · · · · · · · · · ·· · · · · · · · · · ··· ■ ■ · · · · · · · · ·· · · · · ■ ■ · · · · ·
3901► ■■■················■·············■·■···■····■·····■···■■■·■·■·········■■··■·■···■■····■··■··■■··
4601► ■ · · · · · · · · ·· · · · ■ ■ · ·· · · · ···· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ · · · · · · · · ·· · · ··
4001► ·····■··■············■·········■■··■·■···■·■········■■··■··■·■·····■········■····■···■·········■···
4701► · · · · · · · · · · · · · · · · · ·· · · · · · · · · · ■ ■ · · · · ·· · · ·· ·· · · · ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · ■ · ·
4101►·■·■■··■·····■·■·■·■················■·■·■·····■··········■■··■··■·■·····■··■····■····■··■■··
4801► · ·· · · · · · · · · · · · · ·· ■ ■ · · · ··· · · · ■ ■ ·· ··· · ■ ■ ·· · ·· · ·· · ·· · · · · · · · · · · · · · ■ ■ · · · · · · · · · · · · ·
4201► ······■·····■········■■··■■·········■·········■·■········■·····■·■·····■····■·■■··■■■···■···■···■·
4901► · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · · ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · ·
4301► ····■■·■···■···■·■■·········■·······■·········■····■■········■·······■·····■·■·····■·····■·
5001► ■ · · · · ■ ■ · · · · · · · · ·· · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · ·· · · · · · ■ ■ · · · · · ·· ··· · · ■ ■ · ·
4401► ····■■·····■■■·········■■·■·····■···■··■■·····■···■·······■······■·■··■···■■······■■········■·■·
5101► ·· ·· · · · · · ·· · · · · · · ·· · ·· · · · · · · · · ·· · · · · · · · · · · · · · ···· · · · · · · · ·· · · · · · · · · ·· · · ■ · · · ■ ·
4501► ■■········■·················■·■·■■■·■■··■····■······■····■··■·······■·■■··■·······■··■···■■■·····
5201► · · · · · · · · · · · · · · ■ ■ ·· · · · · · · · · · · · · · · · · ■ ■ · ·· · · · · · ···· · ·· · · · · · · · · ·· · · · · · · · · · · · · · · · · · ·
4601► ■·····■····■····■■··■·······■···········■·■···········■·■····■■·········■■··■■··■·■······■····■·
5301► · · · · · · · · · · · ■ ■ · · ·· · · · ■ ■ ·· · · · · · · · · · · ·· · · · · · ■ ■ · · ·· ·· · · · ·· ·· · · · · · · ·· · · · · · · · · · · ·
4701► ■■··■····■·■■··■·········■·······■··■·■■····■·····■··■····■■·■■···■·····■■··■····■····■······■··
5401► ■ · · · · · · · · · ·· · · · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · ·· · · · · · · · · · ·
4801► ··■·······■········■■····■·■····■■·■·■··■··■■····■·■·■·■···■···■·····■■······■■■·■·····■··■··■···
5501► · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ··· ·· · ·· · · ·· · · · · · · · · · ·· · · · · · · · · · · · ·· · · · · · · · · ■ · ■ ·
4901► ······■···■···■··■··············■····■······■·······■■·······■···············■···■···■·······■···
5601► ■ ■ · ·· ······· · · · · · ····· · · · · · · · ·· · · · · · · · · · · · · · · · · · · ■ ■ · · · · · · · · · · · · · · ·· · · · · · · · · · · · ■ ·
5001► ■····■■··················■·■··········■■············■····■■·■···■·■······■■············■■··
5701► · · · · · · · · · · · · · · · ■ ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · ■ ■ · · · · · · · · · · · · · · · · · · · · ·
5101► ·■··■·····■··■···········■·■······■···■······■·····■··■··■·■·■···■···■···■····■■······■···■···■·
5801► · ·· ·· · · · · · · · ·· · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · ··· · · · · ·
5201► ·····■·····■····■■············■······■■·····■·····■·■·····■■········■··············■■····■·
5901► · · · · · ··· · · ··· · · · · · · · · · ··· · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · ···· · · ■ ■ ·
5301► ····■·····■··■■·■■··■····■■·■········■··■··■···■···■■··■·■·■·■··■■···■··■··■■····■··■··········■··
6001► · ·· · ·· · · · · · ·· · ■ ■ · · · · · · · · · · · · · · · · · ·· ·· · · · · · · · · · · · · · · · · · · ·· ·· · · · · ·· · · · · · · · · · ■ · ·
5401►·■·······■··■··········■··■····■··■········■·······■··■■·■■··■···■···■········■··■·········■■··
6101► · ·· · · · · · · · · · ·· ·· · · ·· · · · · ·· · · ·· · · · · · · · · · · · · · · ■ ■ ■ ·· · · · · · · · · · · · · ■ ■ ·· · ·· · ··· · · · · · ·
5501► ·····■··■···■·■·················■■·····■·········■······■·····■··········■■··■■·■·■········■·■·
6201► · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · ■ ■ · ■ ■ ■ ·· · ·· · · · · · · · · ·· · · · · · · · · · ·· · · · · · ·· · · · ·· · · · ·· · · ·
5601► ■■■······■·■·■·■·······■······■■······■·················■··■■···■············■············■·
6301► · · · · · · · · · · · ·· · · · ·· · · · · · · · · ·· ■ ■ · · · ·· · · · ·· · · · · · · · · · · · · · · · · · · · · · ·· ·· · · · ■ ■ ·· · · · · ·· · · · · ·
5701► ·■■········■■······■■■······■·······■·······■········■■····■·····■■··■···········■···■■····■·
6401► · · · · · ·· · · · · · · · ·· · · · ··· ■ ■ · ··· · ·· · · · · · · · · · ■ ■ ■ · · ·· · ·· · · · · · · · · · · · · · · ·· · · · · ·· · · · ·
5801► ··■··■··■·····■··■··············■■··■·········■·····■■■·················■····■············■·■·····■·
6501► · ■ ■ · ■ ■ · · · · · · · · · · ·· · · · · · · ·· · ·· ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ · ■ · · ■ · ·
5901► ····■■··■·■··■··■······■······■·■·■■··■■·······■·······■·■····················■·■·■···■■■·
6601► · · · · · · · · · ·· · ··· ·· · · · · · · · ·· · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · ·· · · · ·
6001► ■■··■···■···■···■·■··■■·······■·■····■··■····■··■········■·····■·····■····■···■■··■·■··········■··
6701► · · · · · · · · · · · · · · · · · · · · · · ··· · · · · · · · · ■ ■ · · · ···· · ·· · · · · · · · · ·· · ·· · · · · · · · · · · · · · · · · · · · ■ · ■ ·
6101► ·····■·■·····■·■···■··············■·····■··········■■■·····■■·■········■■·■···■····■·······
6801► ■ · · ·· · · · · ·· ··· · · · ·· · · · · · · · · · ·· · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · ···· · · · · ·
6201► ······■·■········■········■·····■····■■·■■■·■···■···············■············■·■·····■······■···
6901► ■ · · ·· · · · · · · ■ ■ · · · · · · · · · · ■ ■ · · · · ■ ■ · · ■ ■ · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · ■ ■ ·
6301► ·················■······■····■·■■···■■······■·······················■··■····■■··■·····■·■·····
7001► · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · ·· · · · · ·· · · ■ ■ · · ··· · · ·· · ■ ■ · · · · · · ·· · · · ·
6401► ·■··■■···■·····■····■·····■·■·■■··■···■■·■·········■·■■■···■···■················■·■·····■···■·■·
7101► · · · · · · · · · · · ■ ■ ■ · · · · · · · · · · · · · · · · · · · ■ ■ ■ ···· · ·· · · · · · ·· · ■ ■ ■ ··· · · · · · ···· · · · · · · · · · · ··
6501► ·■■·■■·····■■··■····■···■······■·■·■·■■··············■·■·······················■········■··■··
7201► · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ · · · · ·· · · · · ··· · · · · · · · · ·· · · ·· ■ ■ · ·· · · · · · ·· ·· · · · · · · · ·
6601► ·■·······■■·····■·■··■··■·■···■··■■·■····■··■········■···■■···■···■·····■·····■·········■··■···
7301► · ·· · · · · · · ·· · · · ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ ·· · · · · · · · · · · · · · · ·· · · · · ·· · ·· · · · · · ·
6701► ·········■·····■■···■······■··········■■··■····■···■·········■·■···■····■···■····■·········■·■·
7401► ■ ■ ·· · · · · · · · · · · · · · · · · ·· · ·· · · · · · · · · · · · ■ ■ · · · · · · · · · ■ ■ · · · ·· · · · · ·· · · · · · · · · · · · · · · · · · ·
6801► ■····■·····■··■·■·■····■········■···■···■···■·············■···■■············■········■·■····■··
7501► · · · · · · ·· · ·· · · · ·· · · · · · · · · · · ·· · · · · · ·· · · · · · · · · · ·· ·· · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ · · ·
6901► ■··········■■·······■···■■···■·■■··■■··■··········■···················■·············■·····■··■■·
7601► · · · · · ·· · ··· ·· · · · · · ···· · · · · · · · · · · · · ··· · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
7001► ··■·····■·······■····■■·······■·■■··■···■···■·····■·■■···■··■·■··■■····■····■··■■········■■··■·■·
7701► ·· · ·· ··· · · · · · · ·· · · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · ···· · · · · · · · · · · · · · · · · · · ·
7101► ··········■·■■■·■■····■········■·■·····■■■·■·■·■···■···■······■■■·■·■·······■·■·■··■········■··■·
7801► · · · · ·· · ·· ■ ■ · · · · · · · · · ·· · · · · · ■ ■ · · · · · · ·· · ·· · · · · · ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ · ··
7201► ■············■··■·····■··■·····■■■·····■····■··■·■···■·····■■··■·····■■·········■···■···■·····
7901► · · · · · · ·· · · · · · · · ·· · · · · · · · · · · ·· · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ ■ · · · · · · · · · · · · · ■ · ■ ·
7301► ··■·······■·■····■■·················■·■■■·········■■·····■···■·····■···■·■······■···■··■··■···
8001► · · · · · · · · · · · · · · · · · · · · ··· · · · · · ·· · ·· ·· ·· · ···· · · · · · · · ·· · · · · · · · · · · · · · · · · ·
7401► ■■■·■···■·····■··■■·■·■···■···■···■··■■·■···■·■·····■■········■·■■····■······■····■·········■·■·····
8101► · · ·· · · · · · · · · · · · · · · · · · · ·· ·· ··· ·· · · ·· · ·· · · · · · · · · · · · · · · ·· · · · · · · · · · ■ ■ ■ ·· · ·· · · · ·
7501► ■··········■·····■··■········■··■···■····■·················■·····················■······■■··■···
8201► ·· · · · · · · · · · · · · · · · ■ ■ · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · ··
7601► ■····■·····■···········■············■■···■·■·■······■··■····■·······■···················
8301► · · · · · · · · · · · ·· · · · · · · · · ···· · · · · · · · · · · · · · ··· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·
7701► ·■···■··■····■·····■····■··■·······■·■·····■·■···■··■·······■■·■···■·■·····■■·■·■···■·······■···■·
8401► ■ ■ · · ··· · · · ·· · · · · · · · · · · · · · ·· · ·· · · · · · · · · · · · ·· · · ■ ■ ■ · · · ·· · · · ··· · · · ·· · · ■ ■ · ·· · · · · · ■ ·
7801► ■·····■···■·■■······■·········■■·■■·······■········■■·■■■·······■··············■····■··■■·■·■·
8501► · · · · ■ ■ ·· · · · · · · ■ ■ · · · · · · · ··· · · · · · · · · · · · ■ ■ · ···· · ·· · ·· · · · · · · · · · · · · · · ·· · · · · · · · · · · · · ·
7901► ··■·····■···■·■·····■·················■···············■···■······■·■·····■■■·■···■···■·■·····■·■·
8601► · ··· · · · ·· · ··· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · · ■ · ·
8001► ·■■·■■······■■·······■··■■·······■···■···■·■········■·■·■·■···■······■···■···········■·■■··
8701► · · · · · · ··· ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · ·· · · · ··· · · · · · · ·· · · ■ ■ · · · · · · · · · · ■ ■ ·· · ·
8101► ···■········■·····■·······■·······■··■··■······■■■·············■··········■■■····■···■■··
8801► · · · · · · ·· · · · · · ■ ■ · · · · · · · · · · · · · · · · · · · · · · · ■ ■ · ·· · · · · · · · · ·· · · · · · · · · · ··· · · · ·· · ·· · ··· ·· · · · ·
8201► ■·········■········■■························■····■■■·■····■■··········■■·····■·············■·
8901► ·· · ·· · · · ■ ■ ·· · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ··· ·· · · · · · · · · · · ·
8301► ■····■··■····■■····■·····■···■·■·■···■·····■···■·····■·······■···■··········■·······■·······■·
9001► · · · · · · · · · · ·· · ·· · ·· ·· · · ·· · · · · · · · · · ■ ■ · · · · ·· ·· · · · · · · · · · · · ·· · ·· · · ·· · · · · · · · · · · ■ · ·
8401► ■■■···■·■·········■···········■···■·············■···■■■·········■·■·····■··■■·■■···■····■·■·
9101► ■ · · · · · · · ···· · ·· ■ ■ · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · ■ ■ · · ■ · · ·
8501► ····■■·■·······■■··■·······■··········■··■■··■·■····■·······■■···■······■■···■···■·····■■······
9201► · · · · · · · · · · · · ·· · · · ·· · · · · · · · · ·· · · ·· · · ·· · · · · · · · · · · ·· · · · · · · ·· · · · · · · · · · ·· · · · · · · · ■ ■ ·
8601► ··■·■·····■····■··············■···■·■···········■·■■··■·····■········■···■····■·······■········
9301► ■ ■ · ·· · · · · · · · · · · · · · · · · ■ ■ ·· · · · · · · · · · · · · · · · · · · ··· · · · · · · · · · · · · · · · · · ·· · ■ ■ ·· · · · · · · · · · · · ·
8701► ····■···■·■··■··········■■·······■·········■··■·■·······■·····■·■···········■■········■··■■·■···
9401► · · · · · ■ ■ ·· · · · · · · · · · · · · · · ·· · · · · · · · · · · · · ·· · · ·· · · · · · · · · · · · · ·· ·· · · · · · · · · · · · · · · · · · · · · · · · · · ·
8801► ·······■······■■·······················■■··■····■······■··················■■··■···■·■··■·····
9501► · ·· · · · · · · · · ■ ■ · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · ··· ■ ■ · ··· ■ ■ · · · · · · · · · · · · · ·· · · · ·
8901► ·■■····■···■■■·■···■····■■·······■···■······■·····■········■···■··········■······■··■·······■···
9601► · · · · ···· · · · · · · · · · · · · · · · · · ·· ·· · ·· · · · · · · ·· · ·· · ·· · · · · · · · · · · · · · · · · · · ·· · · · · · · · · · · ·
9001► ··■···········■····■··■····■·■■··■■·······■■·····■·■·■···········■·■·■···■·■········■····■··■■··
9701► ·· · · · · · · · · · · · · · · ·· · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ ····· · · · · · · ·· · · ■ ■ · · · · · · · · · · · · · ·· · · ··
9101► ■·····■·····■····■■■·······■··■········■···■·■·····■··········■■·■···········■■·········■■··■···
9801► · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ■ ■ · · · · · · · · · · · · ·· · · · · · · · · ··· ■ · ■ ·
9201► ····■····■·····■·····■········■··········■·■···■·····■·········■··■···■·······■■·■········■■·
9901► · · · · · · · · · · ■ ■ · ·· · ·· · · · · · · · · · · · ■ ■ · ■ ■ ■ · · ·· ·· · · · · · · · ·· · · · ·· · ·· · · ·· ·· · · · · ■ ■ ■ ·· ··· · ·
9301► ■■··■·■·····■■···········■■················■■······■·■■····■·■·············■··■■·■···■·····■·····
9401► ·····■■·■······························■··■■··■·■······■·······■··■···········■······■···■·······
9501► ■■···■·■·······■■····■···■·■·····■·······■·········■···■···■·■·■■···■·■■··■■·······■·····■····■■·
9601► ·■····■·■·■·····■········■■······■··■···■·····■···■···■···■··■■·■·■···■··········■···■···■·········
9701► ■·■···■·····■············■···■··········■··■·······■■■·■·■·■·■·······■····■■··············■····■·
9801► ·····■··■···■····■········■··········■··■··········■········■■·■■··■····■······■····■······■····
9901► ·■■·········■■··■···■············■■·■■■···■··■······■···■·■·■······■····■··■·■···■·■■■·■·■··■·■■··
</pre>
</pre>

Revision as of 23:19, 15 May 2020

task clarification

The use of the phrase natural numbers (according to Wikipedia)

(quoted from Wikipedia   Natural number:

There is no universal agreement about whether to include zero in the set of natural numbers: some define the natural numbers to be the positive integers {1, 2, 3, ...}, while for others the term designates the non-negative integers {0, 1, 2, 3, ...}. The former definition is the traditional one, with the latter definition having first appeared in the 19th century.


I personally like   positive integers   or   non-negative integers   for one or the other;   that way, there can be no misunderstanding. -- Gerard Schildberger (talk) 01:17, 21 February 2014 (UTC)

Of course, if all program examples would handle both cases, this would be a moot point. -- Gerard Schildberger (talk) 01:17, 21 February 2014 (UTC)

It doesn't matter when taken in this context. Zero is never taken as prime.
That was never my point. Unity also isn't a prime. But an isPrime function should be able to test any integer and return a correct result (as to being a prime or not) without giving an error or causing a loop. Same thing with an isSemiprime function. It should be able to return a correct result. Understanding that extremely large numbers would be problematic, of course. -- Gerard Schildberger (talk) 08:00, 21 February 2014 (UTC)
Are you saying that the task description is confusing as it stands? --Paddy3118 (talk) 07:17, 21 February 2014 (UTC)
Well, maybe not confusing, but it could be clarified. The use of any phrase (or word) that is under contention (disagreement) should never be used in a definition. If not, then we could say that semiprimes are the product of exactly two (possibly equal) primes. The use of a clarifying adjective should be definitive, and not be argumentative (since there is not an agreed-on definition). I like Mathworld's definition better: a semiprime, also called a 2-almost prime, biprime, or p q-number, is a composite number that is the product of two (possible equal) primes. This also has the advantage of introducing other (alias) names for people searching for alternate names. A note about the square of a prime being, by definition, is a semiprime would be a nice addition. -- Gerard Schildberger (talk) 08:00, 21 February 2014 (UTC)
I don't agree with "The use of any phrase (or word) that is under contention (disagreement) should never be used in a definition". Context and audience mean a lot. --Paddy3118 (talk) 09:04, 21 February 2014 (UTC)

a graphic view of the first 10k semi-primes

For those that are interested, here is the output of my   $CALC   (REXX) program that shows a binary map of the first 10k semiprimes.

The command used was:

      $CALC  trans{ isSemiPrime[ iota(10k) ], 'fefa'x, 10}   ;;;  SQUISH  GRoup 100 

The   isSemiPrime   BIF outputs a   0   (zero) to indicate the number isn't semi-prime,   or a 1   (unity) to indicate a semi-prime.

The     translate       BIF converts (for easier perusing) ones and zeroes to   ■   and   ·     [the square bullets are the semi-primes].

The         iota            BIF generates the numbers   1 ──► 10,000   which are passed to the   isSemiPrime   BIF.

The      SQUISH         option removes all blanks from the output   (except for the index).

The      GROUP         option groups  100   output items per line.


(Output is shown at   2/3   size.)

                              ╔═══════════════════════════════════════════════╗
                              ║ trans{ isSemiPrime[ iota(10k) ], 'fefa'x, 10} ║
                              ╚═══════════════════════════════════════════════╝
    1► ···■·■··■■···■■·····■■··■■······■■■··■■······■··■·■···■·■■···■··■···■····■··■····■··■■■···■·■■■·····
  101► ·····■····■···■··■■·■■■·····■···■■······■■■·■■········■··■■·■····■··■·······■■····■·■·■······■······
  201► ■■■·■■··■···■■■·■■■·■····■········■·■·········■·■···■■····■··■··■·■······■···■········■·■·■···■··■■·
  301► ■■■·■···■····■····■·■·■··■■·■····■■···■·■····■········■··■··■■··■·····■·····■···■■···■····■·■■■··■··
  401► ··■···■···■·■·■·■····■····■·········■·······■■■···■·■■···■·······■··■·■·■····■··■■··■···■···■···■···
  501► ■■··■·····■··■■·■·■······■■·■···■·■·■■···■■·■·····■·■■····■··■··■■······■·····■·■·■··■··■·■·····■···
  601► ··········■··■·······■■··■··■···■■■·············■·····■······■····■·■·■··■····■·■···■·■·■····■■·■■■·
  701► ··■··■■·····■···■■··■·■·······■··■··■·······■■··■···■·■··■····■··■■···■······■■·■···■···■·■·■■····■·
  801► ·■■···■·····■·■·■■············■···■··■··■■■·····■·■··········■··■■··■·■······■■······■··■···■·■··■■·
  901► ■···■·······■■··■···■■■··■······■■····■···■·····■·■···■··■■·■···■·······■■····■··■··■···■···■·■··■··
 1001► ··■··■■···■······■········■·········■···■■■··■■·······■·■·■·······■·····■···■·■·■■···········■····■·
 1101► ■·········■··■■···■·■····■······■·■·■■■·■■··■·■·■····■··■·■·····■·■·■····■··■········■··■·■···■··■■·
 1201► ·■■·■·■···■··■····■······■■······■···■··■·■···■·····■·■·■···■■■···■···■·■········■··■■······■■····■·
 1301► ·····■······■·■·■■···■······■···■···■·■···■·■■■·■·■··■■·■·····■··■··■·■·······■··■■·■·■·■·■·■···■···
 1401► ■■■·■·····■···■·■■··················■■··■············■··■···■···■■··■···■···■■·······■··········■···
 1501► ■■····■·■···■■··■····■····■·■·····■·■■··■····■········■·····■·■·■···■····■··■·······■···■·■··■······
 1601► ··■··············■···■■·······■·■·····■·■■■··■··■·■··■■··■··■·········■·■····■■·■···■·■·■·■·········
 1701► ··■··■■···■·■■··■■·······■■···■···■···■·····■·····■··■··■···■■■·■■··■····■····■·■···········■·■·■·■·
 1801► ··■···■······■··■·■·■■······■·····■·■■■·■·■·····■·■·■···■■······■········■·······■■·······■·■■■·■···
 1901► ··■··■··■·····■···■·■·■···■·■····■··■·■·■■■·■········■··■·■·■·■··■■·■·······■···■■■·■·····■··■······
 2001► ····■············■■·■····■····■·■····■··■■··■·■·■·■·······■··■···■····■·■···■■················■··■··
 2101► ■■■·■···········■·■··■■··■■··········■········■·■·····■·■·■·····■·■···■·■■··■···■■■··■··■·■··■■···■·
 2201► ■····■··■·····■·■■■·······■·■·■··■··········■■··■···■···■■····■·······■·······■···■·■·····■·········
 2301► ·■··■■■·······■·■·■·■·■··■■·■·····■······■··········■·····■·■■■·····■····■···········■····■···■·····
 2401► ·■····■·····■·····■······■■·■···■■■·······■··■··■···■·■··■··■■■·····■·■··■····■·■·■···■·■·■···■·■■··
 2501► ■·····■·■···■·■·■■■·············■···■·······■········■···■■·■·■··■■·■·■·■···■■··■■····■·■····■····■·
 2601► ·■■·■■····■··■■·······■···■·■·■······■··■■■·····■·■·■■······■·······■···········■···················
 2701► ■···■···············■■■·········■■■·······■··■■·········■·■·■■········■·■·····■·····■·■··········■··
 2801► ······■·■·■·■·■··■····■···■···■·······■·■···■■·······■■··■■···■··■■·■········■··■···■·······■■····■·
 2901► ■■···■····■·■····■··■·■·····■·■·■·■·····■■····■·■·■·······■··■··■■······■■··■■··■·■··■■···■·■·■··■··
 3001► ····■·■·····■···■····■····■·■·■···■···■···■··■■·····■···■····■■·■·····■·■···■·······■■····■·■·■·■■■·
 3101► ■·■··■■·····■···■■········■···■·■■····■··■■···■·■·■·■·■··■··■····■······■·········■·····■···■■··■·■·
 3201► ·■··■·■······■■··■····■··■■·····■·■··■■·■■····■······■······■·■·■···■···■■··■·■·■·····■···■·■·■·····
 3301► ····■···■····■··■········■■······■··■■··■·······■·■·■···········■···■·······■·■···■·■■■······■··■■··
 3401► ■·■·····■·····■··■■·■·····■···■·····■·■··■■··■······■·■···■······■······■·······■■····■·■···■■··■···
 3501► ··■·■■······■····■··■·■···················■·■·····■··■······■·■··■··■····■···■■·······■·■·····■···■·
 3601► ■■■·······■··········■······■·····■···■·■····■■·■·■·■·······■■··■·■·■·········■···■···■·····■■■·····
 3701► ······■···■·■·■·····■■···········■··■····■■··■■·■····■■··■····■·············■■··■···■·■···■·······■·
 3801► ·■··■···■·■··■··■········■■·■·■·····■·■·■···■···■·········■··■··■■■·■···■·········■·······■·■····■■·
 3901► ■■■·····■···········■·············■·■···■····■··■···■···■■■·■·■·········■■··■·■·■·■·■■····■··■··■■··
 4001► ·····■··■············■········■·■■··■·■···■·■········■■··■··■·■·····■········■····■···■·········■···
 4101► ■·■·■■··■·····■·■·■·■····■········■··■··■·■·■·····■··········■■··■··■·■··■···■··■·■···■·■···■·■·■■··
 4201► ······■·····■········■■··■■·········■·········■·■········■···■··■·■·■····■····■·■■··■■■···■···■···■·
 4301► ··■··■■·■···■·■·■·■·■■········■·■·······■·■·······■·■····■■·······■·■·······■·■·■···■·■·····■·····■·
 4401► ····■■····■·■■■·■········■■·■·····■···■··■■·····■···■·······■·····■·■·■··■···■■······■■·■·······■·■·
 4501► ■■········■·················■·■·■■■·■■··■····■······■·■···■··■······■·■·■■··■·■······■··■···■■■·····
 4601► ■·····■·■···■····■■··■····■·■·■·■···········■·■···········■·■····■■·········■■··■■··■·■······■····■·
 4701► ■■··■···■·■·■■··■·········■·······■·■·■·■■····■·■····■··■····■■·■■··■·■·····■■··■····■····■······■··
 4801► ··■·······■·······■·■■····■·■····■■·■·■·■·■··■■·■···■·■·■·■···■···■·····■■······■■■·■·····■··■··■···
 4901► ······■···■···■··■········■······■····■······■·······■■·······■·······■·······■·■···■···■·······■···
 5001► ■····■■·········■·········■·■···■·······■■··■·······■···■····■■·■···■·■······■■······■··■·■·■·■·■■··
 5101► ·■··■·····■··■········■···■·■·■·····■···■·■·····■·····■··■··■·■·■···■···■···■····■■··■····■···■···■·
 5201► ■·····■·····■····■■·■·■··········■······■■··■···■·■···■·■·■···■··■■·■·······■·········■·····■■····■·
 5301► ····■·····■··■■·■■··■····■■·■·■·······■··■··■···■···■■··■·■·■·■··■■···■··■··■■····■··■··■········■··
 5401► ■·■·······■··■·······■···■··■···■·■··■········■·······■··■■·■■··■···■···■········■··■···■···■···■■··
 5501► ·····■··■···■·■·················■■····■·■·■·■···■····■······■·····■··········■■··■■·■·■······■··■·■·
 5601► ■■■··■··■·■·■·■·■·■·······■·■·■·■···■■······■·················■··■■···■··■··■········■············■·
 5701► ·■■···■·····■■······■■■·····■·■·······■·······■·····■·■··■■·■···■·■···■·■■··■···········■···■■····■·
 5801► ··■··■··■·····■··■··············■■··■·········■·····■■■·················■····■············■·■·····■·
 5901► ····■■··■·■··■··■·■·■····■······■·■·■■··■■····■···■·······■·■·■·■···■·■·····■·■···■·····■·■·■···■■■·
 6001► ■■··■···■···■···■·■··■■·······■·■····■··■····■··■·■·······■·····■·····■··■··■···■■··■·■··········■··
 6101► ··■···■·■·····■·■·■··■····■······■····■·····■·········■·■■■·■····■■·■········■■·■···■·■·■·■·■·······
 6201► ······■·■········■········■·····■····■■·■■■·■···■·········■·■·····■······■······■·■·····■·····■·■···
 6301► ············■·····■······■····■·■■···■■·■·····■·■············■········■··■··■····■■·■·■·····■·■·····
 6401► ■·■··■■···■···■··■····■·····■·■·■■··■·■··■■·■·········■·■■■···■···■···············■·■·■·····■···■·■·
 6501► ·■■·■■··■·■··■■··■····■···■·····■·■·■·■·■■··············■·■·······················■···■·■···■·■··■··
 6601► ·■··■···■·■·■■··■···■·■··■··■·■···■··■■·■····■··■········■···■■···■···■·····■·····■··■·······■··■···
 6701► ······■···■·····■■···■······■·■·······■··■■··■··■·■·■···■·········■·■···■····■···■····■·········■·■·
 6801► ■···■·■·■····■··■·■·■····■········■···■···■···■·············■···■■············■·■·····■·■·■·■····■··
 6901► ■···■·······■■·······■···■■···■·■■··■■··■·■·········■···················■·····■··■······■·····■··■■·
 7001► ··■·····■·······■····■■·······■·■■··■···■···■·····■·■■···■··■·■··■■···■·■····■··■■····■···■·■■··■·■·
 7101► ··········■·■■■·■■····■·······■·■·■·····■■■·■·■·■···■···■····■··■■■·■·■·······■·■·■··■········■·■·■·
 7201► ■············■··■·····■··■····■·■■■·····■····■··■·■···■·····■■··■···■·■·■■··■·■······■··■·■···■·····
 7301► ··■·······■·■····■■···■···■···········■·■■■··■·······■■·■···■·■···■·····■···■·■··■····■···■··■··■···
 7401► ■■■·■···■·····■··■■·■·■···■···■···■··■■·■···■·■·····■■········■·■■····■······■····■·········■·■·····
 7501► ■·······■···■·····■··■········■··■···■····■···········■··■····■·······■··············■······■■··■···
 7601► ■····■··■···■·■·■·■·······■·■·■·■···■····■···■■···■·■·■·····■·■··■····■·······■··············■··■···
 7701► ·■···■··■·■···■·····■····■··■·······■·■·····■·■···■··■·······■■·■···■·■·■····■■·■·■···■·······■···■·
 7801► ■·····■···■·■■····■··■····■···■··■■·■■·······■··■·■···■··■■·■■■·······■··············■····■··■■·■·■·
 7901► ··■·····■···■·■·····■············■····■·■···············■···■·····■·■·■·····■■■·■···■···■·■·····■·■·
 8001► ·■■·■■······■■······■·■··■■···■·■·■··■···■··■·■·■·■··■··■···■·■·■·■···■·····■·■···■···········■·■■··
 8101► ·■··■········■····■·■·······■·■·■·■·■·■·■·■··■··■···■···■■■·············■········■··■■■·■···■···■■··
 8201► ■·■···■·····■········■■···■···················■·■·■··■··■■■·■····■■··········■■·····■·············■·
 8301► ■····■··■····■■··■··■·····■···■·■·■···■·■···■·■···■··■··■·■·······■···■·■·········■·······■·······■·
 8401► ■■■···■·■·■·■···■····■···········■···■··■···········■···■■■··■··■·····■·■·····■··■■·■■··■·■···■·■·■·
 8501► ··■··■■·■·■······■■··■······■·■··········■··■■··■·■·■···■···■····■■···■······■■···■···■·····■■······
 8601► ··■·■·····■···■·■···■···········■···■·■···········■·■■··■·■·■···■········■···■····■·······■······■··
 8701► ····■···■·■··■··■········■■·······■·······■··■··■·■·······■·····■·■·····■···■···■■········■··■■·■···
 8801► ■·······■···■···■■·······················■■··■····■·····■·■···········■·■·····■·■■··■···■·■··■····■·
 8901► ·■■···■·■···■■■·■···■····■■·······■···■·····■·■·····■········■···■··········■···■·■··■··■·······■···
 9001► ··■·■········■··■·■···■··■····■·■■··■■·······■■·····■·■·■···········■·■·■···■·■···■·····■····■··■■··
 9101► ■·····■···■·■·■···■·■■■·······■··■········■···■·■·····■··········■■·■·········■··■■·········■■··■···
 9201► ■····■····■·····■·····■·····■···■·■·■····■····■·■···■·····■···■···■···■··■···■·······■■·■········■■·
 9301► ■■··■·■·····■■···········■■·■·····■··········■■·····■·■·■■····■·■·············■··■■·■···■·····■·····
 9401► ·····■■·■·■···············■··············■··■■··■·■······■·······■··■···········■·····■·■···■·······
 9501► ■■··■·■·■·······■■····■···■·■·····■·······■·········■···■···■·■·■■··■·■·■■··■■·······■··■···■····■■·
 9601► ·■····■·■·■·····■········■■······■··■···■·····■···■···■···■··■■·■·■···■·■·········■···■···■·········
 9701► ■·■···■·····■········■····■···■··········■··■·······■■■·■·■·■·■·······■·■···■■··············■···■·■·
 9801► ·····■··■···■····■········■··········■··■·····■·····■········■■·■■··■····■······■····■······■·■·■·■·
 9901► ·■■·········■■··■···■············■■·■■■···■··■······■···■·■·■···■···■····■··■·■···■·■■■·■·■·■·■·■■··