ISBN13 check digit: Difference between revisions
Content added Content deleted
m (changed wording.) |
|||
Line 1,415: | Line 1,415: | ||
ISBN-13 code 9781788399081 is valid. |
ISBN-13 code 9781788399081 is valid. |
||
ISBN-13 code 9781788399083 isn't valid. |
ISBN-13 code 9781788399083 isn't valid. |
||
</pre> |
|||
=={{header|Ring}}== |
|||
<lang ring> |
|||
load "stdlib.ring" |
|||
isbn = ["978-1734314502","978-1734314509", "978-1788399081", "978-1788399083","978-2-74839-908-0","978-2-74839-908-5","978 1 86197 876 9"] |
|||
for n = 1 to len(isbn) |
|||
sum = 0 |
|||
isbnStr = isbn[n] |
|||
isbnStr = substr(isbnStr,"-","") |
|||
isbnStr = substr(isbnStr," ","") |
|||
for m = 1 to len(isbnStr) |
|||
if m%2 = 0 |
|||
num = 3*number(substr(isbnStr,m,1)) |
|||
sum = sum + num |
|||
else |
|||
num = number(substr(isbnStr,m,1)) |
|||
sum = sum + num |
|||
ok |
|||
next |
|||
if sum%10 = 0 |
|||
see "" + isbn[n] + ": true" + nl |
|||
else |
|||
see "" + isbn[n] + ": bad" + nl |
|||
ok |
|||
next |
|||
</lang> |
|||
Output: |
|||
<pre> |
|||
978-1734314502: true |
|||
978-1734314509: bad |
|||
978-1788399081: true |
|||
978-1788399083: bad |
|||
978-2-74839-908-0: true |
|||
978-2-74839-908-5: bad |
|||
978 1 86197 876 9: true |
|||
</pre> |
</pre> |
||