CRC-32: Difference between revisions

Content added Content deleted
(→‎{{header|Wren}}: Fixed a potential bug.)
(→‎{{header|Wren}}: Now uses 'fmt' module.)
Line 2,376: Line 2,376:
=={{header|Wren}}==
=={{header|Wren}}==
{{trans|Go}}
{{trans|Go}}
{{libheader|fmt}}
<lang ecmascript>var toHex = Fn.new { |n|
<lang ecmascript>import "/fmt" for Conv
var digits = "0123456789abcdef"
if (n == 0) return "0"
var neg = false
if (n < 0) neg = true
var hex = ""
while (n > 0) {
hex = hex + "%(digits[n%16])"
n = (n/16).floor
}
return (neg) ? "-" : "" + hex[-1 .. 0]
}


class CRC32 {
class CRC32 {
Line 2,418: Line 2,408:
CRC32.init()
CRC32.init()
var crc = CRC32.compute("The quick brown fox jumps over the lazy dog")
var crc = CRC32.compute("The quick brown fox jumps over the lazy dog")
System.print(toHex.call(crc))</lang>
System.print(Conv.hex(crc))</lang>


{{out}}
{{out}}