Prihlásenie Registrácia  

K - ISBN

Časový limit: 4s, Pamäťový limit: 64MiB

Programovacie jazyky: Pascal, C, C++, Java, C++0x, Python 3

Počet bodov: 1

[ Pošli riešenie ] [ Tvoje riešenia ] [ Správne riešenia ] [ Vzorové riešenie ]

Do knižnice bol prijatý nový zamestnanec Ferko, ktorému dali za úlohu skontrolovať evidenciu knižného fondu. Pri evidencii v informačnom systéme zistil, že niektoré knihy sú priradené pod iným identifikačným číslom. Keďže vyštudoval informatiku, nedalo mu to a zisťoval či je to teda správne, resp. kde nastala chyba.
Knihy dostávajú kód ISBN (International Standard Book Number), ale do konca roku 2006 sa používal 10-miestny kód a teraz sa používa 13-miestny (kvôli väčšiemu počtu možných kódov, ale aj zosúladením s EAN kódmi). Všetky knihy vydané do roku 2006 mali pôvodný 10-miestny kód, ale pri štandardizácii ISBN-13 im bol priradený aj 13-miestny kód prevodom.
Nový informačný systém knižnice obsahuje len ISBN-13. Pomôžte Ferkovi skontrolovať aj knihy s ISBN-10, teda z ISBN-13 vypočítajte prislúchajúce ISBN-10 číslo.

Kód ISBN-13 z ISBN-10 bol vygenerovaný doplnením prefixu 978. Oba kódy majú kontrolný znak, aby sa zamedzilo náhodnému preklepu v jednom znaku, takže pri prevode je nutné tento kontrolný znak (posledný) prepočítať.

Príklad kontroly platnosti ISBN-10
kontrolný znak môže byť číslica alebo znak X (reprezentujúci hodnotu 10), pričom vážený súčet (váhy sú uvedené v tabuľke) musí byť deliteľný jedenástimi
Skupina Vydavateľ Vydanie Kontrola
ISBN 8 0 8 1 5 2 1 3 9 9
váhy 10 9 8 7 6 5 4 3 2 1
výsledok 80 + 0 + 64 + 7 + 30 + 10 + 4 + 9 + 18 + 9

Výsledný súčet je 231, kontrola: 231 mod 11 = 0 , ISBN 80-815-2139-9 je platné.


Príklad kontroly platnosti ISBN-13
kontrolný znak je číslica , pričom vážený súčet (váhy sú uvedené v tabuľke) musí byť deliteľný desiatimi
GS1 prefix Skupina Vydavateľ Vydanie Kontrola
ISBN 9 7 8 8 0 8 1 5 2 1 3 9 3
váhy 1 3 1 3 1 3 1 3 1 3 1 3 1
výsledok 9 + 21 + 8 + 24 + 0 + 24 + 1 + 15 + 2 + 3 + 3 + 27 + 3

Výsledný súčet je 140, kontrola: 140 mod 10 = 0 , ISBN 978-80-815-2139-3 je platné.

V zápise môžu byť použité znaky -, ktoré ho rozdeľujú na časti. Tie môžete úplne ignorovať (zaujíma nás iba číselný kód).

Úloha

Pre zadané číslo vo formáte ISBN-13 vypočítajte prislúchajúce číslo vo formáte ISBN-10.

Vstup

Prvý riadok obsahuje počet testovacích sád. Každý z nasledujúcich riadkov obsahuje reťazec, ISBN-13 kód, ktorého dĺžka nepresiahne 25 znakov. Neobsahuje žiadne iné znaky ako číslice a znak -.

Výstup

Pre každý kód ISBN-13 na vstupe vypíšte buď prislúchajúci 10-miestny kód ISBN-10, alebo text "neda sa" (ak je kód neplatný, alebo nemohol vzniknúť prevodom z ISBN-10).

Príklad

Vstup:

5
978-80-8152-1393
9788081521393
9788081521394
1234
1234567890123

Výstup:

8081521399
8081521399
neda sa
neda sa
neda sa