Mertens function: Difference between revisions

Add APL
(Add J)
(Add APL)
Line 368:
-4 -4 -3 -4 -4 -3 -2 -1 -1 -2
-2 -1 -1 0 1 2 2 1 1 1
M(N) is zero 92 times.
M(N) crosses zero 59 times.</pre>
 
=={{header|APL}}==
{{works with|Dyalog APL}}
<lang APL>mertens←{
step ← {⍵,-⍨/⌽1,⍵[⌊n÷1↓⍳n←1+≢⍵]}
m1000 ← step⍣999⊢,1
zero ← m1000+.=0
cross ← +/(~∧1⌽⊢)m1000≠0
⎕←'First 99 Mertens numbers:'
⎕←10 10⍴'∘',m1000
⎕←'M(N) is zero ',(⍕zero),' times.'
⎕←'M(N) crosses zero ',(⍕cross),' times.'
}</lang>
 
{{out}}
 
<pre>First 99 Mertens numbers:
∘ 1 0 ¯1 ¯1 ¯2 ¯1 ¯2 ¯2 ¯2
¯1 ¯2 ¯2 ¯3 ¯2 ¯1 ¯1 ¯2 ¯2 ¯3
¯3 ¯2 ¯1 ¯2 ¯2 ¯2 ¯1 ¯1 ¯1 ¯2
¯3 ¯4 ¯4 ¯3 ¯2 ¯1 ¯1 ¯2 ¯1 0
0 ¯1 ¯2 ¯3 ¯3 ¯3 ¯2 ¯3 ¯3 ¯3
¯3 ¯2 ¯2 ¯3 ¯3 ¯2 ¯2 ¯1 0 ¯1
¯1 ¯2 ¯1 ¯1 ¯1 0 ¯1 ¯2 ¯2 ¯1
¯2 ¯3 ¯3 ¯4 ¯3 ¯3 ¯3 ¯2 ¯3 ¯4
¯4 ¯4 ¯3 ¯4 ¯4 ¯3 ¯2 ¯1 ¯1 ¯2
¯2 ¯1 ¯1 0 1 2 2 1 1 1
M(N) is zero 92 times.
M(N) crosses zero 59 times.</pre>
2,114

edits