PROG0012 - ISBN
In the ISBN-10 (International Standard Book Numbering) system that was used until the end of 2006, each book is assigned a unique 10-digit code. The first nine digits uniquely identify the book itself, whereas the last digit merely serves as a check digit to detect invalid ISBN-10 codes.
If $x_1, \ldots, x_9$ represent the first nine digits of an ISBN-10 code, the check digit $x_{10}$ is calculated as $$x_{10} = (x_1 + 2x_2 + 3x_3 + 4x_4 + 5x_5 + 6x_6 + 7x_7 + 8x_8 + 9x_9)\!\!\!\!\mod{11}$$ As a result, $x_{10}$ always takes a value in between 0 and 10. You are asked to write a program that checks whether or not a given series of ten digits corresponds to a valid ISBN-10 code.
Input
Ten integers $x_1, \ldots, x_{10}$ ($0 \leq x_1, \ldots, x_{10} \leq 9$), each on a separate line.
Output
One single line containing the word OK if the digits from the input correspond to a valid ISBN-10 code, or the word WRONG otherwise.
Example
Input:
9 9 7 1 5 0 2 1 0 0
Output:
OK
Example
Input:
9 9 7 1 5 0 2 1 0 8
Output:
WRONG
Binnen het ISBN-10 (International Standard Book Numbering) systeem dat tot eind 2006 gebruikt werd, kreeg elk boek een unieke code toegewezen die bestaat uit 10 cijfers. De eerste 9 daarvan geven informatie over het boek zelf, terwijl het laatste louter een controlecijfer is dat dient om foutieve ISBN-10 codes te detecteren.
Indien $x_1, \ldots, x_9$ de eerste 9 cijfers van een ISBN-10 code voorstellen, dan wordt het controlecijfer $x_{10}$ als volgt berekend: $$x_{10} = (x_1+ 2x_2+ 3x_3+ 4x_4+ 5x_5+ 6x_6+ 7x_7+ 8x_8+ 9x_9)\!\!\!\!\mod{11}$$ $x_{10}$ kan m.a.w. de waarden 0 tot en met 10 aannemen. Gevraagd wordt om een programma te schrijven dat kan bepalen of een gegeven getallenreeks van 10 cijfers correspondeert met een geldige ISBN-10 code.
Invoer
Tien natuurlijke getallen $x_1, \ldots, x_{10}$ ($0 \leq x_1, \ldots, x_{10} \leq 9$), elk op een afzonderlijke regel.
Uitvoer
Eén regel die het woord OK bevat als de getallen corresponderen met een geldige ISBN-10 code, en die anders het woord FOUT bevat.
Voorbeeld
Invoer:
9 9 7 1 5 0 2 1 0 0
Uitvoer:
OK
Voorbeeld
Invoer:
9 9 7 1 5 0 2 1 0 8
Uitvoer:
FOUT
Added by: | Peter Dawyndt |
Date: | 2011-07-12 |
Time limit: | 10s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | PY_NBC |
Resource: | None |