Jacobi symbol: Difference between revisions

→‎{{header|Wren}}: Now uses 'fmt' module.
(→‎{{header|Wren}}: Now uses 'fmt' module.)
Line 1,125:
=={{header|Wren}}==
{{trans|Python}}
{{libheader|fmt}}
<lang ecmascript>var jacobi = Fn.new { |a, n|
<lang ecmascript>import "/fmt" for Fmt
 
<lang ecmascript>var jacobi = Fn.new { |a, n|
if (!n.isInteger || n <= 0 || n%2 == 0) {
Fiber.abort("The 'n' parameter must be an odd positive integer.")
Line 1,144 ⟶ 1,147:
}
return (n == 1) ? result : 0
}
 
var rset = Fn.new { |m, n|
var s = "%(n)"
var c = s.count
return (m > c) ? " " * (m - c) + s : s
}
 
Line 1,157 ⟶ 1,154:
var n = 1
while (n < 31) {
System.write(rsetFmt.calld(3, n))
for (a in 1..15) System.write(rsetFmt.calld(4, jacobi.call(a, n)))
System.print()
n = n + 2
9,487

edits