Arne Saknussemm
Jules Verne-in hekayəsinə əsasən, orta əsr alkimyaçısı Arne Saknussemm tərəfindən yazılmış və professor Lidenbrock tərəfindən deşifrə edilmiş mürəkkəb bir mesaj, Yer kürəsinin mərkəzinə inanılmaz bir səyahəti başlatdı. Arne tərəfindən istifadə edilən qarışdırma proseduru aşağıdakı kimidir.
1. İngilis əlifbasından hərflər, rəqəmlər, vergüllər, nöqtələr, dırnaq işarələri, boşluqlar və sətir sonları olan və son simvolu boşluqdan fərqli olan boş olmayan bir mesaj M götürün. Məsələn, tərcüməsi "Sneffels kraterinə en, cəsur səyyah, və Yer kürəsinin mərkəzinə toxun" olan aşağıdakı mesajı nəzərdən keçirin.
In Sneffels craterem descende audasviator, et terrestre centrum attinges.
2. Tam ədəd K seçin və M mesajına elə son boşluqlar əlavə edin ki, nəticədə alınan mesajın uzunluğu, məsələn M', K-nın ən kiçik çoxluğu olsun. Yuxarıdakı mesaj üçün K=19 və length(M)=74 (buraya 8 boşluq və M-dəki sətir sonu daxildir), iki son boşluq əlavə edilir və nəticədə length(M')=76 olan M' mesajı alınır.
3. M'-dən bütün boşluqları (alt xətt) simvolu ilə əvəz edin; M'-dən bütün sətir sonlarını (ters slash) ilə əvəz edin və sonra mesajı tərsinə çevirin. Bizim halda:
__.segnitta_murtnec_ertserret_te_,rotaiv\sadua_ednecsed_meretarc_sleffenS_nI
4. 3-cü addımdan alınan mesajı length(M')/K sətir və K sütunlu bir cədvələ yazın. Yazı sütun üzrə aparılır. Verilən nümunə üçün mesaj 76/19=4 sətir və 19 sütunlu bir cədvələ aşağıdakı kimi yazılır:
5. Cədvəlin sətirlərinə uyğun gələn simvolların ardıcıllığı qarışıq mesajın fraqmentləridir. 1-ci addımda verilmiş Arne-nin mesajının 4 fraqmenti bunlardır:
Qarışıq şəkildə təsvir edilən boş olmayan mesajları deşifrə edən bir proqram yazın. Qarışdırılmadan əvvəl bir mesajın uzunluğu, boşluqlar və sətir sonları daxil olmaqla ən çox 1000 simvoldur.
Giriş verilənləri
Proqramın girişi hər bir məlumat dəsti qarışıq bir mesaja uyğun olan bir mətn faylından gəlir. Məlumat dəsti, qarışıq mesajın fraqmentlərinin sayını göstərən tam ədəd n ilə başlayır və qarışdırma prosedurunun 4-cü addımında cədvəldə göründüyü sırada fraqmentləri təyin edən n simvol ardıcıllığı ilə davam edir. Giriş məlumatları boşluqlarla ayrılır və faylın sonu ilə bitir.
Çıxış verilənləri
Deşifrə edilmiş mesaj standart çıxışda, sətirin əvvəlindən çap edilməli və aşağıda göstərilən giriş/çıxış nümunəsində olduğu kimi boş bir sətirlə izlənməlidir.