Task

Validate the check digit of an ISBN-13 code:

   Multiply every other digit by  3.
   Add these numbers and the other digits.
   Take the remainder of this number after division by  10.
   If it is  0,   the ISBN-13 check digit is correct.


Use the following codes for testing:

   978-1734314502       (good)
   978-1734314509         (bad)
   978-1788399081       (good)
   978-1788399083         (bad)


Show output here, on this page



See also

   for details:   13-digit ISBN method of validation.       (installs cookies.)


ISBN13Check
=LAMBDA(s,
    LET(
        ns, FILTERP(
            LAMBDA(v,
                NOT(ISERROR(v))
            )
        )(
            VALUE(CHARSROW(s))
        ),
        ixs, SEQUENCE(
            1, COLUMNS(ns),
            1, 1
        ),
 
        0 = MOD(
            SUM(
                IF(0 <> MOD(ixs, 2),
                    INDEX(ns, ixs),
                    3 * INDEX(ns, ixs)
                )
            ),
            10
        )
    )
)