Anda di halaman 1dari 2

Solving Cryptarithmetic Problem with Constraint satisfaction

C3 C2 C1
S E N D S E N D
M Ø R E + —> M Ø R E +
M Ø N E Y M Ø N E Y

C3 / C2 / C1 ( C ) = Carry yang bernilai 1 atau 0.

Initial state :
1. No two letters have the same value. (masing-masing huruf hanya memiliki 1 nilai dengan range [0-9] )
2. The sums of the digit must be as shown in the problem.(jumlah digit antar huruf musti sama dengan soal.
Mis : S+M = MØ, maka S+M harus bernilai belasan agar tercapai 2 digit)

Steps for solving the problem :


- S + M = MØ nilai S dan M harus berkisar diantara [0-9],karena hanya 1 digit.
Maka nilai M adalah 1 (M = 1) karena S+M+C3 tidak bisa lebih besar dari 19.
- Karena M = 1, maka (S + 1(M) + C3 = 1(M) Ø) nilai S adalah 8(+1) atau 9 agar didapat 2 digit nilai (10
atau 11). 8(+1) maksudnya 8 ditambah Carry (C3).
- Nilai Ø adalah 0 (Ø = 0) karena S + 1(M) + C3 harus bernilai 10 supaya didapat 2 digit. Nilai 11 bisa
didapat jika menggunakan S = 9 dan C3 = 1,tapi nilai 1 sudah buat M, karena itu nilai Ø tidak boleh 1.
- Kemungkinan 1 : S = 8 , C3 = 1 , Ø = 0
E + Ø = (1) N nilai E + Ø harus bernilai min 10 agar bisa didapat nilai C3 = 1
C2 + E + Ø = N , (1+) 9(E) + 0(Ø) = (1)N , maka 10 = (1)N maka N = 0, hal ini
menciptakan kontradiksi karena nilai N = Ø. Jadi kemungkinan ini salah
- Kemungkinan 2 : S = 9 , C3 = 0 , Ø = 0
E + Ø = N, C2 + E + Ø = N , maka nilai C2 harus 1 karena nilai E tidak boleh sama dengan N. Didapat
persamaan 1 + E + 0 = N, maka N = E+1.
Karena Nilai pasti tidak didapat, maka kita jalankan langkah 1.
N + R = E (hasil disini harus bernilai belasan agar C2 = 1),D + E = Y.
Langkah 1 sudah dijalankan , tapi tidak ketemu nilai variabel, karena itu kita
jalankan langkah 4.

- Kita mulai dengan tebakan kalo E = 2, maka N = 3. Pemilihan nilai E, karena variabel E paling banyak
muncul dan paling banyak berinteraksi dengan huruf
lain. C1 + N + R = (1)E , C1 + 3 + R = (1)2, berapa nilai C1 + R + 3 agar didapat
nilai 12? .Jawabannya : C1 = 1, R = 8. Lalu kita masukan ke persamaan lanjutan,
D + E = Y (Hasil disini harus belasan agar didapat C1 = 1) , D + 2 = Y, dari sini
didapatkan kesimpulan jika kemungkinan ini tidak mungkin, karena sebesar
apapun nilai D + 2 tidak akan mencapai nilai belasan.
- Kita lanjutkan tebakan kalo E = 3, maka N = 4. C1 + N + R,
C1 + 4 + R = (1)3, berapa C1 + R + 4 agar didapat 13? R = 8 dan C1 = 1.
Kita masukan ke D + E = (1)Y, kemungkinan ini tidak mungkin karena
D + 3 hanya bernilai paling besar 10(D = 7), dan menyebabkan Y = 0. (Ø = 0)
- Sekarang kalo E = 4, maka N = 5. C1 + N + R, C1 + 5 + R = (1)4, berapa C1 + 5 + R agar didapat 14 ?
R = 8 dan C1 =1. Kita masukan ke D + E = (1) Y kemungkinan ini tidak mungkin karena D(7) + 4
hanya bernilai paling besar 11, dan menyebabkan Y = 1. (M = 1)
- Sekarang jika E = 5, maka N = 6. C1 + N + R, C1 + 6 + R = (1)5, berapa
C1 + 6 + R agar didapat 15 ? R = 8 dan C1 = 1. Kita masukan ke D + E = (1)Y kemungkinan ini adalah
mungkin karena D(7) + 5 bernilai paling besar 12, dan menyebabkan Y = 2. Didapatkan jawaban, maka
kita jalankan langkah 2.

Jawaban nilai-nilai variabel agar didapat hasil yang sesuai dengan soal :
M=1 C3 C2 C1 0 1 1
Ø=0 S E N D 9 5 6 7
S =9 —> M Ø R E + —> 1 0 8 5 +
E =5 M Ø N E Y 1 0 6 5 2
N=6
R =8
D=7
Y=2
C1 = 1
C2 = 1
C3 = 0

Anda mungkin juga menyukai