2011-03-11 7 views
1

나는 내가 생각하는 것은 암호 (이, 내가 재미를 위해 코딩을 통해 해결하려고 줄 알았는데 그냥 도전 숙제 아니다)이다있어 확인 중가능한 모든 알파벳 암호 조합

해결을 시도하기 위해 나는 알파벳의 모든 문자에 대한 암호 할당의 모든 가능한 조합을 반복하고 싶습니다 (분명히 무차별적인 방식으로). 그러나 나는 그것에 대해 우아한 방식을 이해할 수 없다. 일단 암호 할당의 현재 반복을 얻으면 암호에 따라 암호문을 변환 한 다음 첫 번째 3 문자 단어를 3 문자 단어 목록과 비교하고 마지막 두 단어를 5 문자 단어 목록과 비교합니다. 3 명 모두가 실제 단어로 체크 아웃하면 결과를 파일로 인쇄 해 보겠습니다. 이렇게하면 잘못된 결과를 제거 할 수있는 합리적인 출발점 목록을 얻을 수 있습니다. 누구나 반복적 인 암호를 구현하는 방법에 대한 아이디어가 있다면 크게 감사하겠습니다. 많은 감사,

피바디

답변

0

당신은 루프 (26) 을 가질 수 있습니다.

확인. 농담이야.


의사 코드에 명백한하지만 비효율적 버전 :

for i = 0 - 26^26-1 
    /* a = i/26^25 % 26 
    ... 
    z = i/26^0 % 26 */ 
    if all deciphered words are in the word list 
    print 
    end if 
end for 

그런데, 나는 때문에 나는 할 수 없습니다, 그것은 같은 질문을했다 해독 할 수있는 권리 방법이라고 생각하지 않습니다 double 영어 문장에 같은 단어가 있음을 알 수 있습니다.

+0

안녕 단테, 조언 주셔서 감사합니다! 이중 현존 문제에 대해 더 자세히 설명해 주시겠습니까? 네가 거기에 가려고하는 것을 놓쳤다. 감사! – Peabody

+0

@Peabody, 제 말은 반복적으로 말하지 않습니다. 그 반대의 예는 다음과 같습니다. http://en.wikipedia.org/wiki/James_while_John_had_had_had_had_had_had_had_had_had_had_had_a_better_effect_on_the_teacher –