codebreaker_marian 0.2.6 → 0.2.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/codebreaker_marian/entities/processor.rb +10 -1
- data/lib/codebreaker_marian/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cd80c699e4242eacc5a8869ba5a996eadfa1332e0da85a695c227c2aea4ad2b2
|
4
|
+
data.tar.gz: 75ba4887c03b6634254affe970d8354f68b0474136910021757239f596cf11ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7e33bc498908604579ccdc67753376362e0b757fcd6a3e06e0082fdf7fde9a11474c5fe6609db7efdbd4b39517f7f7b5e72a752e5ce563f63e6aed88460d29f0
|
7
|
+
data.tar.gz: 1bd4a84d551cbb2a7fc7b1ecc80392315b947bab3f28aa90d86a160fc19ab6befdabb5c78d45f638f9b436788606ca0ff667903db8bfbc3ac271356d975c7f60
|
data/Gemfile.lock
CHANGED
@@ -5,13 +5,14 @@ module Codebreaker
|
|
5
5
|
class Processor
|
6
6
|
MATCHED_DIGIT_CHAR = '+'
|
7
7
|
UNMATCHED_DIGIT_CHAR = '-'
|
8
|
+
WRONG_DIGIT_CHAR = ' '
|
8
9
|
|
9
10
|
attr_reader :guess, :code, :result
|
10
11
|
|
11
12
|
def secret_code_proc(code, guess)
|
12
13
|
@code = code.split('')
|
13
14
|
@guess = guess.split('')
|
14
|
-
handle_matched_digits.join + handle_matched_digits_with_wrong_position.join
|
15
|
+
handle_matched_digits.join + handle_matched_digits_with_wrong_position.join + handle_wrong_digits.join
|
15
16
|
end
|
16
17
|
|
17
18
|
private
|
@@ -33,6 +34,14 @@ module Codebreaker
|
|
33
34
|
UNMATCHED_DIGIT_CHAR
|
34
35
|
end
|
35
36
|
end
|
37
|
+
|
38
|
+
def handle_wrong_digits
|
39
|
+
guess.compact.map do |number|
|
40
|
+
next unless @code.include?(number)
|
41
|
+
|
42
|
+
WRONG_DIGIT_CHAR
|
43
|
+
end
|
44
|
+
end
|
36
45
|
end
|
37
46
|
end
|
38
47
|
end
|