Sha256: 3305776d8aacba1f3a0c2f21ccd22009076d3245f5dd637d4dd496f1b8434eb2

Contents?: true

Size: 487 Bytes

Versions: 392

Compression:

Stored size: 487 Bytes

Contents

hamming_distance(Str1, Str2, Distance) :-
    string_length(Str1, Length),
    string_length(Str2, Length),
    string_chars(Str1, List1),
    string_chars(Str2, List2),
    hamming_distance_cmp(List1, List2, Distance).

hamming_distance_cmp([], [], 0) :- !.
hamming_distance_cmp([Char1|Chars1], [Char2|Chars2], Distance) :-
    hamming_distance_cmp(Chars1, Chars2, NextDistance),
    (Char1 == Char2 ->
        Distance is NextDistance
    ;
        Distance is NextDistance + 1
    ).

Version data entries

392 entries across 392 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.179 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.178 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.177 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.176 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.175 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.174 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.173 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.172 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.171 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.170 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.169 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.167 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.166 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.165 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.164 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.163 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.162 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.161 tracks/prolog/exercises/hamming/hamming.example
trackler-2.2.1.160 tracks/prolog/exercises/hamming/hamming.example