Hamming Məsafəsi
Bədəniniz DNT ehtiva edən hüceyrələrdən ibarətdir. Bu hüceyrələr mütəmadi olaraq köhnəlir və bölünərək yeni hüceyrələr yaradaraq yenilənməlidir. Əslində, orta statistik insan bədəni həyatı boyu təxminən 10 kvadrilyon hüceyrə bölünməsi yaşayır! Hüceyrələr bölündükdə, onların DNT-si də təkrarlanır (kopyalanır). Bəzən bu proses zamanı səhvlər baş verir və DNT-nin tək bir parçası yalnış məlumatla kodlanır. Əgər biz iki DNT zəncirini müqayisə edib aralarındakı fərqləri saysaq, nə qədər səhv baş verdiyini görə bilərik. Bu, "Hamming məsafəsi" adlanır.
İki DNT zəncirini DNT hərfləri (C, A, G və T) vasitəsilə oxuyuruq. Məsələn, iki zəncir belə görünə bilər:
Plaintext
GAGCCTACTAACGGGAT
CATCGTAATGACGGCCT
^ ^ ^ ^ ^ ^^
Bu iki zəncirin tam 7 fərqli nöqtəsi var, buna görə də onların Hamming məsafəsi 7-dir.
Sizin vəzifəniz verilmiş iki DNT zənciri arasındakı Hamming məsafəsini hesablayan proqram yazmaqdır. Qeyd: Hamming məsafəsi yalnız eyni uzunluqlu ardıcıllıqlar üçün keçərlidir.
Giriş verilənləri: İki sətirdə DNT zəncirləri (hər biri tək bir sətirdə) verilir. Diqqət: Zəncirlərdən biri və ya hər ikisi tamamilə boş (empty string) ola bilər.
Çıxış verilənləri:
Əgər hər iki DNT zəncirinin uzunluğu eynidirsə, onların arasındakı Hamming məsafəsini (fərqlərin sayını) tam ədəd olaraq çap edin.
Əgər zəncirlərin uzunluqları fərqlidirsə, məsafəni hesablamaq mümkün deyil. Bu halda ekrana tam olaraq aşağıdakı xəta mesajını çap edin:
strands must be of equal length