In the ISBN-10 (International Standard Book Numbering) system that was used until the end of 2006, each book was 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 computed 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.
Read a sequence of ISBN-10 codes and determine for each of them whether they correspond to valid ISBN-10 codes. Try to avoid any unnecessary repetition of source code in your solution (code duplication1, DRY2).
A sequence of ISBN-10 codes that ends with a line containing the word stop. Each ISBN-10 code is given as ten integers $$x_1, \ldots, x_{10}$$ ($$0 \leq x_1, \ldots, x_{9} \leq 9; 0 \leq x_{10} \leq 10$$), each on a separate line.
For each ISBN-10 code given, print the word OK if it corresponds to a valid ISBN-10 code or the word WRONG if it corresponds to an invalid ISBN-10 code.
Input:
9
9
7
1
5
0
2
1
0
0
9
9
7
1
5
0
2
1
0
8
stop
Output:
OK
WRONG
In the following instruction video, Pythia explains how to tackle this assignment. Watch this video as a stepping stone to solve other exercises about control loops3.